00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef AXIS2_WSDL_EXT_SOAP_HEADER_H
00018 #define AXIS2_WSDL_EXT_SOAP_HEADER_H
00019
00025 #include <axis2_const.h>
00026 #include <axis2_error.h>
00027 #include <axis2_defines.h>
00028 #include <axis2_env.h>
00029 #include <axis2_allocator.h>
00030 #include <axis2_wsdl_component.h>
00031
00032 #ifdef __cplusplus
00033 extern "C"
00034 {
00035 #endif
00036
00037 struct axis2_wsdl_component;
00038 typedef struct axis2_wsdl_ext_soap_header axis2_wsdl_ext_soap_header_t;
00039 typedef struct axis2_wsdl_ext_soap_header_ops axis2_wsdl_ext_soap_header_ops_t;
00040
00050 struct axis2_wsdl_ext_soap_header_ops
00051 {
00055 axis2_status_t (AXIS2_CALL *
00056 free)(axis2_wsdl_ext_soap_header_t *ext_soap_header,
00057 const axis2_env_t *env);
00058
00059 axis2_char_t *(AXIS2_CALL *
00060 get_part) (axis2_wsdl_ext_soap_header_t *ext_soap_header,
00061 const axis2_env_t *env);
00062
00063 axis2_status_t (AXIS2_CALL *
00064 set_part) (axis2_wsdl_ext_soap_header_t *ext_soap_header,
00065 const axis2_env_t *env,
00066 axis2_char_t *part);
00067
00068 axis2_qname_t *(AXIS2_CALL *
00069 get_msg_qname) (axis2_wsdl_ext_soap_header_t *ext_soap_header,
00070 const axis2_env_t *env);
00071
00072 axis2_status_t (AXIS2_CALL *
00073 set_msg_qname) (axis2_wsdl_ext_soap_header_t *ext_soap_header,
00074 const axis2_env_t *env,
00075 axis2_qname_t *msg_qname);
00076
00077 axis2_qname_t *(AXIS2_CALL *
00078 get_qelement) (axis2_wsdl_ext_soap_header_t *ext_soap_header,
00079 const axis2_env_t *env);
00080
00081 axis2_status_t (AXIS2_CALL *
00082 set_qelement) (axis2_wsdl_ext_soap_header_t *ext_soap_header,
00083 const axis2_env_t *env,
00084 axis2_qname_t *qelement);
00085
00086 };
00087
00092 struct axis2_wsdl_ext_soap_header
00093 {
00094 axis2_wsdl_ext_soap_header_ops_t *ops;
00095 struct axis2_wsdl_ext_soap_body *ext_soap_body;
00096 };
00097
00102 AXIS2_EXTERN axis2_wsdl_ext_soap_header_t * AXIS2_CALL
00103 axis2_wsdl_ext_soap_header_create (const axis2_env_t *env,
00104 axis2_qname_t *qtype);
00105
00106
00107
00108 #define AXIS2_WSDL_EXT_SOAP_HEADER_FREE(ext_soap_header, env) \
00109 ((ext_soap_header)->ops->free (ext_soap_header, env))
00110
00111 #define AXIS2_WSDL_EXT_SOAP_HEADER_GET_PART(ext_soap_header, env) \
00112 ((ext_soap_header)->ops->get_part (ext_soap_header, env))
00113
00114 #define AXIS2_WSDL_EXT_SOAP_HEADER_SET_PART(ext_soap_header, env, part) \
00115 ((ext_soap_header)->ops->set_part (ext_soap_header, env, part))
00116
00117 #define AXIS2_WSDL_EXT_SOAP_HEADER_GET_MSG_QNAME(ext_soap_header, env) \
00118 ((ext_soap_header)->ops->get_msg_qname (ext_soap_header, env))
00119
00120 #define AXIS2_WSDL_EXT_SOAP_HEADER_SET_MSG_QNAME(ext_soap_header, env, msg_qname) \
00121 ((ext_soap_header)->ops->set_msg_qname (ext_soap_header, env, msg_qname))
00122
00123 #define AXIS2_WSDL_EXT_SOAP_HEADER_GET_QELEMENT(ext_soap_header, env) \
00124 ((ext_soap_header)->ops->get_qelement (ext_soap_header, env))
00125
00126 #define AXIS2_WSDL_EXT_SOAP_HEADER_SET_QELEMENT(ext_soap_header, env, qelement) \
00127 ((ext_soap_header)->ops->set_qelement (ext_soap_header, env, qelement))
00128
00129
00130
00133 #ifdef __cplusplus
00134 }
00135 #endif
00136 #endif