# axis2_conf.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_CONFIG_H
    00020 #define AXIS2_CONFIG_H
    00021
    00044 #include <axutil_param_container.h>
    00045 #include <axis2_svc_grp.h>
    00046 #include <axis2_transport_in_desc.h>
    00047 #include <axis2_transport_out_desc.h>
    00048 #include <axutil_qname.h>
    00049 #include <axutil_hash.h>
    00050 #include <axis2_phases_info.h>
    00051 #include <axis2_msg_recv.h>
    00052
    00053 #ifdef __cplusplus
    00054 extern "C"
    00055 {
    00056 #endif
    00057
    00059     typedef struct axis2_conf axis2_conf_t;
    00060
    00061     struct axis2_msg_recv;
    00062     struct axis2_phases_info;
    00063     struct axis2_svc_grp;
    00064     struct axis2_svc;
    00065     struct axis2_op;
    00066     struct axis2_dep_engine;
    00067     struct axis2_desp;
    00068
    00075     AXIS2_EXTERN void AXIS2_CALL
    00076     axis2_conf_free(
    00077         axis2_conf_t * conf,
    00078         const axutil_env_t * env);
    00079
    00088     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00089     axis2_conf_add_svc_grp(
    00090         axis2_conf_t * conf,
    00091         const axutil_env_t * env,
    00092         struct axis2_svc_grp *svc_grp);
    00093
    00102     AXIS2_EXTERN struct axis2_svc_grp *AXIS2_CALL
    00103                 axis2_conf_get_svc_grp(
    00104                     const axis2_conf_t * conf,
    00105                     const axutil_env_t * env,
    00106                     const axis2_char_t * svc_grp_name);
    00107
    00115     AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
    00116     axis2_conf_get_all_svc_grps(
    00117         const axis2_conf_t * conf,
    00118         const axutil_env_t * env);
    00119
    00128     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00129     axis2_conf_add_svc(
    00130         axis2_conf_t * conf,
    00131         const axutil_env_t * env,
    00132         struct axis2_svc *svc);
    00133
    00142     AXIS2_EXTERN struct axis2_svc *AXIS2_CALL
    00143                 axis2_conf_get_svc(
    00144                     const axis2_conf_t * conf,
    00145                     const axutil_env_t * env,
    00146                     const axis2_char_t * svc_name);
    00147
    00155     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00156     axis2_conf_remove_svc(
    00157         axis2_conf_t * conf,
    00158         const axutil_env_t * env,
    00159         const axis2_char_t * name);
    00160
    00168     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00169     axis2_conf_add_param(
    00170         axis2_conf_t * conf,
    00171         const axutil_env_t * env,
    00172         axutil_param_t * param);
    00173
    00182     AXIS2_EXTERN axutil_param_t *AXIS2_CALL
    00183     axis2_conf_get_param(
    00184         const axis2_conf_t * conf,
    00185         const axutil_env_t * env,
    00186         const axis2_char_t * name);
    00187
    00195     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
    00196     axis2_conf_get_all_params(
    00197         const axis2_conf_t * conf,
    00198         const axutil_env_t * env);
    00199
    00207     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
    00208     axis2_conf_is_param_locked(
    00209         const axis2_conf_t * conf,
    00210         const axutil_env_t * env,
    00211         const axis2_char_t * param_name);
    00212
    00221     AXIS2_EXTERN axis2_transport_in_desc_t *AXIS2_CALL
    00222
    00223     axis2_conf_get_transport_in(
    00224         const axis2_conf_t * conf,
    00225         const axutil_env_t * env,
    00226         const AXIS2_TRANSPORT_ENUMS trans_enum);
    00227
    00236     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00237     axis2_conf_add_transport_in(
    00238         axis2_conf_t * conf,
    00239         const axutil_env_t * env,
    00240         axis2_transport_in_desc_t * transport,
    00241         const AXIS2_TRANSPORT_ENUMS trans_enum);
    00242
    00251     AXIS2_EXTERN axis2_transport_out_desc_t *AXIS2_CALL
    00252
    00253     axis2_conf_get_transport_out(
    00254         const axis2_conf_t * conf,
    00255         const axutil_env_t * env,
    00256         const AXIS2_TRANSPORT_ENUMS trans_enum);
    00257
    00266     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00267     axis2_conf_add_transport_out(
    00268         axis2_conf_t * conf,
    00269         const axutil_env_t * env,
    00270         axis2_transport_out_desc_t * transport,
    00271         const AXIS2_TRANSPORT_ENUMS trans_enum);
    00272
    00280     AXIS2_EXTERN axis2_transport_in_desc_t **AXIS2_CALL
    00281
    00282     axis2_conf_get_all_in_transports(
    00283         const axis2_conf_t * conf,
    00284         const axutil_env_t * env);
    00285
    00293     AXIS2_EXTERN axis2_transport_out_desc_t **AXIS2_CALL
    00294
    00295     axis2_conf_get_all_out_transports(
    00296         const axis2_conf_t * conf,
    00297         const axutil_env_t * env);
    00298
    00306     AXIS2_EXTERN struct axis2_module_desc *AXIS2_CALL
    00307                 axis2_conf_get_module(
    00308                     const axis2_conf_t * conf,
    00309                     const axutil_env_t * env,
    00310                     const axutil_qname_t * qname);
    00311
    00319     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
    00320
    00321     axis2_conf_get_all_engaged_modules(
    00322         const axis2_conf_t * conf,
    00323         const axutil_env_t * env);
    00324
    00332     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
    00333
    00334     axis2_conf_get_in_phases_upto_and_including_post_dispatch(
    00335         const axis2_conf_t * conf,
    00336         const axutil_env_t * env);
    00337
    00346     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
    00347     axis2_conf_get_out_flow(
    00348         const axis2_conf_t * conf,
    00349         const axutil_env_t * env);
    00350
    00359     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
    00360
    00361     axis2_conf_get_in_fault_flow(
    00362         const axis2_conf_t * conf,
    00363         const axutil_env_t * env);
    00364
    00373     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
    00374
    00375     axis2_conf_get_out_fault_flow(
    00376         const axis2_conf_t * conf,
    00377         const axutil_env_t * env);
    00378
    00388     AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
    00389     axis2_conf_get_all_faulty_svcs(
    00390         const axis2_conf_t * conf,
    00391         const axutil_env_t * env);
    00392
    00402     AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
    00403     axis2_conf_get_all_faulty_modules(
    00404         const axis2_conf_t * conf,
    00405         const axutil_env_t * env);
    00406
    00414     AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
    00415     axis2_conf_get_all_svcs(
    00416         const axis2_conf_t * conf,
    00417         const axutil_env_t * env);
    00418
    00427     AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
    00428     axis2_conf_get_all_svcs_to_load(
    00429         const axis2_conf_t * conf,
    00430         const axutil_env_t * env);
    00431
    00439     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
    00440     axis2_conf_is_engaged(
    00441         axis2_conf_t * conf,
    00442         const axutil_env_t * env,
    00443         const axutil_qname_t * module_name);
    00444
    00452     AXIS2_EXTERN struct axis2_phases_info *AXIS2_CALL
    00453
    00454                 axis2_conf_get_phases_info(
    00455                     const axis2_conf_t * conf,
    00456                     const axutil_env_t * env);
    00457
    00466     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00467     axis2_conf_set_phases_info(
    00468         axis2_conf_t * conf,
    00469         const axutil_env_t * env,
    00470         struct axis2_phases_info *phases_info);
    00471
    00480     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00481     axis2_conf_add_msg_recv(
    00482         axis2_conf_t * conf,
    00483         const axutil_env_t * env,
    00484         const axis2_char_t * key,
    00485         struct axis2_msg_recv *msg_recv);
    00486
    00496     AXIS2_EXTERN struct axis2_msg_recv *AXIS2_CALL
    00497                 axis2_conf_get_msg_recv(
    00498                     const axis2_conf_t * conf,
    00499                     const axutil_env_t * env,
    00500                     axis2_char_t * key);
    00501
    00510     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00511     axis2_conf_set_out_phases(
    00512         axis2_conf_t * conf,
    00513         const axutil_env_t * env,
    00514         axutil_array_list_t * out_phases);
    00515
    00523     AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
    00524     axis2_conf_get_out_phases(
    00525         const axis2_conf_t * conf,
    00526         const axutil_env_t * env);
    00527
    00535     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00536     axis2_conf_set_in_fault_phases(
    00537         axis2_conf_t * conf,
    00538         const axutil_env_t * env,
    00539         axutil_array_list_t * list);
    00540
    00548     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00549     axis2_conf_set_out_fault_phases(
    00550         axis2_conf_t * conf,
    00551         const axutil_env_t * env,
    00552         axutil_array_list_t * list);
    00553
    00561     AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
    00562     axis2_conf_get_all_modules(
    00563         const axis2_conf_t * conf,
    00564         const axutil_env_t * env);
    00565
    00573     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00574     axis2_conf_add_module(
    00575         axis2_conf_t * conf,
    00576         const axutil_env_t * env,
    00577         struct axis2_module_desc *module);
    00578
    00585     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00586
    00587     axis2_conf_set_default_dispatchers(
    00588         axis2_conf_t * conf,
    00589         const axutil_env_t * env);
    00590
    00598     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00599     axis2_conf_set_dispatch_phase(
    00600         axis2_conf_t * conf,
    00601         const axutil_env_t * env,
    00602         axis2_phase_t * dispatch);
    00603
    00610     AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
    00611     axis2_conf_get_repo(
    00612         const axis2_conf_t * conf,
    00613         const axutil_env_t * env);
    00614
    00622     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00623     axis2_conf_set_repo(
    00624         axis2_conf_t * conf,
    00625         const axutil_env_t * env,
    00626         axis2_char_t * axis2_repo);
    00627
    00628
    00635     AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
    00636     axis2_conf_get_axis2_xml(
    00637         const axis2_conf_t * conf,
    00638         const axutil_env_t * env);
    00639
    00647     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00648     axis2_conf_set_axis2_xml(
    00649         axis2_conf_t * conf,
    00650         const axutil_env_t * env,
    00651         axis2_char_t * axis2_xml);
    00652
    00660     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00661     axis2_conf_engage_module(
    00662         axis2_conf_t * conf,
    00663         const axutil_env_t * env,
    00664         const axutil_qname_t * module_ref);
    00665
    00673     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00674     axis2_conf_set_dep_engine(
    00675         axis2_conf_t * conf,
    00676         const axutil_env_t * env,
    00677         struct axis2_dep_engine *dep_engine);
    00678
    00686     AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
    00687
    00688     axis2_conf_get_default_module_version(
    00689         const axis2_conf_t * conf,
    00690         const axutil_env_t * env,
    00691         const axis2_char_t * module_name);
    00692
    00701     AXIS2_EXTERN struct axis2_module_desc *AXIS2_CALL
    00702
    00703                 axis2_conf_get_default_module(
    00704                     const axis2_conf_t * conf,
    00705                     const axutil_env_t * env,
    00706                     const axis2_char_t * module_name);
    00707
    00716     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00717
    00718     axis2_conf_add_default_module_version(
    00719         axis2_conf_t * conf,
    00720         const axutil_env_t * env,
    00721         const axis2_char_t * module_name,
    00722         const axis2_char_t * module_version);
    00723
    00732     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00733
    00734     axis2_conf_engage_module_with_version(
    00735         axis2_conf_t * conf,
    00736         const axutil_env_t * env,
    00737         const axis2_char_t * module_name,
    00738         const axis2_char_t * version_id);
    00739
    00745     AXIS2_EXTERN axis2_conf_t *AXIS2_CALL
    00746     axis2_conf_create(
    00747         const axutil_env_t * env);
    00748
    00749     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
    00750     axis2_conf_get_enable_mtom(
    00751         axis2_conf_t * conf,
    00752         const axutil_env_t * env);
    00753
    00754     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00755     axis2_conf_set_enable_mtom(
    00756         axis2_conf_t * conf,
    00757         const axutil_env_t * env,
    00758         axis2_bool_t enable_mtom);
    00759
    00763         AXIS2_EXTERN axis2_bool_t AXIS2_CALL
    00764     axis2_conf_get_axis2_flag(
    00765         axis2_conf_t * conf,
    00766         const axutil_env_t * env);
    00767
    00768     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00769     axis2_conf_set_axis2_flag(
    00770         axis2_conf_t * conf,
    00771         const axutil_env_t * env,
    00772         axis2_bool_t axis2_flag);
    00773
    00774     /*The following two methods are used in Rampart to
    00775      *check whether security is engaed. */
    00776
    00777     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
    00778     axis2_conf_get_enable_security(
    00779         axis2_conf_t * conf,
    00780         const axutil_env_t * env);
    00781
    00782     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00783     axis2_conf_set_enable_security(
    00784         axis2_conf_t * conf,
    00785         const axutil_env_t * env,
    00786         axis2_bool_t enable_security);
    00787
    00788     AXIS2_EXTERN void *AXIS2_CALL
    00789     axis2_conf_get_security_context(
    00790         axis2_conf_t * conf,
    00791         const axutil_env_t * env);
    00792
    00793     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00794     axis2_conf_set_security_context(
    00795         axis2_conf_t * conf,
    00796         const axutil_env_t * env,
    00797         void *security_context);
    00798
    00799     AXIS2_EXTERN axutil_param_container_t *AXIS2_CALL
    00800
    00801     axis2_conf_get_param_container(
    00802         const axis2_conf_t * conf,
    00803         const axutil_env_t * env);
    00804
    00811     AXIS2_EXTERN axis2_desc_t *AXIS2_CALL
    00812     axis2_conf_get_base(
    00813         const axis2_conf_t * conf,
    00814         const axutil_env_t * env);
    00815
    00816         AXIS2_EXTERN axutil_array_list_t * AXIS2_CALL
    00817         axis2_conf_get_handlers(const axis2_conf_t * conf,
    00818                 const axutil_env_t * env);
    00819 #ifdef __cplusplus
    00820 }
    00821 #endif
    00822 #endif                          /* AXIS2_CONFIG_H */