summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorGravatar nandika2012-02-04 11:37:47 +0000
committerGravatar nandika2012-02-04 11:37:47 +0000
commitcce6f5459dfd45f8f8afafc8f4453f10d867e86e (patch)
tree4542df2937076d8e39d362d923c21a85861f682b /include
parent59dc5aee2bf659ef24484ff7b484c5635f2bb33f (diff)
downloadaxis2c-cce6f5459dfd45f8f8afafc8f4453f10d867e86e.tar.gz
axis2c-cce6f5459dfd45f8f8afafc8f4453f10d867e86e.tar.bz2
adding patch 0004 of jira issue 1582
git-svn-id: http://svn.apache.org/repos/asf/axis/axis2/c/core/trunk@1240492 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'include')
-rw-r--r--include/axis2_conf.h1679
1 files changed, 845 insertions, 834 deletions
diff --git a/include/axis2_conf.h b/include/axis2_conf.h
index 03c915f..ffc189d 100644
--- a/include/axis2_conf.h
+++ b/include/axis2_conf.h
@@ -1,834 +1,845 @@
-
-/*
-* Licensed to the Apache Software Foundation (ASF) under one or more
-* contributor license agreements. See the NOTICE file distributed with
-* this work for additional information regarding copyright ownership.
-* The ASF licenses this file to You under the Apache License, Version 2.0
-* (the "License"); you may not use this file except in compliance with
-* the License. You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-#ifndef AXIS2_CONFIG_H
-#define AXIS2_CONFIG_H
-
-/**
- * @defgroup axis2_engine engine
- * @ingroup axis2
- * @{
- * @}
- */
-
-/**
- * @defgroup axis2_config configuration
- * @ingroup axis2_engine
- * Axis2 configuration captures all configuration information. Configuration
- * information includes user preferences along with module and
- * service information that is either statically configured using axis2.xml
- * file, service.xml files and module.xml files or dynamically using the
- * functions defined in the ops struct related to this conf struct.
- * @{
- */
-
-/**
- * @file axis2_config.h
- */
-
-#include <axutil_param_container.h>
-#include <axis2_svc_grp.h>
-#include <axis2_transport_in_desc.h>
-#include <axis2_transport_out_desc.h>
-#include <axutil_qname.h>
-#include <axutil_hash.h>
-#include <axis2_phases_info.h>
-#include <axis2_msg_recv.h>
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-
- /** Type name for struct axis2_conf */
- typedef struct axis2_conf axis2_conf_t;
-
- struct axis2_msg_recv;
- struct axis2_phases_info;
- struct axis2_svc_grp;
- struct axis2_svc;
- struct axis2_op;
- struct axis2_dep_engine;
- struct axis2_desp;
-
- /**
- * Frees conf struct.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
- */
- AXIS2_EXTERN void AXIS2_CALL
- axis2_conf_free(
- axis2_conf_t * conf,
- const axutil_env_t * env);
-
- /**
- * Adds a service group to the configuration.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param svc_grp pointer to service group, conf takes over the
- * ownership of the service group
- * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
- */
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
- axis2_conf_add_svc_grp(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- struct axis2_svc_grp *svc_grp);
-
- /**
- * Gets a named service group.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param svc_grp_name name of the service group to be accessed
- * @return pointer to service group with the given name if exists,
- * else NULL. Returns a reference, not a cloned copy
- */
- AXIS2_EXTERN struct axis2_svc_grp *AXIS2_CALL
- axis2_conf_get_svc_grp(
- const axis2_conf_t * conf,
- const axutil_env_t * env,
- const axis2_char_t * svc_grp_name);
-
- /**
- * Gets all service group added to conf.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @return pointer to hash table containing the service groups, returns
- * a reference, not a cloned copy
- */
- AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
- axis2_conf_get_all_svc_grps(
- const axis2_conf_t * conf,
- const axutil_env_t * env);
-
- /**
- * Adds a service to configuration.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param svc pointer to service, conf takes over the ownership of the
- * service
- * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
- */
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
- axis2_conf_add_svc(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- struct axis2_svc *svc);
-
- /**
- * Gets a service with given name.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param svc_name service name string
- * @return pointer to service with the given name if exists, else NULL.
- * Returns a reference, not a cloned copy
- */
- AXIS2_EXTERN struct axis2_svc *AXIS2_CALL
- axis2_conf_get_svc(
- const axis2_conf_t * conf,
- const axutil_env_t * env,
- const axis2_char_t * svc_name);
-
- /**
- * Removes the named service from configuration.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param name name of service to be removed
- * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
- */
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
- axis2_conf_remove_svc(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- const axis2_char_t * name);
-
- /**
- * Adds a parameter to configuration.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param param pointer to parameter struct to be added
- * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
- */
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
- axis2_conf_add_param(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- axutil_param_t * param);
-
- /**
- * Gets a parameter with the given name.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param name name of the parameter to be accessed
- * @return pointer to parameter with the given name if exists, else NULL.
- * Returns a reference, not a cloned copy
- */
- AXIS2_EXTERN axutil_param_t *AXIS2_CALL
- axis2_conf_get_param(
- const axis2_conf_t * conf,
- const axutil_env_t * env,
- const axis2_char_t * name);
-
- /**
- * Gets all the parameters added to the configuration.
- * @param conf pointer to conf struct
- * @param env pointer to environment
- * @return pointer to array list containing parameters if exists,
- * else NULL. Returns a reference, not a cloned copy
- */
- AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
- axis2_conf_get_all_params(
- const axis2_conf_t * conf,
- const axutil_env_t * env);
-
- /**
- * Checks if the named parameter is locked.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param param_name name of the parameter
- * @return AXIS2_TRUE if parameter is locked, else AXIS2_FALSE
- */
- AXIS2_EXTERN axis2_bool_t AXIS2_CALL
- axis2_conf_is_param_locked(
- const axis2_conf_t * conf,
- const axutil_env_t * env,
- const axis2_char_t * param_name);
-
- /**
- * Gets in transport corresponding to the given transport QName.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param qname QName of transport
- * @return pointer to transport in description if exists,
- * else NULL. Returns a reference, not a cloned copy
- */
- AXIS2_EXTERN axis2_transport_in_desc_t *AXIS2_CALL
-
- axis2_conf_get_transport_in(
- const axis2_conf_t * conf,
- const axutil_env_t * env,
- const AXIS2_TRANSPORT_ENUMS trans_enum);
-
- /**
- * Adds a transport in description.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param transport pointer to transport in description. conf assumes
- * ownership of the struct
- * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
- */
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
- axis2_conf_add_transport_in(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- axis2_transport_in_desc_t * transport,
- const AXIS2_TRANSPORT_ENUMS trans_enum);
-
- /**
- * Gets out transport corresponding to the given transport QName.
- * @param conf pointer to conf struct
- * @param env pointer to environment strcut
- * @param qname pointer to transport qname
- * @return pointer to transport out description if exists,
- * else NULL. Returns a reference, not a cloned copy
- */
- AXIS2_EXTERN axis2_transport_out_desc_t *AXIS2_CALL
-
- axis2_conf_get_transport_out(
- const axis2_conf_t * conf,
- const axutil_env_t * env,
- const AXIS2_TRANSPORT_ENUMS trans_enum);
-
- /**
- * Adds a transport out description.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param transport pointer to transport out description. conf assumes
- * ownership of the struct
- * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
- */
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
- axis2_conf_add_transport_out(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- axis2_transport_out_desc_t * transport,
- const AXIS2_TRANSPORT_ENUMS trans_enum);
-
- /**
- * Gets all in transports.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @return hash table containing all transport in descriptions.
- * Returns a reference, not a cloned copy
- */
- AXIS2_EXTERN axis2_transport_in_desc_t **AXIS2_CALL
-
- axis2_conf_get_all_in_transports(
- const axis2_conf_t * conf,
- const axutil_env_t * env);
-
- /**
- * Gets all out transports.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @return hash table containing all transport out descriptions.
- * Returns a reference, not a cloned copy
- */
- AXIS2_EXTERN axis2_transport_out_desc_t **AXIS2_CALL
-
- axis2_conf_get_all_out_transports(
- const axis2_conf_t * conf,
- const axutil_env_t * env);
-
- /**
- * Gets a module with given QName.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param qname pointer to qname
- * @return module description corresponding to the given qname
- */
- AXIS2_EXTERN struct axis2_module_desc *AXIS2_CALL
- axis2_conf_get_module(
- const axis2_conf_t * conf,
- const axutil_env_t * env,
- const axutil_qname_t * qname);
-
- /**
- * Gets the list of engaged modules.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @return a pointer to the array list of engaged modules. Returns a
- * reference, not a cloned copy
- */
- AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
-
- axis2_conf_get_all_engaged_modules(
- const axis2_conf_t * conf,
- const axutil_env_t * env);
-
- /**
- * Gets the in phases up to and including port dispatch phase.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @return a pointer to the array list of in phases up to post dispatch
- * inclusive. Returns a reference, not a cloned copy
- */
- AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
-
- axis2_conf_get_in_phases_upto_and_including_post_dispatch(
- const axis2_conf_t * conf,
- const axutil_env_t * env);
-
- /**
- * Gets the out flow. Out flow is a list of phases invoked in the out
- * path of execution of the engine.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @return a pointer to the array list of out flow phases. Returns a
- * reference, not a cloned copy
- */
- AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
- axis2_conf_get_out_flow(
- const axis2_conf_t * conf,
- const axutil_env_t * env);
-
- /**
- * Gets the in fault flow. In fault flow is a list of phases invoked in
- * the in path of execution, if some fault happens.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @return a pointer to the array list of in fault flow phases. Returns a
- * reference, not a cloned copy
- */
- AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
-
- axis2_conf_get_in_fault_flow(
- const axis2_conf_t * conf,
- const axutil_env_t * env);
-
- /**
- * Gets the out fault flow. Out fault flow is a list of phases invoked in
- * the out path of execution, if some fault happens.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @return a pointer to the array list of out fault flow phases. Returns a
- * reference, not a cloned copy
- */
- AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
-
- axis2_conf_get_out_fault_flow(
- const axis2_conf_t * conf,
- const axutil_env_t * env);
-
- /**
- * Gets faulty services. A faulty service is a service that does not
- * meet the service configuration criteria or a service with errors in
- * the service dynamic link library.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @return a pointer to the hash table of faulty services. Returns a
- * reference, not a cloned copy
- */
- AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
- axis2_conf_get_all_faulty_svcs(
- const axis2_conf_t * conf,
- const axutil_env_t * env);
-
- /**
- * Gets faulty modules. A faulty module is a module that does not
- * meet the module configuration criteria or a module with errors in
- * the service dynamic link library.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @return a pointer to the hash table of faulty modules. Returns a
- * reference, not a cloned copy
- */
- AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
- axis2_conf_get_all_faulty_modules(
- const axis2_conf_t * conf,
- const axutil_env_t * env);
-
- /**
- * Gets all the list of services loaded into configuration.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @return a pointer to the hash table of services. Returns a
- * reference, not a cloned copy
- */
- AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
- axis2_conf_get_all_svcs(
- const axis2_conf_t * conf,
- const axutil_env_t * env);
-
- /**
- * Gets all the list of services that need to be loaded into configuration
- * at the start up of the axis2 engine.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @return a pointer to the hash table of services. Returns a
- * reference, not a cloned copy
- */
- AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
- axis2_conf_get_all_svcs_to_load(
- const axis2_conf_t * conf,
- const axutil_env_t * env);
-
- /**
- * Checks is the named module is engaged.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param module_name pointer to QName representing the module name
- * @return AXIS2_TRUE if named module is engaged, else AXIS2_FALSE
- */
- AXIS2_EXTERN axis2_bool_t AXIS2_CALL
- axis2_conf_is_engaged(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- const axutil_qname_t * module_name);
-
- /**
- * Gets phases information struct.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @return a pointer to the struct containing phases information.
- * Returns a reference, not a cloned copy
- */
- AXIS2_EXTERN struct axis2_phases_info *AXIS2_CALL
-
- axis2_conf_get_phases_info(
- const axis2_conf_t * conf,
- const axutil_env_t * env);
-
- /**
- * Sets phases information struct.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param phases_info pointer to phases_info struct. conf assumes
- * ownership of the struct
- * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
- */
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
- axis2_conf_set_phases_info(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- struct axis2_phases_info *phases_info);
-
- /**
- * Adds message receiver with the given key.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param key key string with which the message receive is to be added
- * @param msg_recv pointer to message receiver
- * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
- */
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
- axis2_conf_add_msg_recv(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- const axis2_char_t * key,
- struct axis2_msg_recv *msg_recv);
-
- /**
- * Gets message receiver with the given key.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param key key string corresponding to the message receiver to
- * be retrieved
- * @return pointer to the message receiver with the given key if it
- * exists, else null. Returns a reference, not a cloned copy
- */
- AXIS2_EXTERN struct axis2_msg_recv *AXIS2_CALL
- axis2_conf_get_msg_recv(
- const axis2_conf_t * conf,
- const axutil_env_t * env,
- axis2_char_t * key);
-
- /**
- * Sets the list of out phases.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param out_phases pointer to array list of the phases. conf assumes
- * ownership of the struct
- * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
- */
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
- axis2_conf_set_out_phases(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- axutil_array_list_t * out_phases);
-
- /**
- * Gets the list of out phases.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @return pointer to array list of out phases. Returns a reference,
- * not a cloned copy
- */
- AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
- axis2_conf_get_out_phases(
- const axis2_conf_t * conf,
- const axutil_env_t * env);
-
- /**
- * Sets fault phases for in path.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param list pointer to array list of phases
- * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
- */
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
- axis2_conf_set_in_fault_phases(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- axutil_array_list_t * list);
-
- /**
- * Sets fault phases for out path.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param list pointer to array list of phases
- * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
- */
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
- axis2_conf_set_out_fault_phases(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- axutil_array_list_t * list);
-
- /**
- * Gets all modules configured,
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @return a pointer to hash table containing the list of modules.
- * Returns a reference, not a cloned copy
- */
- AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
- axis2_conf_get_all_modules(
- const axis2_conf_t * conf,
- const axutil_env_t * env);
-
- /**
- * Adds a module.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param module pointer to module struct to be added
- * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
- */
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
- axis2_conf_add_module(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- struct axis2_module_desc *module);
-
- /**
- * Sets the default dispatchers.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
- */
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
-
- axis2_conf_set_default_dispatchers(
- axis2_conf_t * conf,
- const axutil_env_t * env);
-
- /**
- * Sets a custom dispatching phase.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param dispatch pointer to phase to be dispatched
- * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
- */
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
- axis2_conf_set_dispatch_phase(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- axis2_phase_t * dispatch);
-
- /**
- * Gets the repository location.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @return returns repository location as a string
- */
- AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
- axis2_conf_get_repo(
- const axis2_conf_t * conf,
- const axutil_env_t * env);
-
- /**
- * Sets the repository location.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param axis2_repo repository location as a string
- * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
- */
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
- axis2_conf_set_repo(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- axis2_char_t * axis2_repo);
-
-
- /**
- * Gets the axis2.xml location.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @return returns repository location as a string
- */
- AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
- axis2_conf_get_axis2_xml(
- const axis2_conf_t * conf,
- const axutil_env_t * env);
-
- /**
- * Sets the axis2.xml location.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param axis2_xml repository location as a string
- * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
- */
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
- axis2_conf_set_axis2_xml(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- axis2_char_t * axis2_xml);
-
- /**
- * Engages the named module.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param module_ref pointer to the QName of the module to be engaged
- * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
- */
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
- axis2_conf_engage_module(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- const axutil_qname_t * module_ref);
-
- /**
- * Sets the deployment engine.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param dep_engine pointer to dep_engine struct
- * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
- */
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
- axis2_conf_set_dep_engine(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- struct axis2_dep_engine *dep_engine);
-
- /**
- * Gets the default module version for the named module.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param module_name module name string
- * @return default module version as a string
- */
- AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
-
- axis2_conf_get_default_module_version(
- const axis2_conf_t * conf,
- const axutil_env_t * env,
- const axis2_char_t * module_name);
-
- /**
- * Gets the default module reference for the named module.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param module_name module name string
- * @return pointer to the module description struct corresponding to
- * the given name
- */
- AXIS2_EXTERN struct axis2_module_desc *AXIS2_CALL
-
- axis2_conf_get_default_module(
- const axis2_conf_t * conf,
- const axutil_env_t * env,
- const axis2_char_t * module_name);
-
- /**
- * Adds a default module version for the named module.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param module_name name of the module
- * @param module_version default version for the module
- * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
- */
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
-
- axis2_conf_add_default_module_version(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- const axis2_char_t * module_name,
- const axis2_char_t * module_version);
-
- /**
- * Engages the module with the given version.
- * @param conf pointer to conf struct
- * @param env pointer to environment struct
- * @param module_name name of the module to be engaged
- * @param version_id version of the module to be engaged
- * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
- */
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
-
- axis2_conf_engage_module_with_version(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- const axis2_char_t * module_name,
- const axis2_char_t * version_id);
-
- /**
- * Creates configuration struct.
- * @param env pointer to environment struct
- * @return pointer to newly created configuration
- */
- AXIS2_EXTERN axis2_conf_t *AXIS2_CALL
- axis2_conf_create(
- const axutil_env_t * env);
-
- AXIS2_EXTERN axis2_bool_t AXIS2_CALL
- axis2_conf_get_enable_mtom(
- axis2_conf_t * conf,
- const axutil_env_t * env);
-
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
- axis2_conf_set_enable_mtom(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- axis2_bool_t enable_mtom);
-
- /**
- * set a flag to mark conf created by axis2.xml
- */
- AXIS2_EXTERN axis2_bool_t AXIS2_CALL
- axis2_conf_get_axis2_flag(
- axis2_conf_t * conf,
- const axutil_env_t * env);
-
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
- axis2_conf_set_axis2_flag(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- axis2_bool_t axis2_flag);
-
- /*The following two methods are used in Rampart to
- *check whether security is engaed. */
-
- AXIS2_EXTERN axis2_bool_t AXIS2_CALL
- axis2_conf_get_enable_security(
- axis2_conf_t * conf,
- const axutil_env_t * env);
-
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
- axis2_conf_set_enable_security(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- axis2_bool_t enable_security);
-
- AXIS2_EXTERN void *AXIS2_CALL
- axis2_conf_get_security_context(
- axis2_conf_t * conf,
- const axutil_env_t * env);
-
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
- axis2_conf_set_security_context(
- axis2_conf_t * conf,
- const axutil_env_t * env,
- void *security_context);
-
- AXIS2_EXTERN axutil_param_container_t *AXIS2_CALL
-
- axis2_conf_get_param_container(
- const axis2_conf_t * conf,
- const axutil_env_t * env);
-
- /**
- * Gets base description.
- * @param conf pointer to message
- * @param env pointer to environment struct
- * @return pointer to base description struct
- */
- AXIS2_EXTERN axis2_desc_t *AXIS2_CALL
- axis2_conf_get_base(
- const axis2_conf_t * conf,
- const axutil_env_t * env);
-
- AXIS2_EXTERN axutil_array_list_t * AXIS2_CALL
- axis2_conf_get_handlers(const axis2_conf_t * conf,
- const axutil_env_t * env);
-
- /**
- * Disengage a module
- * @param
- *
- */
- AXIS2_EXTERN axis2_status_t AXIS2_CALL
- axis2_conf_disengage_module(
- const axis2_conf_t *conf,
- const axutil_env_t *env,
- const axutil_qname_t *module_ref
- );
-#ifdef __cplusplus
-}
-#endif
-#endif /* AXIS2_CONFIG_H */
+
+/*
+* Licensed to the Apache Software Foundation (ASF) under one or more
+* contributor license agreements. See the NOTICE file distributed with
+* this work for additional information regarding copyright ownership.
+* The ASF licenses this file to You under the Apache License, Version 2.0
+* (the "License"); you may not use this file except in compliance with
+* the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
+#ifndef AXIS2_CONFIG_H
+#define AXIS2_CONFIG_H
+
+/**
+ * @defgroup axis2_engine engine
+ * @ingroup axis2
+ * @{
+ * @}
+ */
+
+/**
+ * @defgroup axis2_config configuration
+ * @ingroup axis2_engine
+ * Axis2 configuration captures all configuration information. Configuration
+ * information includes user preferences along with module and
+ * service information that is either statically configured using axis2.xml
+ * file, service.xml files and module.xml files or dynamically using the
+ * functions defined in the ops struct related to this conf struct.
+ * @{
+ */
+
+/**
+ * @file axis2_config.h
+ */
+
+#include <axutil_param_container.h>
+#include <axis2_svc_grp.h>
+#include <axis2_transport_in_desc.h>
+#include <axis2_transport_out_desc.h>
+#include <axutil_qname.h>
+#include <axutil_hash.h>
+#include <axis2_phases_info.h>
+#include <axis2_msg_recv.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+ /** Type name for struct axis2_conf */
+ typedef struct axis2_conf axis2_conf_t;
+
+ struct axis2_msg_recv;
+ struct axis2_phases_info;
+ struct axis2_svc_grp;
+ struct axis2_svc;
+ struct axis2_op;
+ struct axis2_dep_engine;
+ struct axis2_desp;
+
+ /**
+ * Frees conf struct.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+ */
+ AXIS2_EXTERN void AXIS2_CALL
+ axis2_conf_free(
+ axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ /**
+ * Adds a service group to the configuration.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param svc_grp pointer to service group, conf takes over the
+ * ownership of the service group
+ * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+ */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_conf_add_svc_grp(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ struct axis2_svc_grp *svc_grp);
+
+ /**
+ * Gets a named service group.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param svc_grp_name name of the service group to be accessed
+ * @return pointer to service group with the given name if exists,
+ * else NULL. Returns a reference, not a cloned copy
+ */
+ AXIS2_EXTERN struct axis2_svc_grp *AXIS2_CALL
+ axis2_conf_get_svc_grp(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env,
+ const axis2_char_t * svc_grp_name);
+
+ /**
+ * Gets all service group added to conf.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @return pointer to hash table containing the service groups, returns
+ * a reference, not a cloned copy
+ */
+ AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
+ axis2_conf_get_all_svc_grps(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ /**
+ * Adds a service to configuration.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param svc pointer to service, conf takes over the ownership of the
+ * service
+ * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+ */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_conf_add_svc(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ struct axis2_svc *svc);
+
+ /**
+ * Gets a service with given name.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param svc_name service name string
+ * @return pointer to service with the given name if exists, else NULL.
+ * Returns a reference, not a cloned copy
+ */
+ AXIS2_EXTERN struct axis2_svc *AXIS2_CALL
+ axis2_conf_get_svc(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env,
+ const axis2_char_t * svc_name);
+
+ /**
+ * Removes the named service from configuration.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param name name of service to be removed
+ * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+ */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_conf_remove_svc(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ const axis2_char_t * name);
+
+ /**
+ * Adds a parameter to configuration.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param param pointer to parameter struct to be added
+ * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+ */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_conf_add_param(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ axutil_param_t * param);
+
+ /**
+ * Gets a parameter with the given name.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param name name of the parameter to be accessed
+ * @return pointer to parameter with the given name if exists, else NULL.
+ * Returns a reference, not a cloned copy
+ */
+ AXIS2_EXTERN axutil_param_t *AXIS2_CALL
+ axis2_conf_get_param(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env,
+ const axis2_char_t * name);
+
+ /**
+ * Gets all the parameters added to the configuration.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment
+ * @return pointer to array list containing parameters if exists,
+ * else NULL. Returns a reference, not a cloned copy
+ */
+ AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
+ axis2_conf_get_all_params(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ /**
+ * Checks if the named parameter is locked.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param param_name name of the parameter
+ * @return AXIS2_TRUE if parameter is locked, else AXIS2_FALSE
+ */
+ AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+ axis2_conf_is_param_locked(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env,
+ const axis2_char_t * param_name);
+
+ /**
+ * Gets in transport corresponding to the given transport QName.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param qname QName of transport
+ * @return pointer to transport in description if exists,
+ * else NULL. Returns a reference, not a cloned copy
+ */
+ AXIS2_EXTERN axis2_transport_in_desc_t *AXIS2_CALL
+
+ axis2_conf_get_transport_in(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env,
+ const AXIS2_TRANSPORT_ENUMS trans_enum);
+
+ /**
+ * Adds a transport in description.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param transport pointer to transport in description. conf assumes
+ * ownership of the struct
+ * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+ */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_conf_add_transport_in(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ axis2_transport_in_desc_t * transport,
+ const AXIS2_TRANSPORT_ENUMS trans_enum);
+
+ /**
+ * Gets out transport corresponding to the given transport QName.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment strcut
+ * @param qname pointer to transport qname
+ * @return pointer to transport out description if exists,
+ * else NULL. Returns a reference, not a cloned copy
+ */
+ AXIS2_EXTERN axis2_transport_out_desc_t *AXIS2_CALL
+
+ axis2_conf_get_transport_out(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env,
+ const AXIS2_TRANSPORT_ENUMS trans_enum);
+
+ /**
+ * Adds a transport out description.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param transport pointer to transport out description. conf assumes
+ * ownership of the struct
+ * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+ */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_conf_add_transport_out(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ axis2_transport_out_desc_t * transport,
+ const AXIS2_TRANSPORT_ENUMS trans_enum);
+
+ /**
+ * Gets all in transports.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @return hash table containing all transport in descriptions.
+ * Returns a reference, not a cloned copy
+ */
+ AXIS2_EXTERN axis2_transport_in_desc_t **AXIS2_CALL
+
+ axis2_conf_get_all_in_transports(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ /**
+ * Gets all out transports.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @return hash table containing all transport out descriptions.
+ * Returns a reference, not a cloned copy
+ */
+ AXIS2_EXTERN axis2_transport_out_desc_t **AXIS2_CALL
+
+ axis2_conf_get_all_out_transports(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ /**
+ * Gets a module with given QName.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param qname pointer to qname
+ * @return module description corresponding to the given qname
+ */
+ AXIS2_EXTERN struct axis2_module_desc *AXIS2_CALL
+ axis2_conf_get_module(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env,
+ const axutil_qname_t * qname);
+
+ /**
+ * Gets the list of engaged modules.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @return a pointer to the array list of engaged modules. Returns a
+ * reference, not a cloned copy
+ */
+ AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
+
+ axis2_conf_get_all_engaged_modules(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ /**
+ * Gets the in phases up to and including port dispatch phase.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @return a pointer to the array list of in phases up to post dispatch
+ * inclusive. Returns a reference, not a cloned copy
+ */
+ AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
+
+ axis2_conf_get_in_phases_upto_and_including_post_dispatch(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ /**
+ * Gets the out flow. Out flow is a list of phases invoked in the out
+ * path of execution of the engine.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @return a pointer to the array list of out flow phases. Returns a
+ * reference, not a cloned copy
+ */
+ AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
+ axis2_conf_get_out_flow(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ /**
+ * Gets the in fault flow. In fault flow is a list of phases invoked in
+ * the in path of execution, if some fault happens.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @return a pointer to the array list of in fault flow phases. Returns a
+ * reference, not a cloned copy
+ */
+ AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
+
+ axis2_conf_get_in_fault_flow(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ /**
+ * Gets the out fault flow. Out fault flow is a list of phases invoked in
+ * the out path of execution, if some fault happens.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @return a pointer to the array list of out fault flow phases. Returns a
+ * reference, not a cloned copy
+ */
+ AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
+
+ axis2_conf_get_out_fault_flow(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ /**
+ * Gets faulty services. A faulty service is a service that does not
+ * meet the service configuration criteria or a service with errors in
+ * the service dynamic link library.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @return a pointer to the hash table of faulty services. Returns a
+ * reference, not a cloned copy
+ */
+ AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
+ axis2_conf_get_all_faulty_svcs(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ /**
+ * Gets faulty modules. A faulty module is a module that does not
+ * meet the module configuration criteria or a module with errors in
+ * the service dynamic link library.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @return a pointer to the hash table of faulty modules. Returns a
+ * reference, not a cloned copy
+ */
+ AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
+ axis2_conf_get_all_faulty_modules(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ /**
+ * Gets all the list of services loaded into configuration.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @return a pointer to the hash table of services. Returns a
+ * reference, not a cloned copy
+ */
+ AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
+ axis2_conf_get_all_svcs(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ /**
+ * Gets all the list of services that need to be loaded into configuration
+ * at the start up of the axis2 engine.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @return a pointer to the hash table of services. Returns a
+ * reference, not a cloned copy
+ */
+ AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
+ axis2_conf_get_all_svcs_to_load(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ /**
+ * Checks is the named module is engaged.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param module_name pointer to QName representing the module name
+ * @return AXIS2_TRUE if named module is engaged, else AXIS2_FALSE
+ */
+ AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+ axis2_conf_is_engaged(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ const axutil_qname_t * module_name);
+
+ /**
+ * Gets phases information struct.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @return a pointer to the struct containing phases information.
+ * Returns a reference, not a cloned copy
+ */
+ AXIS2_EXTERN struct axis2_phases_info *AXIS2_CALL
+
+ axis2_conf_get_phases_info(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ /**
+ * Sets phases information struct.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param phases_info pointer to phases_info struct. conf assumes
+ * ownership of the struct
+ * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+ */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_conf_set_phases_info(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ struct axis2_phases_info *phases_info);
+
+ /**
+ * Adds message receiver with the given key.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param key key string with which the message receive is to be added
+ * @param msg_recv pointer to message receiver
+ * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+ */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_conf_add_msg_recv(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ const axis2_char_t * key,
+ struct axis2_msg_recv *msg_recv);
+
+ /**
+ * Gets message receiver with the given key.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param key key string corresponding to the message receiver to
+ * be retrieved
+ * @return pointer to the message receiver with the given key if it
+ * exists, else null. Returns a reference, not a cloned copy
+ */
+ AXIS2_EXTERN struct axis2_msg_recv *AXIS2_CALL
+ axis2_conf_get_msg_recv(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env,
+ axis2_char_t * key);
+
+ /**
+ * Sets the list of out phases.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param out_phases pointer to array list of the phases. conf assumes
+ * ownership of the struct
+ * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+ */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_conf_set_out_phases(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ axutil_array_list_t * out_phases);
+
+ /**
+ * Gets the list of out phases.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @return pointer to array list of out phases. Returns a reference,
+ * not a cloned copy
+ */
+ AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
+ axis2_conf_get_out_phases(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ /**
+ * Sets fault phases for in path.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param list pointer to array list of phases
+ * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+ */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_conf_set_in_fault_phases(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ axutil_array_list_t * list);
+
+ /**
+ * Sets fault phases for out path.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param list pointer to array list of phases
+ * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+ */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_conf_set_out_fault_phases(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ axutil_array_list_t * list);
+
+ /**
+ * Gets all modules configured,
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @return a pointer to hash table containing the list of modules.
+ * Returns a reference, not a cloned copy
+ */
+ AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
+ axis2_conf_get_all_modules(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ /**
+ * Adds a module.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param module pointer to module struct to be added
+ * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+ */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_conf_add_module(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ struct axis2_module_desc *module);
+
+ /**
+ * Sets the default dispatchers.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+ */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+
+ axis2_conf_set_default_dispatchers(
+ axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ /**
+ * Sets a custom dispatching phase.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param dispatch pointer to phase to be dispatched
+ * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+ */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_conf_set_dispatch_phase(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ axis2_phase_t * dispatch);
+
+ /**
+ * Gets the repository location.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @return returns repository location as a string
+ */
+ AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
+ axis2_conf_get_repo(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ /**
+ * Sets the repository location.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param axis2_repo repository location as a string
+ * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+ */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_conf_set_repo(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ axis2_char_t * axis2_repo);
+
+
+ /**
+ * Gets the axis2.xml location.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @return returns repository location as a string
+ */
+ AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
+ axis2_conf_get_axis2_xml(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ /**
+ * Sets the axis2.xml location.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param axis2_xml repository location as a string
+ * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+ */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_conf_set_axis2_xml(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ axis2_char_t * axis2_xml);
+
+ /**
+ * Engages the named module.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param module_ref pointer to the QName of the module to be engaged
+ * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+ */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_conf_engage_module(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ const axutil_qname_t * module_ref);
+
+ /**
+ * Sets the deployment engine.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param dep_engine pointer to dep_engine struct
+ * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+ */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_conf_set_dep_engine(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ struct axis2_dep_engine *dep_engine);
+
+ /**
+ * Gets the deployment engine.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @return dep_engine pointer to dep_engine struct
+ */
+ AXIS2_EXTERN struct axis2_dep_engine * AXIS2_CALL
+ axis2_conf_get_dep_engine(
+ axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ /**
+ * Gets the default module version for the named module.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param module_name module name string
+ * @return default module version as a string
+ */
+ AXIS2_EXTERN const axis2_char_t *AXIS2_CALL
+
+ axis2_conf_get_default_module_version(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env,
+ const axis2_char_t * module_name);
+
+ /**
+ * Gets the default module reference for the named module.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param module_name module name string
+ * @return pointer to the module description struct corresponding to
+ * the given name
+ */
+ AXIS2_EXTERN struct axis2_module_desc *AXIS2_CALL
+
+ axis2_conf_get_default_module(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env,
+ const axis2_char_t * module_name);
+
+ /**
+ * Adds a default module version for the named module.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param module_name name of the module
+ * @param module_version default version for the module
+ * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+ */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+
+ axis2_conf_add_default_module_version(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ const axis2_char_t * module_name,
+ const axis2_char_t * module_version);
+
+ /**
+ * Engages the module with the given version.
+ * @param conf pointer to conf struct
+ * @param env pointer to environment struct
+ * @param module_name name of the module to be engaged
+ * @param version_id version of the module to be engaged
+ * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+ */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+
+ axis2_conf_engage_module_with_version(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ const axis2_char_t * module_name,
+ const axis2_char_t * version_id);
+
+ /**
+ * Creates configuration struct.
+ * @param env pointer to environment struct
+ * @return pointer to newly created configuration
+ */
+ AXIS2_EXTERN axis2_conf_t *AXIS2_CALL
+ axis2_conf_create(
+ const axutil_env_t * env);
+
+ AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+ axis2_conf_get_enable_mtom(
+ axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_conf_set_enable_mtom(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ axis2_bool_t enable_mtom);
+
+ /**
+ * set a flag to mark conf created by axis2.xml
+ */
+ AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+ axis2_conf_get_axis2_flag(
+ axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_conf_set_axis2_flag(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ axis2_bool_t axis2_flag);
+
+ /*The following two methods are used in Rampart to
+ *check whether security is engaed. */
+
+ AXIS2_EXTERN axis2_bool_t AXIS2_CALL
+ axis2_conf_get_enable_security(
+ axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_conf_set_enable_security(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ axis2_bool_t enable_security);
+
+ AXIS2_EXTERN void *AXIS2_CALL
+ axis2_conf_get_security_context(
+ axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_conf_set_security_context(
+ axis2_conf_t * conf,
+ const axutil_env_t * env,
+ void *security_context);
+
+ AXIS2_EXTERN axutil_param_container_t *AXIS2_CALL
+
+ axis2_conf_get_param_container(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ /**
+ * Gets base description.
+ * @param conf pointer to message
+ * @param env pointer to environment struct
+ * @return pointer to base description struct
+ */
+ AXIS2_EXTERN axis2_desc_t *AXIS2_CALL
+ axis2_conf_get_base(
+ const axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ AXIS2_EXTERN axutil_array_list_t * AXIS2_CALL
+ axis2_conf_get_handlers(const axis2_conf_t * conf,
+ const axutil_env_t * env);
+
+ /**
+ * Disengage a module
+ * @param
+ *
+ */
+ AXIS2_EXTERN axis2_status_t AXIS2_CALL
+ axis2_conf_disengage_module(
+ const axis2_conf_t *conf,
+ const axutil_env_t *env,
+ const axutil_qname_t *module_ref
+ );
+#ifdef __cplusplus
+}
+#endif
+#endif /* AXIS2_CONFIG_H */