00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef WODEN_WSDL10_BINDING_MSG_REF_H
00019 #define WODEN_WSDL10_BINDING_MSG_REF_H
00020
00030 #include <woden.h>
00031 #include <woden_wsdl10_binding_msg_ref_element.h>
00032 #include <woden_nested_configurable.h>
00033 #include <axis2_qname.h>
00034
00040 typedef union woden_wsdl10_binding_msg_ref_base woden_wsdl10_binding_msg_ref_base_t;
00041 typedef struct woden_wsdl10_binding_msg_ref woden_wsdl10_binding_msg_ref_t;
00042 typedef struct woden_wsdl10_binding_msg_ref_ops woden_wsdl10_binding_msg_ref_ops_t;
00043
00044
00045 #ifdef __cplusplus
00046 extern "C"
00047 {
00048 #endif
00049
00050 struct woden_wsdl10_binding_msg_ref_ops
00051 {
00056 axis2_status_t (AXIS2_CALL *
00057 free) (void *binding_msg_ref,
00058 const axis2_env_t *env);
00059
00060 axis2_status_t (AXIS2_CALL *
00061 to_binding_msg_ref_free) (void *binding_msg_ref,
00062 const axis2_env_t *env);
00063
00064 axis2_hash_t *(AXIS2_CALL *
00065 super_objs) (void *binding_msg_ref,
00066 const axis2_env_t *env);
00067
00068 woden_obj_types_t (AXIS2_CALL *
00069 type) (void *binding_msg_ref,
00070 const axis2_env_t *env);
00074 struct woden_nested_configurable *(AXIS2_CALL *
00075 get_base_impl) (
00076 void *binding_msg_ref,
00077 const axis2_env_t *env);
00078
00079 void *(AXIS2_CALL *
00080 get_interface_msg_ref) (
00081 void *binding_msg_ref,
00082 const axis2_env_t *env);
00083
00084 void *(AXIS2_CALL *
00085 to_element) (
00086 void *binding_msg_ref,
00087 const axis2_env_t *env);
00088
00089 axis2_status_t (AXIS2_CALL *
00090 set_interface_msg_ref_element) (
00091 void *binding_msg_ref,
00092 const axis2_env_t *env,
00093 void *int_msg_ref);
00094
00095 };
00096
00097 union woden_wsdl10_binding_msg_ref_base
00098 {
00099 woden_nested_configurable_t nested_configurable;
00100 woden_wsdl10_binding_msg_ref_element_t binding_msg_ref_element;
00101 };
00102
00103 struct woden_wsdl10_binding_msg_ref
00104 {
00105 woden_wsdl10_binding_msg_ref_base_t base;
00106 woden_wsdl10_binding_msg_ref_ops_t *ops;
00107 };
00108
00109 AXIS2_EXTERN woden_wsdl10_binding_msg_ref_t * AXIS2_CALL
00110 woden_wsdl10_binding_msg_ref_create(
00111 const axis2_env_t *env);
00112
00113
00114
00115 AXIS2_EXTERN woden_wsdl10_binding_msg_ref_t * AXIS2_CALL
00116 woden_wsdl10_binding_msg_ref_to_binding_msg_ref_element(
00117 void *binding_msg_ref,
00118 const axis2_env_t *env);
00119
00120 AXIS2_EXTERN woden_wsdl10_binding_msg_ref_t * AXIS2_CALL
00121 woden_wsdl10_binding_msg_ref_to_nested_configurable(
00122 void *binding_msg_ref,
00123 const axis2_env_t *env);
00124
00125 AXIS2_EXTERN woden_wsdl10_binding_msg_ref_t * AXIS2_CALL
00126 woden_wsdl10_binding_msg_ref_to_configurable(
00127 void *binding_msg_ref,
00128 const axis2_env_t *env);
00129
00130 AXIS2_EXTERN woden_wsdl10_binding_msg_ref_t * AXIS2_CALL
00131 woden_wsdl10_binding_msg_ref_to_wsdl_obj(
00132 void *binding_msg_ref,
00133 const axis2_env_t *env);
00134
00135 AXIS2_EXTERN woden_wsdl10_binding_msg_ref_t * AXIS2_CALL
00136 woden_wsdl10_binding_msg_ref_to_nested_element(
00137 void *binding_msg_ref,
00138 const axis2_env_t *env);
00139
00140 AXIS2_EXTERN woden_wsdl10_binding_msg_ref_t * AXIS2_CALL
00141 woden_wsdl10_binding_msg_ref_to_wsdl_component(
00142 void *binding_msg_ref,
00143 const axis2_env_t *env);
00144
00145 AXIS2_EXTERN woden_wsdl10_binding_msg_ref_t * AXIS2_CALL
00146 woden_wsdl10_binding_msg_ref_to_configurable_element(
00147 void *binding_msg_ref,
00148 const axis2_env_t *env);
00149
00150 AXIS2_EXTERN woden_wsdl10_binding_msg_ref_t * AXIS2_CALL
00151 woden_wsdl10_binding_msg_ref_to_documentable_element(
00152 void *binding_msg_ref,
00153 const axis2_env_t *env);
00154
00155 AXIS2_EXTERN woden_wsdl10_binding_msg_ref_t * AXIS2_CALL
00156 woden_wsdl10_binding_msg_ref_to_documentable(
00157 void *binding_msg_ref,
00158 const axis2_env_t *env);
00159
00160 AXIS2_EXTERN woden_wsdl10_binding_msg_ref_t * AXIS2_CALL
00161 woden_wsdl10_binding_msg_ref_to_attr_extensible(
00162 void *binding_msg_ref,
00163 const axis2_env_t *env);
00164
00165 AXIS2_EXTERN woden_wsdl10_binding_msg_ref_t * AXIS2_CALL
00166 woden_wsdl10_binding_msg_ref_to_element_extensible(
00167 void *binding_msg_ref,
00168 const axis2_env_t *env);
00169
00170 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00171 woden_wsdl10_binding_msg_ref_resolve_methods(
00172 woden_wsdl10_binding_msg_ref_t *binding_msg_ref,
00173 const axis2_env_t *env,
00174 woden_wsdl10_binding_msg_ref_t *binding_msg_ref_impl,
00175 axis2_hash_t *methods);
00176
00177
00178 #define WODEN_WSDL10_BINDING_MSG_REF_FREE(binding_msg_ref, env) \
00179 (((woden_wsdl10_binding_msg_ref_t *) binding_msg_ref)->ops->free(binding_msg_ref, env))
00180
00181 #define WODEN_WSDL10_BINDING_MSG_REF_TO_BINDING_MSG_REF_FREE(binding_msg_ref, env) \
00182 (((woden_wsdl10_binding_msg_ref_t *) binding_msg_ref)->ops->to_binding_msg_ref_free(binding_msg_ref, env))
00183
00184 #define WODEN_WSDL10_BINDING_MSG_REF_SUPER_OBJS(binding_msg_ref, env) \
00185 (((woden_wsdl10_binding_msg_ref_t *) binding_msg_ref)->ops->super_objs(binding_msg_ref, env))
00186
00187 #define WODEN_WSDL10_BINDING_MSG_REF_TYPE(binding_msg_ref, env) \
00188 (((woden_wsdl10_binding_msg_ref_t *) binding_msg_ref)->ops->type(binding_msg_ref, env))
00189
00190 #define WODEN_WSDL10_BINDING_MSG_REF_GET_BASE_IMPL(binding_msg_ref, env) \
00191 (((woden_wsdl10_binding_msg_ref_t *) binding_msg_ref)->ops->get_base_impl(binding_msg_ref, env))
00192
00193 #define WODEN_WSDL10_BINDING_MSG_REF_GET_INTERFACE_MSG_REF(binding_msg_ref, env) \
00194 (((woden_wsdl10_binding_msg_ref_t *) binding_msg_ref)->ops->\
00195 get_interface_msg_ref(binding_msg_ref, env))
00196
00197 #define WODEN_WSDL10_BINDING_MSG_REF_TO_ELEMENT(binding_msg_ref, env) \
00198 (((woden_wsdl10_binding_msg_ref_t *) binding_msg_ref)->ops->\
00199 to_element(binding_msg_ref, env))
00200
00201 #define WODEN_WSDL10_BINDING_MSG_REF_SET_INTERFACE_MSG_REF_ELEMENT(binding_msg_ref, env, int_msg_ref) \
00202 (((woden_wsdl10_binding_msg_ref_t *) binding_msg_ref)->ops->\
00203 set_interface_msg_ref_element(binding_msg_ref, env, int_msg_ref))
00204
00206 #ifdef __cplusplus
00207 }
00208 #endif
00209 #endif