00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef WODEN_WSDL10_BINDING_OP_H
00019 #define WODEN_WSDL10_BINDING_OP_H
00020
00029 #include <woden.h>
00030 #include <woden_wsdl10_binding_op_element.h>
00031 #include <woden_nested_configurable.h>
00032 #include <axis2_qname.h>
00033
00039 typedef union woden_wsdl10_binding_op_base woden_wsdl10_binding_op_base_t;
00040 typedef struct woden_wsdl10_binding_op woden_wsdl10_binding_op_t;
00041 typedef struct woden_wsdl10_binding_op_ops woden_wsdl10_binding_op_ops_t;
00042
00043
00044 #ifdef __cplusplus
00045 extern "C"
00046 {
00047 #endif
00048
00049 struct woden_wsdl10_binding_op_ops
00050 {
00055 axis2_status_t (AXIS2_CALL *
00056 free) (void *binding_op,
00057 const axis2_env_t *env);
00058
00059 axis2_status_t (AXIS2_CALL *
00060 to_binding_op_free) (void *binding_op,
00061 const axis2_env_t *env);
00062
00063 axis2_hash_t *(AXIS2_CALL *
00064 super_objs) (void *binding_op,
00065 const axis2_env_t *env);
00066
00067 woden_obj_types_t (AXIS2_CALL *
00068 type) (void *binding_op,
00069 const axis2_env_t *env);
00073 struct woden_nested_configurable *(AXIS2_CALL *
00074 get_base_impl) (
00075 void *binding_op,
00076 const axis2_env_t *env);
00077
00078 void *(AXIS2_CALL *
00079 get_interface_op) (
00080 void *binding_op,
00081 const axis2_env_t *env);
00082
00083 axis2_array_list_t *(AXIS2_CALL *
00084 get_binding_msg_refs) (
00085 void *binding_op,
00086 const axis2_env_t *env);
00087
00088 axis2_array_list_t *(AXIS2_CALL *
00089 get_binding_fault_refs) (
00090 void *binding_op,
00091 const axis2_env_t *env);
00092
00093 void *(AXIS2_CALL *
00094 to_element) (
00095 void *binding_op,
00096 const axis2_env_t *env);
00097
00098 axis2_status_t (AXIS2_CALL *
00099 set_interface_op_element) (
00100 void *binding_op,
00101 const axis2_env_t *env,
00102 void *int_op);
00103
00104 };
00105
00106 union woden_wsdl10_binding_op_base
00107 {
00108 woden_nested_configurable_t nested_configurable;
00109 woden_wsdl10_binding_op_element_t binding_op_element;
00110 };
00111
00112 struct woden_wsdl10_binding_op
00113 {
00114 woden_wsdl10_binding_op_base_t base;
00115 woden_wsdl10_binding_op_ops_t *ops;
00116 };
00117
00118 AXIS2_EXTERN woden_wsdl10_binding_op_t * AXIS2_CALL
00119 woden_wsdl10_binding_op_create(
00120 const axis2_env_t *env);
00121
00122
00123
00124 AXIS2_EXTERN woden_wsdl10_binding_op_t * AXIS2_CALL
00125 woden_wsdl10_binding_op_to_binding_op_element(
00126 void *binding_op,
00127 const axis2_env_t *env);
00128
00129 AXIS2_EXTERN woden_wsdl10_binding_op_t * AXIS2_CALL
00130 woden_wsdl10_binding_op_to_nested_configurable(
00131 void *binding_op,
00132 const axis2_env_t *env);
00133
00134 AXIS2_EXTERN woden_wsdl10_binding_op_t * AXIS2_CALL
00135 woden_wsdl10_binding_op_to_configurable(
00136 void *binding_op,
00137 const axis2_env_t *env);
00138
00139 AXIS2_EXTERN woden_wsdl10_binding_op_t * AXIS2_CALL
00140 woden_wsdl10_binding_op_to_wsdl_obj(
00141 void *binding_op,
00142 const axis2_env_t *env);
00143
00144 AXIS2_EXTERN woden_wsdl10_binding_op_t * AXIS2_CALL
00145 woden_wsdl10_binding_op_to_nested_element(
00146 void *binding_op,
00147 const axis2_env_t *env);
00148
00149 AXIS2_EXTERN woden_wsdl10_binding_op_t * AXIS2_CALL
00150 woden_wsdl10_binding_op_to_wsdl_component(
00151 void *binding_op,
00152 const axis2_env_t *env);
00153
00154 AXIS2_EXTERN woden_wsdl10_binding_op_t * AXIS2_CALL
00155 woden_wsdl10_binding_op_to_configurable_element(
00156 void *binding_op,
00157 const axis2_env_t *env);
00158
00159 AXIS2_EXTERN woden_wsdl10_binding_op_t * AXIS2_CALL
00160 woden_wsdl10_binding_op_to_documentable_element(
00161 void *binding_op,
00162 const axis2_env_t *env);
00163
00164 AXIS2_EXTERN woden_wsdl10_binding_op_t * AXIS2_CALL
00165 woden_wsdl10_binding_op_to_documentable(
00166 void *binding_op,
00167 const axis2_env_t *env);
00168
00169 AXIS2_EXTERN woden_wsdl10_binding_op_t * AXIS2_CALL
00170 woden_wsdl10_binding_op_to_attr_extensible(
00171 void *binding_op,
00172 const axis2_env_t *env);
00173
00174 AXIS2_EXTERN woden_wsdl10_binding_op_t * AXIS2_CALL
00175 woden_wsdl10_binding_op_to_element_extensible(
00176 void *binding_op,
00177 const axis2_env_t *env);
00178
00179
00180 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00181 woden_wsdl10_binding_op_resolve_methods(
00182 woden_wsdl10_binding_op_t *binding_op,
00183 const axis2_env_t *env,
00184 woden_wsdl10_binding_op_t *binding_op_impl,
00185 axis2_hash_t *methods);
00186
00187
00188 #define WODEN_WSDL10_BINDING_OP_FREE(binding_op, env) \
00189 (((woden_wsdl10_binding_op_t *) binding_op)->ops->free(binding_op, env))
00190
00191 #define WODEN_WSDL10_BINDING_OP_TO_BINDING_OP_FREE(binding_op, env) \
00192 (((woden_wsdl10_binding_op_t *) binding_op)->ops->to_binding_op_free(binding_op, env))
00193
00194 #define WODEN_WSDL10_BINDING_OP_SUPER_OBJS(binding_op, env) \
00195 (((woden_wsdl10_binding_op_t *) binding_op)->ops->super_objs(binding_op, env))
00196
00197 #define WODEN_WSDL10_BINDING_OP_TYPE(binding_op, env) \
00198 (((woden_wsdl10_binding_op_t *) binding_op)->ops->type(binding_op, env))
00199
00200 #define WODEN_WSDL10_BINDING_OP_GET_BASE_IMPL(binding_op, env) \
00201 (((woden_wsdl10_binding_op_t *) binding_op)->ops->get_base_impl(binding_op, env))
00202
00203 #define WODEN_WSDL10_BINDING_OP_GET_INTERFACE_OP(binding_op, env) \
00204 (((woden_wsdl10_binding_op_t *) binding_op)->ops->\
00205 get_interface_op(binding_op, env))
00206
00207 #define WODEN_WSDL10_BINDING_OP_GET_BINDING_MSG_REFS(binding_op, env) \
00208 (((woden_wsdl10_binding_op_t *) binding_op)->ops->\
00209 get_binding_msg_refs(binding_op, env))
00210
00211 #define WODEN_WSDL10_BINDING_OP_GET_BINDING_FAULT_REFS(binding_op, env) \
00212 (((woden_wsdl10_binding_op_t *) binding_op)->ops->\
00213 get_binding_fault_refs(binding_op, env))
00214
00215 #define WODEN_WSDL10_BINDING_OP_TO_ELEMENT(binding_op, env) \
00216 (((woden_wsdl10_binding_op_t *) binding_op)->ops->\
00217 to_element(binding_op, env))
00218
00219 #define WODEN_WSDL10_BINDING_OP_SET_INTERFACE_OP_ELEMENT(binding_op, env, int_op) \
00220 (((woden_wsdl10_binding_op_t *) binding_op)->ops->\
00221 set_interface_op_element(binding_op, env, int_op))
00222
00224 #ifdef __cplusplus
00225 }
00226 #endif
00227 #endif