00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef AXIS2_DESC_H
00019 #define AXIS2_DESC_H
00020
00029 #include <axutil_param_container.h>
00030 #include <axutil_hash.h>
00031 #include <axis2_description.h>
00032
00033 #ifdef __cplusplus
00034 extern "C"
00035 {
00036 #endif
00037
00039 typedef struct axis2_desc axis2_desc_t;
00040
00041 struct axis2_policy_include;
00042
00048 AXIS2_EXTERN axis2_desc_t *AXIS2_CALL
00049 axis2_desc_create (const axutil_env_t *env);
00050
00057 AXIS2_EXTERN void AXIS2_CALL
00058 axis2_desc_free(axis2_desc_t *desc,
00059 const axutil_env_t *env);
00060
00068 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00069 axis2_desc_add_param(axis2_desc_t *desc,
00070 const axutil_env_t *env,
00071 axutil_param_t *param);
00072
00080 AXIS2_EXTERN axutil_param_t *AXIS2_CALL
00081 axis2_desc_get_param(const axis2_desc_t *desc,
00082 const axutil_env_t *env,
00083 const axis2_char_t *param_name);
00084
00091 AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00092 axis2_desc_get_all_params(const axis2_desc_t *desc,
00093 const axutil_env_t *env);
00094
00102 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00103 axis2_desc_is_param_locked(const axis2_desc_t *desc,
00104 const axutil_env_t *env,
00105 const axis2_char_t *param_name);
00106
00118 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00119 axis2_desc_add_child(const axis2_desc_t *desc,
00120 const axutil_env_t *env,
00121 const axis2_char_t *key,
00122 const void *child);
00123
00130 AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
00131 axis2_desc_get_all_children(const axis2_desc_t *desc,
00132 const axutil_env_t *env);
00133
00142 AXIS2_EXTERN void *AXIS2_CALL
00143 axis2_desc_get_child(const axis2_desc_t *desc,
00144 const axutil_env_t *env,
00145 const axis2_char_t *key);
00146
00154 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00155 axis2_desc_remove_child(const axis2_desc_t *desc,
00156 const axutil_env_t *env,
00157 const axis2_char_t *key);
00158
00166 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00167 axis2_desc_set_parent(axis2_desc_t *desc,
00168 const axutil_env_t *env,
00169 axis2_desc_t *parent);
00170
00177 AXIS2_EXTERN axis2_desc_t *AXIS2_CALL
00178 axis2_desc_get_parent(const axis2_desc_t *desc,
00179 const axutil_env_t *env);
00180
00181 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00182 axis2_desc_set_policy_include(axis2_desc_t *desc,
00183 const axutil_env_t *env,
00184 struct axis2_policy_include *policy_include);
00185
00186 AXIS2_EXTERN struct axis2_policy_include *AXIS2_CALL
00187 axis2_desc_get_policy_include(axis2_desc_t *desc,
00188 const axutil_env_t *env);
00189
00191 #ifdef __cplusplus
00192 }
00193 #endif
00194 #endif