00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef WODEN_SOAP_BINDING_MSG_REF_EXTS_H
00018 #define WODEN_SOAP_BINDING_MSG_REF_EXTS_H
00019
00035 #include <woden.h>
00036 #include <woden_component_exts.h>
00037 #include <axis2_array_list.h>
00038
00044 typedef union woden_soap_binding_msg_ref_exts_base woden_soap_binding_msg_ref_exts_base_t;
00045 typedef struct woden_soap_binding_msg_ref_exts woden_soap_binding_msg_ref_exts_t;
00046 typedef struct woden_soap_binding_msg_ref_exts_ops woden_soap_binding_msg_ref_exts_ops_t;
00047
00048
00049 #ifdef __cplusplus
00050 extern "C"
00051 {
00052 #endif
00053
00054 struct woden_soap_binding_msg_ref_exts_ops
00055 {
00060 axis2_status_t (AXIS2_CALL *
00061 free) (void *soap_binding_msg_ref_exts,
00062 const axis2_env_t *env);
00063
00064 axis2_hash_t *(AXIS2_CALL *
00065 super_objs) (void *soap_binding_msg_ref_exts,
00066 const axis2_env_t *env);
00067
00068 woden_obj_types_t (AXIS2_CALL *
00069 type) (void *soap_binding_msg_ref_exts,
00070 const axis2_env_t *env);
00074 struct woden_component_exts *(AXIS2_CALL *
00075 get_base_impl) (
00076 void *soap_binding_msg_ref_exts,
00077 const axis2_env_t *env);
00078
00079 axis2_array_list_t *(AXIS2_CALL *
00080 get_soap_modules) (
00081 void *binding_msg_ref_exts,
00082 const axis2_env_t *env);
00083
00084 axis2_array_list_t *(AXIS2_CALL *
00085 get_soap_headers) (
00086 void *binding_msg_ref_exts,
00087 const axis2_env_t *env);
00088
00089
00090 };
00091
00092 struct woden_soap_binding_msg_ref_exts
00093 {
00094 woden_component_exts_t component_exts;
00095 woden_soap_binding_msg_ref_exts_ops_t *ops;
00096 };
00097
00098 AXIS2_EXTERN woden_soap_binding_msg_ref_exts_t * AXIS2_CALL
00099 woden_soap_binding_msg_ref_exts_create(
00100 const axis2_env_t *env);
00101
00102
00103
00104 AXIS2_EXTERN woden_soap_binding_msg_ref_exts_t * AXIS2_CALL
00105 woden_soap_binding_msg_ref_exts_to_component_exts(
00106 void *soap_binding_msg_ref_exts,
00107 const axis2_env_t *env);
00108
00109 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00110 woden_soap_binding_msg_ref_exts_resolve_methods(
00111 woden_soap_binding_msg_ref_exts_t *soap_binding_msg_ref_exts,
00112 const axis2_env_t *env,
00113 woden_soap_binding_msg_ref_exts_t *soap_binding_msg_ref_exts_impl,
00114 axis2_hash_t *methods);
00115
00116
00117 #define WODEN_SOAP_BINDING_MSG_REF_EXTS_FREE(soap_binding_msg_ref_exts, env) \
00118 (((woden_soap_binding_msg_ref_exts_t *) soap_binding_msg_ref_exts)->ops->free(soap_binding_msg_ref_exts, env))
00119
00120 #define WODEN_SOAP_BINDING_MSG_REF_EXTS_SUPER_OBJS(soap_binding_msg_ref_exts, env) \
00121 (((woden_soap_binding_msg_ref_exts_t *) soap_binding_msg_ref_exts)->ops->super_objs(soap_binding_msg_ref_exts, env))
00122
00123 #define WODEN_SOAP_BINDING_MSG_REF_EXTS_TYPE(soap_binding_msg_ref_exts, env) \
00124 (((woden_soap_binding_msg_ref_exts_t *) soap_binding_msg_ref_exts)->ops->type(soap_binding_msg_ref_exts, env))
00125
00126 #define WODEN_SOAP_BINDING_MSG_REF_EXTS_GET_BASE_IMPL(soap_binding_msg_ref_exts, env) \
00127 (((woden_soap_binding_msg_ref_exts_t *) soap_binding_msg_ref_exts)->ops->get_base_impl(soap_binding_msg_ref_exts, env))
00128
00129 #define WODEN_SOAP_BINDING_MSG_REF_EXTS_GET_SOAP_MODULES(soap_binding_msg_ref_exts, env) \
00130 (((woden_soap_binding_msg_ref_exts_t *) soap_binding_msg_ref_exts)->ops->\
00131 get_soap_modules (soap_binding_msg_ref_exts, env))
00132
00133 #define WODEN_SOAP_BINDING_MSG_REF_EXTS_GET_SOAP_HEADERS(soap_binding_msg_ref_exts, env) \
00134 (((woden_soap_binding_msg_ref_exts_t *) soap_binding_msg_ref_exts)->ops->\
00135 get_soap_headers (soap_binding_msg_ref_exts, env))
00136
00138 #ifdef __cplusplus
00139 }
00140 #endif
00141 #endif