# axis2_module_desc.h

Go to the documentation of this file.

    00001
    00002 /*
    00003 * Licensed to the Apache Software Foundation (ASF) under one or more
    00004 * contributor license agreements.  See the NOTICE file distributed with
    00005 * this work for additional information regarding copyright ownership.
    00006 * The ASF licenses this file to You under the Apache License, Version 2.0
    00007 * (the "License"); you may not use this file except in compliance with
    00008 * the License.  You may obtain a copy of the License at
    00009 *
    00010 *      http://www.apache.org/licenses/LICENSE-2.0
    00011 *
    00012 * Unless required by applicable law or agreed to in writing, software
    00013 * distributed under the License is distributed on an "AS IS" BASIS,
    00014 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    00015 * See the License for the specific language governing permissions and
    00016 * limitations under the License.
    00017 */
    00018
    00019 #ifndef AXIS2_MODULE_DESC_H
    00020 #define AXIS2_MODULE_DESC_H
    00021
    00037 #include <axis2_const.h>
    00038 #include <axutil_error.h>
    00039 #include <axis2_defines.h>
    00040 #include <axutil_env.h>
    00041 #include <axutil_allocator.h>
    00042 #include <axutil_string.h>
    00043 #include <axutil_array_list.h>
    00044 #include <axutil_param_container.h>
    00045 #include <axis2_flow_container.h>
    00046 #include <axutil_param.h>
    00047 #include <axis2_op.h>
    00048 #include <axis2_conf.h>
    00049
    00050 #ifdef __cplusplus
    00051 extern "C"
    00052 {
    00053 #endif
    00054
    00056     typedef struct axis2_module_desc axis2_module_desc_t;
    00057
    00058     struct axis2_op;
    00059     struct axis2_conf;
    00060
    00067     AXIS2_EXTERN void AXIS2_CALL
    00068     axis2_module_desc_free(
    00069         axis2_module_desc_t * module_desc,
    00070         const axutil_env_t * env);
    00071
    00079     AXIS2_EXTERN axis2_flow_t *AXIS2_CALL
    00080     axis2_module_desc_get_in_flow(
    00081         const axis2_module_desc_t * module_desc,
    00082         const axutil_env_t * env);
    00083
    00092     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00093     axis2_module_desc_set_in_flow(
    00094         axis2_module_desc_t * module_desc,
    00095         const axutil_env_t * env,
    00096         axis2_flow_t * in_flow);
    00097
    00105     AXIS2_EXTERN axis2_flow_t *AXIS2_CALL
    00106     axis2_module_desc_get_out_flow(
    00107         const axis2_module_desc_t * module_desc,
    00108         const axutil_env_t * env);
    00109
    00118     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00119     axis2_module_desc_set_out_flow(
    00120         axis2_module_desc_t * module_desc,
    00121         const axutil_env_t * env,
    00122         axis2_flow_t * out_flow);
    00123
    00131     AXIS2_EXTERN axis2_flow_t *AXIS2_CALL
    00132     axis2_module_desc_get_fault_in_flow(
    00133         const axis2_module_desc_t * module_desc,
    00134         const axutil_env_t * env);
    00135
    00144     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00145     axis2_module_desc_set_fault_in_flow(
    00146         axis2_module_desc_t * module_desc,
    00147         const axutil_env_t * env,
    00148         axis2_flow_t * falut_in_flow);
    00149
    00157     AXIS2_EXTERN axis2_flow_t *AXIS2_CALL
    00158     axis2_module_desc_get_fault_out_flow(
    00159         const axis2_module_desc_t * module_desc,
    00160         const axutil_env_t * env);
    00161
    00170     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00171     axis2_module_desc_set_fault_out_flow(
    00172         axis2_module_desc_t * module_desc,
    00173         const axutil_env_t * env,
    00174         axis2_flow_t * fault_out_flow);
    00175
    00182     AXIS2_EXTERN const axutil_qname_t *AXIS2_CALL
    00183     axis2_module_desc_get_qname(
    00184         const axis2_module_desc_t * module_desc,
    00185         const axutil_env_t * env);
    00186
    00194     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00195     axis2_module_desc_set_qname(
    00196         axis2_module_desc_t * module_desc,
    00197         const axutil_env_t * env,
    00198         const axutil_qname_t * qname);
    00199
    00207     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00208     axis2_module_desc_add_op(
    00209         axis2_module_desc_t * module_desc,
    00210         const axutil_env_t * env,
    00211         struct axis2_op *op);
    00212
    00219     AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
    00220     axis2_module_desc_get_all_ops(
    00221         const axis2_module_desc_t * module_desc,
    00222         const axutil_env_t * env);
    00223
    00231     AXIS2_EXTERN struct axis2_conf *AXIS2_CALL
    00232     axis2_module_desc_get_parent(
    00233         const axis2_module_desc_t * module_desc,
    00234         const axutil_env_t * env);
    00235
    00244     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00245     axis2_module_desc_set_parent(
    00246         axis2_module_desc_t * module_desc,
    00247         const axutil_env_t * env,
    00248         struct axis2_conf *parent);
    00249
    00257     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00258     axis2_module_desc_add_param(
    00259         axis2_module_desc_t * module_desc,
    00260         const axutil_env_t * env,
    00261         axutil_param_t * param);
    00262
    00270     AXIS2_EXTERN axutil_param_t *AXIS2_CALL
    00271     axis2_module_desc_get_param(
    00272         const axis2_module_desc_t * module_desc,
    00273         const axutil_env_t * env,
    00274         const axis2_char_t * name);
    00275
    00282     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
    00283     axis2_module_desc_get_all_params(
    00284         const axis2_module_desc_t * module_desc,
    00285         const axutil_env_t * env);
    00286
    00294     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
    00295     axis2_module_desc_is_param_locked(
    00296         const axis2_module_desc_t * module_desc,
    00297         const axutil_env_t * env,
    00298         const axis2_char_t * param_name);
    00299
    00306     AXIS2_EXTERN struct axis2_module *AXIS2_CALL
    00307     axis2_module_desc_get_module(
    00308         const axis2_module_desc_t * module_desc,
    00309         const axutil_env_t * env);
    00310
    00318     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00319     axis2_module_desc_set_module(
    00320         axis2_module_desc_t * module_desc,
    00321         const axutil_env_t * env,
    00322         struct axis2_module *module);
    00323
    00331     AXIS2_EXTERN axutil_param_container_t *AXIS2_CALL
    00332     axis2_module_desc_get_param_container(
    00333         const axis2_module_desc_t * module_desc,
    00334         const axutil_env_t * env);
    00335
    00343     AXIS2_EXTERN axis2_flow_container_t *AXIS2_CALL
    00344     axis2_module_desc_get_flow_container(
    00345         const axis2_module_desc_t * module_desc,
    00346         const axutil_env_t * env);
    00347
    00353     AXIS2_EXTERN axis2_module_desc_t *AXIS2_CALL
    00354     axis2_module_desc_create(
    00355         const axutil_env_t * env);
    00356
    00363     AXIS2_EXTERN axis2_module_desc_t *AXIS2_CALL
    00364     axis2_module_desc_create_with_qname(
    00365         const axutil_env_t * env,
    00366         const axutil_qname_t * qname);
    00367
    00376     AXIS2_EXTERN void AXIS2_CALL
    00377     axis2_module_desc_free_void_arg(
    00378         void *module_desc,
    00379         const axutil_env_t * env);
    00380
    00383 #ifdef __cplusplus
    00384 }
    00385 #endif
    00386 #endif                          /* AXIS2_MODULE_DESC_H */