axiom_util.h

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

Generated on Tue Oct 3 18:21:09 2006 for Axis2/C by  doxygen 1.4.7