00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef WODEN_WSDL10_INTERFACE_MSG_REF_H
00019 #define WODEN_WSDL10_INTERFACE_MSG_REF_H
00020
00027 #include <woden.h>
00028 #include <woden_wsdl10_interface_msg_ref_element.h>
00029 #include <woden_nested_configurable.h>
00030 #include <axis2_qname.h>
00031
00037 typedef union woden_wsdl10_interface_msg_ref_base woden_wsdl10_interface_msg_ref_base_t;
00038 typedef struct woden_wsdl10_interface_msg_ref woden_wsdl10_interface_msg_ref_t;
00039 typedef struct woden_wsdl10_interface_msg_ref_ops woden_wsdl10_interface_msg_ref_ops_t;
00040
00041
00042 #ifdef __cplusplus
00043 extern "C"
00044 {
00045 #endif
00046
00047 struct woden_wsdl10_interface_msg_ref_ops
00048 {
00053 axis2_status_t (AXIS2_CALL *
00054 free) (void *interface_msg_ref,
00055 const axis2_env_t *env);
00056
00057 axis2_hash_t *(AXIS2_CALL *
00058 super_objs) (void *interface_msg_ref,
00059 const axis2_env_t *env);
00060
00061 woden_obj_types_t (AXIS2_CALL *
00062 type) (void *interface_msg_ref,
00063 const axis2_env_t *env);
00067 struct woden_nested_configurable *(AXIS2_CALL *
00068 get_base_impl) (
00069 void *interface_msg_ref,
00070 const axis2_env_t *env);
00071
00072 void *(AXIS2_CALL *
00073 get_direction) (
00074 void *interface_msg_ref,
00075 const axis2_env_t *env);
00076
00077 void *(AXIS2_CALL *
00078 to_element) (
00079 void *interface_msg_ref,
00080 const axis2_env_t *env);
00081
00082 };
00083
00084 union woden_wsdl10_interface_msg_ref_base
00085 {
00086 woden_nested_configurable_t nested_configurable;
00087 woden_wsdl10_interface_msg_ref_element_t interface_msg_ref_element;
00088 };
00089
00090 struct woden_wsdl10_interface_msg_ref
00091 {
00092 woden_wsdl10_interface_msg_ref_base_t base;
00093 woden_wsdl10_interface_msg_ref_ops_t *ops;
00094 };
00095
00096 AXIS2_EXTERN woden_wsdl10_interface_msg_ref_t * AXIS2_CALL
00097 woden_wsdl10_interface_msg_ref_create(
00098 const axis2_env_t *env);
00099
00100
00101
00102 AXIS2_EXTERN woden_wsdl10_interface_msg_ref_t * AXIS2_CALL
00103 woden_wsdl10_interface_msg_ref_to_interface_msg_ref_element(
00104 void *interface_msg_ref,
00105 const axis2_env_t *env);
00106
00107 AXIS2_EXTERN woden_wsdl10_interface_msg_ref_t * AXIS2_CALL
00108 woden_wsdl10_interface_msg_ref_to_nested_configurable(
00109 void *interface_msg_ref,
00110 const axis2_env_t *env);
00111
00112 AXIS2_EXTERN woden_wsdl10_interface_msg_ref_t * AXIS2_CALL
00113 woden_wsdl10_interface_msg_ref_to_configurable(
00114 void *interface_msg_ref,
00115 const axis2_env_t *env);
00116
00117 AXIS2_EXTERN woden_wsdl10_interface_msg_ref_t * AXIS2_CALL
00118 woden_wsdl10_interface_msg_ref_to_nested_element(
00119 void *interface_msg_ref,
00120 const axis2_env_t *env);
00121
00122 AXIS2_EXTERN woden_wsdl10_interface_msg_ref_t * AXIS2_CALL
00123 woden_wsdl10_interface_msg_ref_to_configurable_element(
00124 void *interface_msg_ref,
00125 const axis2_env_t *env);
00126
00127 AXIS2_EXTERN woden_wsdl10_interface_msg_ref_t * AXIS2_CALL
00128 woden_wsdl10_interface_msg_ref_to_documentable_element(
00129 void *interface_msg_ref,
00130 const axis2_env_t *env);
00131
00132 AXIS2_EXTERN woden_wsdl10_interface_msg_ref_t * AXIS2_CALL
00133 woden_wsdl10_interface_msg_ref_to_documentable(
00134 void *interface_msg_ref,
00135 const axis2_env_t *env);
00136
00137 AXIS2_EXTERN woden_wsdl10_interface_msg_ref_t * AXIS2_CALL
00138 woden_wsdl10_interface_msg_ref_to_attr_extensible(
00139 void *interface_msg_ref,
00140 const axis2_env_t *env);
00141
00142 AXIS2_EXTERN woden_wsdl10_interface_msg_ref_t * AXIS2_CALL
00143 woden_wsdl10_interface_msg_ref_to_element_extensible(
00144 void *interface_msg_ref,
00145 const axis2_env_t *env);
00146
00147
00148 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00149 woden_wsdl10_interface_msg_ref_resolve_methods(
00150 woden_wsdl10_interface_msg_ref_t *interface_msg_ref,
00151 const axis2_env_t *env,
00152 woden_wsdl10_interface_msg_ref_t *interface_msg_ref_impl,
00153 axis2_hash_t *methods);
00154
00155
00156 #define WODEN_WSDL10_INTERFACE_MSG_REF_FREE(interface_msg_ref, env) \
00157 (((woden_wsdl10_interface_msg_ref_t *) interface_msg_ref)->ops->\
00158 free(interface_msg_ref, env))
00159
00160 #define WODEN_WSDL10_INTERFACE_MSG_REF_SUPER_OBJS(interface_msg_ref, env) \
00161 (((woden_wsdl10_interface_msg_ref_t *) interface_msg_ref)->ops->\
00162 super_objs(interface_msg_ref, env))
00163
00164 #define WODEN_WSDL10_INTERFACE_MSG_REF_TYPE(interface_msg_ref, env) \
00165 (((woden_wsdl10_interface_msg_ref_t *) interface_msg_ref)->ops->\
00166 type(interface_msg_ref, env))
00167
00168 #define WODEN_WSDL10_INTERFACE_MSG_REF_GET_BASE_IMPL(interface_msg_ref, env) \
00169 (((woden_wsdl10_interface_msg_ref_t *) interface_msg_ref)->ops->\
00170 get_base_impl(interface_msg_ref, env))
00171
00172 #define WODEN_WSDL10_INTERFACE_MSG_REF_GET_DIRECTION(interface_msg_ref, env) \
00173 (((woden_wsdl10_interface_msg_ref_t *) interface_msg_ref)->ops->\
00174 get_direction(interface_msg_ref, env))
00175
00176 #define WODEN_WSDL10_INTERFACE_MSG_REF_TO_ELEMENT(interface_msg_ref, env) \
00177 (((woden_wsdl10_interface_msg_ref_t *) interface_msg_ref)->ops->\
00178 to_element(interface_msg_ref, env))
00179
00181 #ifdef __cplusplus
00182 }
00183 #endif
00184 #endif