00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef AXIOM_SOAP_ENVELOPE_H
00019 #define AXIOM_SOAP_ENVELOPE_H
00020
00026 #include <axutil_env.h>
00027 #include <axiom_node.h>
00028 #include <axiom_element.h>
00029 #include <axiom_namespace.h>
00030 #include <axutil_array_list.h>
00031
00032 #ifdef __cplusplus
00033 extern "C"
00034 {
00035 #endif
00036
00037 typedef struct axiom_soap_envelope axiom_soap_envelope_t;
00038
00039 struct axiom_soap_body;
00040 struct axiom_soap_header;
00041 struct axiom_soap_header_block;
00042 struct axiom_soap_builder;
00043
00055 AXIS2_EXTERN axiom_soap_envelope_t* AXIS2_CALL
00056 axiom_soap_envelope_create(const axutil_env_t *env,
00057 axiom_namespace_t *ns);
00058
00069 AXIS2_EXTERN axiom_soap_envelope_t* AXIS2_CALL
00070 axiom_soap_envelope_create_with_soap_version_prefix(const axutil_env_t *env,
00071 int soap_version,
00072 const axis2_char_t *prefix);
00073
00074 AXIS2_EXTERN axiom_soap_envelope_t* AXIS2_CALL
00075 axiom_soap_envelope_create_default_soap_envelope(const axutil_env_t *env,
00076 int soap_version);
00077
00078 AXIS2_EXTERN axiom_soap_envelope_t* AXIS2_CALL
00079 axiom_soap_envelope_create_default_soap_fault_envelope(const axutil_env_t *env,
00080 const axis2_char_t *code_value,
00081 const axis2_char_t *reason_text,
00082 const int soap_version,
00083 axutil_array_list_t *sub_codes,
00084 axiom_node_t *detail_node);
00085
00092 AXIS2_EXTERN struct axiom_soap_header* AXIS2_CALL
00093 axiom_soap_envelope_get_header(axiom_soap_envelope_t *envelope,
00094 const axutil_env_t *env);
00101 AXIS2_EXTERN struct axiom_soap_body* AXIS2_CALL
00102 axiom_soap_envelope_get_body(axiom_soap_envelope_t *envelope,
00103 const axutil_env_t *env);
00115 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00116 axiom_soap_envelope_serialize(axiom_soap_envelope_t *envelope,
00117 const axutil_env_t *env,
00118 axiom_output_t *om_output,
00119 axis2_bool_t cache);
00120
00130 AXIS2_EXTERN void AXIS2_CALL
00131 axiom_soap_envelope_free(axiom_soap_envelope_t *envelope,
00132 const axutil_env_t *env);
00133
00140 AXIS2_EXTERN axiom_node_t* AXIS2_CALL
00141 axiom_soap_envelope_get_base_node(axiom_soap_envelope_t *envelope,
00142 const axutil_env_t *env);
00143
00144
00150 AXIS2_EXTERN int AXIS2_CALL
00151 axiom_soap_envelope_get_soap_version(axiom_soap_envelope_t *envelope,
00152 const axutil_env_t *env);
00153
00159 AXIS2_EXTERN axiom_namespace_t* AXIS2_CALL
00160 axiom_soap_envelope_get_namespace(axiom_soap_envelope_t *envelope,
00161 const axutil_env_t *env);
00162
00163 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00164 axiom_soap_envelope_set_soap_version(axiom_soap_envelope_t *envelope,
00165 const axutil_env_t *env,
00166 int soap_version);
00167
00168
00171 #ifdef __cplusplus
00172 }
00173 #endif
00174
00175 #endif