00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef AXIS2_CONF_CTX_H
00019 #define AXIS2_CONF_CTX_H
00020
00036 #include <axis2_defines.h>
00037 #include <axutil_hash.h>
00038 #include <axutil_env.h>
00039 #include <axis2_ctx.h>
00040 #include <axis2_svc_grp_ctx.h>
00041
00042 #ifdef __cplusplus
00043 extern "C"
00044 {
00045 #endif
00046
00047
00049 typedef struct axis2_conf_ctx axis2_conf_ctx_t;
00050 struct axis2_conf;
00051
00059 AXIS2_EXTERN axis2_conf_ctx_t *AXIS2_CALL
00060 axis2_conf_ctx_create(const axutil_env_t *env,
00061 struct axis2_conf *conf);
00062
00070 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00071 axis2_conf_ctx_set_conf(axis2_conf_ctx_t *conf_ctx,
00072 const axutil_env_t *env,
00073 struct axis2_conf *conf);
00081 AXIS2_EXTERN axis2_ctx_t * AXIS2_CALL
00082 axis2_conf_ctx_get_base(const axis2_conf_ctx_t *conf_ctx,
00083 const axutil_env_t *env);
00084
00092 AXIS2_EXTERN axis2_conf_t * AXIS2_CALL
00093 axis2_conf_ctx_get_conf(const axis2_conf_ctx_t *conf_ctx,
00094 const axutil_env_t *env);
00095
00102 AXIS2_EXTERN axutil_hash_t * AXIS2_CALL
00103 axis2_conf_ctx_get_op_ctx_map(const axis2_conf_ctx_t *conf_ctx,
00104 const axutil_env_t *env);
00105
00112 AXIS2_EXTERN axutil_hash_t * AXIS2_CALL
00113 axis2_conf_ctx_get_svc_ctx_map(const axis2_conf_ctx_t *conf_ctx,
00114 const axutil_env_t *env);
00115
00122 AXIS2_EXTERN axutil_hash_t * AXIS2_CALL
00123 axis2_conf_ctx_get_svc_grp_ctx_map(const axis2_conf_ctx_t *conf_ctx,
00124 const axutil_env_t *env);
00125
00135 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00136 axis2_conf_ctx_register_op_ctx(axis2_conf_ctx_t *conf_ctx,
00137 const axutil_env_t *env,
00138 const axis2_char_t *message_id,
00139 axis2_op_ctx_t *op_ctx);
00140
00148 AXIS2_EXTERN axis2_op_ctx_t * AXIS2_CALL
00149 axis2_conf_ctx_get_op_ctx(const axis2_conf_ctx_t *conf_ctx,
00150 const axutil_env_t *env,
00151 const axis2_char_t *message_id);
00152
00161 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00162 axis2_conf_ctx_register_svc_ctx(axis2_conf_ctx_t *conf_ctx,
00163 const axutil_env_t *env,
00164 const axis2_char_t *svc_id,
00165 axis2_svc_ctx_t *svc_ctx);
00166
00174 AXIS2_EXTERN struct axis2_svc_ctx * AXIS2_CALL
00175 axis2_conf_ctx_get_svc_ctx(const axis2_conf_ctx_t *conf_ctx,
00176 const axutil_env_t *env,
00177 const axis2_char_t *svc_id);
00178
00187 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00188 axis2_conf_ctx_register_svc_grp_ctx(axis2_conf_ctx_t *conf_ctx,
00189 const axutil_env_t *env,
00190 const axis2_char_t *svc_grp_id,
00191 axis2_svc_grp_ctx_t *svc_grp_ctx);
00192
00200 AXIS2_EXTERN axis2_svc_grp_ctx_t * AXIS2_CALL
00201 axis2_conf_ctx_get_svc_grp_ctx(const axis2_conf_ctx_t *conf_ctx,
00202 const axutil_env_t *env,
00203 const axis2_char_t *svc_grp_id);
00204
00213 AXIS2_EXTERN const axis2_char_t * AXIS2_CALL
00214 axis2_conf_ctx_get_root_dir(const axis2_conf_ctx_t *conf_ctx,
00215 const axutil_env_t *env);
00216
00226 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00227 axis2_conf_ctx_set_root_dir(axis2_conf_ctx_t *conf_ctx,
00228 const axutil_env_t *env,
00229 const axis2_char_t *path);
00230
00240 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00241 axis2_conf_ctx_init(axis2_conf_ctx_t *conf_ctx,
00242 const axutil_env_t *env,
00243 axis2_conf_t *conf);
00244
00251 AXIS2_EXTERN void AXIS2_CALL
00252 axis2_conf_ctx_free(axis2_conf_ctx_t *conf_ctx,
00253 const axutil_env_t *env);
00254
00267 AXIS2_EXTERN axis2_svc_grp_ctx_t * AXIS2_CALL
00268 axis2_conf_ctx_fill_ctxs(axis2_conf_ctx_t *conf_ctx,
00269 const axutil_env_t *env,
00270 axis2_msg_ctx_t *msg_ctx);
00271
00272 #ifdef __cplusplus
00273 }
00274 #endif
00275
00276 #endif