axiom_util.h

00001 /*
00002  * Licensed to the Apache Software Foundation (ASF) under one or more
00003  * contributor license agreements.  See the NOTICE file distributed with
00004  * this work for additional information regarding copyright ownership.
00005  * The ASF licenses this file to You under the Apache License, Version 2.0
00006  * (the "License"); you may not use this file except in compliance with
00007  * the License.  You may obtain a copy of the License at
00008  *
00009  *      http://www.apache.org/licenses/LICENSE-2.0
00010  *
00011  * Unless required by applicable law or agreed to in writing, software
00012  * distributed under the License is distributed on an "AS IS" BASIS,
00013  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00014  * See the License for the specific language governing permissions and
00015  * limitations under the License.
00016  */
00017 
00018 #ifndef AXIOM_UTIL_H
00019 #define AXIOM_UTIL_H
00020 
00021 #include <axutil_array_list.h>
00022 #include <axutil_string.h>
00023 #include <axiom.h>
00024 #include <axutil_uri.h>
00025 
00026 #ifdef __cplusplus
00027 extern "C"
00028 {
00029 #endif
00030 
00031     AXIS2_EXTERN axiom_element_t * AXIS2_CALL
00032     axiom_util_get_first_child_element_with_uri(
00033         axiom_node_t *ele_node,
00034         const axutil_env_t *env,
00035         axis2_char_t *uri,
00036         axiom_node_t **child);
00037 
00038     AXIS2_EXTERN axiom_element_t * AXIS2_CALL
00039     axiom_util_get_next_sibling_element_with_uri(
00040         axiom_node_t *ele_node,
00041         const axutil_env_t *env,
00042         axis2_char_t *uri,
00043         axiom_node_t **next_node);
00044 
00045 
00046 
00047     AXIS2_EXTERN axiom_element_t * AXIS2_CALL
00048     axiom_util_get_first_child_element(
00049         axiom_element_t *ele,
00050         const axutil_env_t *env,
00051         axiom_node_t *ele_node,
00052         axiom_node_t **child_node);
00053 
00054     AXIS2_EXTERN axiom_element_t * AXIS2_CALL
00055     axiom_util_get_last_child_element(
00056         axiom_element_t *ele,
00057         const axutil_env_t *env,
00058         axiom_node_t *ele_node,
00059         axiom_node_t **child_node);
00060 
00061     AXIS2_EXTERN axiom_element_t * AXIS2_CALL
00062     axiom_util_get_next_sibling_element(
00063         axiom_element_t *ele,
00064         const axutil_env_t *env,
00065         axiom_node_t *ele_node,
00066         axiom_node_t **next_node);
00067 
00068     AXIS2_EXTERN axiom_element_t * AXIS2_CALL
00069     axiom_util_get_first_child_element_with_localname(
00070         axiom_element_t *ele,
00071         const axutil_env_t  *env,
00072         axiom_node_t *ele_node,
00073         axis2_char_t *localname,
00074         axiom_node_t **child_node);
00075 
00076 
00077     AXIS2_EXTERN axiom_element_t * AXIS2_CALL
00078     axiom_util_get_last_child_element_with_localname(
00079         axiom_element_t *ele,
00080         const axutil_env_t  *env,
00081         axiom_node_t *ele_node,
00082         axis2_char_t *localname,
00083         axiom_node_t **child_node);
00084 
00085     AXIS2_EXTERN axiom_element_t * AXIS2_CALL
00086     axiom_util_get_next_siblng_element_with_localname(
00087         axiom_element_t *ele,
00088         const axutil_env_t  *env,
00089         axiom_node_t *ele_node,
00090         axis2_char_t *localname,
00091         axiom_node_t **next_node);
00092 
00093     AXIS2_EXTERN axiom_element_t * AXIS2_CALL
00094     axiom_util_get_first_child_element_with_uri_localname(
00095         axiom_element_t *ele,
00096         const axutil_env_t  *env,
00097         axiom_node_t *ele_node,
00098         axis2_char_t *localname,
00099         axis2_char_t *uri,
00100         axiom_node_t **child_node);
00101     AXIS2_EXTERN axiom_element_t * AXIS2_CALL
00102     axiom_util_get_last_child_element_with_uri_localname(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 
00109     AXIS2_EXTERN axiom_element_t * AXIS2_CALL
00110     axiom_util_get_next_sibling_element_with_uri_localname(axiom_element_t *ele,
00111             const axutil_env_t  *env,
00112             axiom_node_t *ele_node,
00113             axis2_char_t *localname,
00114             axis2_char_t *uri,
00115             axiom_node_t **next_node);
00116 
00117     AXIS2_EXTERN axiom_element_t * AXIS2_CALL
00118     axiom_util_get_first_child_element_with_localnames(axiom_element_t *ele,
00119             const axutil_env_t  *env,
00120             axiom_node_t *ele_node,
00121             axutil_array_list_t *names,
00122             axiom_node_t **child_node);
00123 
00124 
00125     AXIS2_EXTERN axiom_element_t * AXIS2_CALL
00126     axiom_util_get_last_child_element_with_localnames(axiom_element_t *ele,
00127             const axutil_env_t  *env,
00128             axiom_node_t *ele_node,
00129             axutil_array_list_t *names,
00130             axiom_node_t **child_node);
00131 
00132     AXIS2_EXTERN axiom_element_t * AXIS2_CALL
00133     axiom_util_get_next_siblng_element_with_localnames(axiom_element_t *ele,
00134             const axutil_env_t  *env,
00135             axiom_node_t *ele_node,
00136             axutil_array_list_t *names,
00137             axiom_node_t **next_node);
00138 
00139     AXIS2_EXTERN axiom_element_t * AXIS2_CALL
00140     axiom_util_get_first_child_element_with_localname_attr(axiom_element_t *ele,
00141             const axutil_env_t  *env,
00142             axiom_node_t *ele_node,
00143             axis2_char_t *localname,
00144             axis2_char_t *attr_name,
00145             axis2_char_t *attr_value,
00146             axiom_node_t **child_node);
00147 
00148 
00149     AXIS2_EXTERN axiom_element_t * AXIS2_CALL
00150     axiom_util_get_last_child_element_with_localname_attr(axiom_element_t *ele,
00151             const axutil_env_t  *env,
00152             axiom_node_t *ele_node,
00153             axis2_char_t *localname,
00154             axis2_char_t *attr_name,
00155             axis2_char_t *attr_value,
00156             axiom_node_t **child_node);
00157 
00158     AXIS2_EXTERN axiom_element_t * AXIS2_CALL
00159     axiom_util_get_next_siblng_element_with_localname_attr(axiom_element_t *ele,
00160             const axutil_env_t  *env,
00161             axiom_node_t *ele_node,
00162             axis2_char_t *localname,
00163             axis2_char_t *attr_name,
00164             axis2_char_t *attr_value,
00165             axiom_node_t **next_node);
00166 
00167     AXIS2_EXTERN axis2_char_t * AXIS2_CALL
00168     axiom_util_get_child_text(axiom_node_t *node,
00169             const axutil_env_t *env);
00170 
00171     AXIS2_EXTERN axis2_char_t * AXIS2_CALL
00172     axiom_util_get_localname(axiom_node_t *node,
00173             const axutil_env_t *env);
00174 
00175     AXIS2_EXTERN axis2_char_t * AXIS2_CALL
00176     axiom_util_get_node_namespace_uri(axiom_node_t *om_node,
00177             const axutil_env_t *env);
00178 
00179 
00180     AXIS2_EXTERN axiom_child_element_iterator_t* AXIS2_CALL
00181     axiom_util_get_child_elements(axiom_element_t *om_ele,
00182             const axutil_env_t *env,
00183             axiom_node_t *om_node);
00184 
00185     AXIS2_EXTERN axiom_document_t* AXIS2_CALL
00186     axiom_util_new_document(
00187         const axutil_env_t *env,
00188         const axutil_uri_t *uri);
00189 
00190 #ifdef __cplusplus
00191 }
00192 #endif
00193 #endif /* AXIOM_UTIL_H */

Generated on Thu May 3 12:31:01 2007 for Axis2/C by  doxygen 1.4.6