00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef AXIOM_SOAP_HEADER_H
00020 #define AXIOM_SOAP_HEADER_H
00021
00026 #include <axutil_env.h>
00027 #include <axiom_node.h>
00028 #include <axiom_element.h>
00029 #include <axutil_array_list.h>
00030 #include <axiom_children_qname_iterator.h>
00031 #include <axiom_children_with_specific_attribute_iterator.h>
00032 #include <axutil_hash.h>
00033 #include <axiom_soap_envelope.h>
00034
00035 #ifdef __cplusplus
00036 extern "C"
00037 {
00038 #endif
00039
00040 typedef struct axiom_soap_header axiom_soap_header_t;
00041
00042 struct axiom_soap_header_block;
00043 struct axiom_soap_builder;
00044
00051 AXIS2_EXTERN axiom_soap_header_t *AXIS2_CALL
00052
00053 axiom_soap_header_create_with_parent(
00054 const axutil_env_t * env,
00055 struct axiom_soap_envelope *envelope);
00056
00064 AXIS2_EXTERN void AXIS2_CALL
00065 axiom_soap_header_free(
00066 axiom_soap_header_t * header,
00067 const axutil_env_t * env);
00068
00077 AXIS2_EXTERN struct axiom_soap_header_block *AXIS2_CALL
00078
00079 axiom_soap_header_add_header_block(
00080 axiom_soap_header_t * header,
00081 const axutil_env_t * env,
00082 const axis2_char_t * localname,
00083 axiom_namespace_t * ns);
00084
00095 AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
00096
00097 axiom_soap_header_examine_header_blocks(
00098 axiom_soap_header_t * header,
00099 const axutil_env_t * env,
00100 axis2_char_t * param_role);
00101
00111 AXIS2_EXTERN axutil_array_list_t *AXIS2_CALL
00112
00113 axiom_soap_header_get_header_blocks_with_namespace_uri(
00114 axiom_soap_header_t * header,
00115 const axutil_env_t * env,
00116 const axis2_char_t * ns_uri);
00117
00125 AXIS2_EXTERN axiom_children_qname_iterator_t *AXIS2_CALL
00126
00127 axiom_soap_header_examine_all_header_blocks(
00128 axiom_soap_header_t * header,
00129 const axutil_env_t * env);
00130
00140 AXIS2_EXTERN axiom_children_with_specific_attribute_iterator_t
00141 *AXIS2_CALL
00142 axiom_soap_header_extract_header_blocks(
00143 axiom_soap_header_t * header,
00144 const axutil_env_t * env,
00145 axis2_char_t * role);
00146
00153 AXIS2_EXTERN axiom_node_t *AXIS2_CALL
00154 axiom_soap_header_get_base_node(
00155 axiom_soap_header_t * header,
00156 const axutil_env_t * env);
00157
00164 AXIS2_EXTERN int AXIS2_CALL
00165 axiom_soap_header_get_soap_version(
00166 axiom_soap_header_t * header,
00167 const axutil_env_t * env);
00168
00173 AXIS2_EXTERN axutil_hash_t *AXIS2_CALL
00174
00175 axiom_soap_header_get_all_header_blocks(
00176 axiom_soap_header_t * header,
00177 const axutil_env_t * env);
00178
00184 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00185
00186 axiom_soap_header_remove_header_block(
00187 axiom_soap_header_t * header,
00188 const axutil_env_t * env,
00189 axutil_qname_t * qname);
00190
00192 #ifdef __cplusplus
00193 }
00194 #endif
00195 #endif