00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef AXIOM_UTIL_H
00020 #define AXIOM_UTIL_H
00021
00022 #include <axutil_array_list.h>
00023 #include <axutil_string.h>
00024 #include <axiom.h>
00025 #include <axutil_uri.h>
00026
00027 #ifdef __cplusplus
00028 extern "C"
00029 {
00030 #endif
00031
00032 AXIS2_EXTERN axiom_element_t *AXIS2_CALL
00033
00034 axiom_util_get_first_child_element_with_uri(
00035 axiom_node_t * ele_node,
00036 const axutil_env_t * env,
00037 axis2_char_t * uri,
00038 axiom_node_t ** child);
00039
00040 AXIS2_EXTERN axiom_element_t *AXIS2_CALL
00041
00042 axiom_util_get_next_sibling_element_with_uri(
00043 axiom_node_t * ele_node,
00044 const axutil_env_t * env,
00045 axis2_char_t * uri,
00046 axiom_node_t ** next_node);
00047
00048 AXIS2_EXTERN axiom_element_t *AXIS2_CALL
00049
00050 axiom_util_get_first_child_element(
00051 axiom_element_t * ele,
00052 const axutil_env_t * env,
00053 axiom_node_t * ele_node,
00054 axiom_node_t ** child_node);
00055
00056 AXIS2_EXTERN axiom_element_t *AXIS2_CALL
00057
00058 axiom_util_get_last_child_element(
00059 axiom_element_t * ele,
00060 const axutil_env_t * env,
00061 axiom_node_t * ele_node,
00062 axiom_node_t ** child_node);
00063
00064 AXIS2_EXTERN axiom_element_t *AXIS2_CALL
00065
00066 axiom_util_get_next_sibling_element(
00067 axiom_element_t * ele,
00068 const axutil_env_t * env,
00069 axiom_node_t * ele_node,
00070 axiom_node_t ** next_node);
00071
00072 AXIS2_EXTERN axiom_element_t *AXIS2_CALL
00073
00074 axiom_util_get_first_child_element_with_localname(
00075 axiom_element_t * ele,
00076 const axutil_env_t * env,
00077 axiom_node_t * ele_node,
00078 axis2_char_t * localname,
00079 axiom_node_t ** child_node);
00080
00081 AXIS2_EXTERN axiom_element_t *AXIS2_CALL
00082
00083 axiom_util_get_last_child_element_with_localname(
00084 axiom_element_t * ele,
00085 const axutil_env_t * env,
00086 axiom_node_t * ele_node,
00087 axis2_char_t * localname,
00088 axiom_node_t ** child_node);
00089
00090 AXIS2_EXTERN axiom_element_t *AXIS2_CALL
00091
00092 axiom_util_get_next_siblng_element_with_localname(
00093 axiom_element_t * ele,
00094 const axutil_env_t * env,
00095 axiom_node_t * ele_node,
00096 axis2_char_t * localname,
00097 axiom_node_t ** next_node);
00098
00099 AXIS2_EXTERN axiom_element_t *AXIS2_CALL
00100
00101 axiom_util_get_first_child_element_with_uri_localname(
00102 axiom_element_t * ele,
00103 const axutil_env_t * env,
00104 axiom_node_t * ele_node,
00105 axis2_char_t * localname,
00106 axis2_char_t * uri,
00107 axiom_node_t ** child_node);
00108 AXIS2_EXTERN axiom_element_t *AXIS2_CALL
00109
00110 axiom_util_get_last_child_element_with_uri_localname(
00111 axiom_element_t * ele,
00112 const axutil_env_t * env,
00113 axiom_node_t * ele_node,
00114 axis2_char_t * localname,
00115 axis2_char_t * uri,
00116 axiom_node_t ** child_node);
00117
00118 AXIS2_EXTERN axiom_element_t *AXIS2_CALL
00119
00120 axiom_util_get_next_sibling_element_with_uri_localname(
00121 axiom_element_t * ele,
00122 const axutil_env_t * env,
00123 axiom_node_t * ele_node,
00124 axis2_char_t * localname,
00125 axis2_char_t * uri,
00126 axiom_node_t ** next_node);
00127
00128 AXIS2_EXTERN axiom_element_t *AXIS2_CALL
00129
00130 axiom_util_get_first_child_element_with_localnames(
00131 axiom_element_t * ele,
00132 const axutil_env_t * env,
00133 axiom_node_t * ele_node,
00134 axutil_array_list_t * names,
00135 axiom_node_t ** child_node);
00136
00137 AXIS2_EXTERN axiom_element_t *AXIS2_CALL
00138
00139 axiom_util_get_last_child_element_with_localnames(
00140 axiom_element_t * ele,
00141 const axutil_env_t * env,
00142 axiom_node_t * ele_node,
00143 axutil_array_list_t * names,
00144 axiom_node_t ** child_node);
00145
00146 AXIS2_EXTERN axiom_element_t *AXIS2_CALL
00147
00148 axiom_util_get_next_siblng_element_with_localnames(
00149 axiom_element_t * ele,
00150 const axutil_env_t * env,
00151 axiom_node_t * ele_node,
00152 axutil_array_list_t * names,
00153 axiom_node_t ** next_node);
00154
00155 AXIS2_EXTERN axiom_element_t *AXIS2_CALL
00156
00157 axiom_util_get_first_child_element_with_localname_attr(
00158 axiom_element_t * ele,
00159 const axutil_env_t * env,
00160 axiom_node_t * ele_node,
00161 axis2_char_t * localname,
00162 axis2_char_t * attr_name,
00163 axis2_char_t * attr_value,
00164 axiom_node_t ** child_node);
00165
00166 AXIS2_EXTERN axiom_element_t *AXIS2_CALL
00167
00168 axiom_util_get_last_child_element_with_localname_attr(
00169 axiom_element_t * ele,
00170 const axutil_env_t * env,
00171 axiom_node_t * ele_node,
00172 axis2_char_t * localname,
00173 axis2_char_t * attr_name,
00174 axis2_char_t * attr_value,
00175 axiom_node_t ** child_node);
00176
00177 AXIS2_EXTERN axiom_element_t *AXIS2_CALL
00178
00179 axiom_util_get_next_siblng_element_with_localname_attr(
00180 axiom_element_t * ele,
00181 const axutil_env_t * env,
00182 axiom_node_t * ele_node,
00183 axis2_char_t * localname,
00184 axis2_char_t * attr_name,
00185 axis2_char_t * attr_value,
00186 axiom_node_t ** next_node);
00187
00188 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00189 axiom_util_get_child_text(
00190 axiom_node_t * node,
00191 const axutil_env_t * env);
00192
00193 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00194 axiom_util_get_localname(
00195 axiom_node_t * node,
00196 const axutil_env_t * env);
00197
00198 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00199 axiom_util_get_node_namespace_uri(
00200 axiom_node_t * om_node,
00201 const axutil_env_t * env);
00202
00203 AXIS2_EXTERN axiom_child_element_iterator_t *AXIS2_CALL
00204
00205 axiom_util_get_child_elements(
00206 axiom_element_t * om_ele,
00207 const axutil_env_t * env,
00208 axiom_node_t * om_node);
00209
00210 AXIS2_EXTERN axiom_document_t *AXIS2_CALL
00211 axiom_util_new_document(
00212 const axutil_env_t * env,
00213 const axutil_uri_t * uri);
00214
00215 #ifdef __cplusplus
00216 }
00217 #endif
00218 #endif