00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef AXIS2_DESC_H
00020 #define AXIS2_DESC_H
00021
00034 #include <axutil_param_container.h>
00035 #include <axutil_hash.h>
00036 #include <axis2_description.h>
00037
00038 #ifdef __cplusplus
00039 extern "C"
00040 {
00041 #endif
00042
00044 typedef struct axis2_desc axis2_desc_t;
00045
00046 struct axis2_policy_include;
00047 struct axis2_msg;
00048
00054 AXIS2_EXTERN axis2_desc_t *AXIS2_CALL
00055 axis2_desc_create(
00056 const axutil_env_t * env);
00057
00064 AXIS2_EXTERN void AXIS2_CALL
00065 axis2_desc_free(
00066 axis2_desc_t * desc,
00067 const axutil_env_t * env);
00068
00076 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00077 axis2_desc_add_param(
00078 axis2_desc_t * desc,
00079 const axutil_env_t * env,
00080 axutil_param_t * param);
00081
00089 AXIS2_EXTERN axutil_param_t *AXIS2_CALL
00090 axis2_desc_get_param(
00091 const axis2_desc_t * desc,
00092 const axutil_env_t * env,
00093 const axis2_char_t * param_name);
00094
00101 AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00102 axis2_desc_get_all_params(
00103 const axis2_desc_t * desc,
00104 const axutil_env_t * env);
00105
00113 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00114 axis2_desc_is_param_locked(
00115 const axis2_desc_t * desc,
00116 const axutil_env_t * env,
00117 const axis2_char_t * param_name);
00118
00130 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00131 axis2_desc_add_child(
00132 const axis2_desc_t * desc,
00133 const axutil_env_t * env,
00134 const axis2_char_t * key,
00135 const struct axis2_msg *child);
00136
00143 AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
00144 axis2_desc_get_all_children(
00145 const axis2_desc_t * desc,
00146 const axutil_env_t * env);
00147
00156 AXIS2_EXTERN void *AXIS2_CALL
00157 axis2_desc_get_child(
00158 const axis2_desc_t * desc,
00159 const axutil_env_t * env,
00160 const axis2_char_t * key);
00161
00169 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00170 axis2_desc_remove_child(
00171 const axis2_desc_t * desc,
00172 const axutil_env_t * env,
00173 const axis2_char_t * key);
00174
00182 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00183 axis2_desc_set_parent(
00184 axis2_desc_t * desc,
00185 const axutil_env_t * env,
00186 axis2_desc_t * parent);
00187
00194 AXIS2_EXTERN axis2_desc_t *AXIS2_CALL
00195 axis2_desc_get_parent(
00196 const axis2_desc_t * desc,
00197 const axutil_env_t * env);
00198
00206 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00207 axis2_desc_set_policy_include(
00208 axis2_desc_t * desc,
00209 const axutil_env_t * env,
00210 struct axis2_policy_include *policy_include);
00211
00219 AXIS2_EXTERN struct axis2_policy_include *AXIS2_CALL
00220 axis2_desc_get_policy_include(
00221 axis2_desc_t * desc,
00222 const axutil_env_t * env);
00223
00225 #ifdef __cplusplus
00226 }
00227 #endif
00228 #endif