00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef WODEN_BINDING_FAULT_H
00019 #define WODEN_BINDING_FAULT_H
00020
00029 #include <woden.h>
00030 #include <woden_binding_fault_element.h>
00031 #include <woden_nested_configurable.h>
00032 #include <axis2_qname.h>
00033
00039 typedef union woden_binding_fault_base woden_binding_fault_base_t;
00040 typedef struct woden_binding_fault woden_binding_fault_t;
00041 typedef struct woden_binding_fault_ops woden_binding_fault_ops_t;
00042
00043
00044 #ifdef __cplusplus
00045 extern "C"
00046 {
00047 #endif
00048
00049 struct woden_binding_fault_ops
00050 {
00055 axis2_status_t (AXIS2_CALL *
00056 free) (void *binding_fault,
00057 const axis2_env_t *env);
00058
00059 axis2_hash_t *(AXIS2_CALL *
00060 super_objs) (void *binding_fault,
00061 const axis2_env_t *env);
00062
00063 woden_obj_types_t (AXIS2_CALL *
00064 type) (void *binding_fault,
00065 const axis2_env_t *env);
00069 struct woden_nested_configurable *(AXIS2_CALL *
00070 get_base_impl) (
00071 void *binding_fault,
00072 const axis2_env_t *env);
00073
00074 void *(AXIS2_CALL *
00075 get_interface_fault) (
00076 void *binding_fault,
00077 const axis2_env_t *env);
00078
00079 void *(AXIS2_CALL *
00080 to_element) (
00081 void *binding_fault,
00082 const axis2_env_t *env);
00083
00084
00085
00086
00087 axis2_status_t (AXIS2_CALL *
00088 set_interface_fault_element) (
00089 void *binding_fault,
00090 const axis2_env_t *env,
00091 void *in_fault);
00092 };
00093
00094 union woden_binding_fault_base
00095 {
00096 woden_nested_configurable_t nested_configurable;
00097 woden_binding_fault_element_t binding_fault_element;
00098 };
00099
00100 struct woden_binding_fault
00101 {
00102 woden_binding_fault_base_t base;
00103 woden_binding_fault_ops_t *ops;
00104 };
00105
00106 AXIS2_EXTERN woden_binding_fault_t * AXIS2_CALL
00107 woden_binding_fault_create(
00108 const axis2_env_t *env);
00109
00110
00111
00112 AXIS2_EXTERN woden_binding_fault_t * AXIS2_CALL
00113 woden_binding_fault_to_binding_fault_element(
00114 void *binding_fault,
00115 const axis2_env_t *env);
00116
00117 AXIS2_EXTERN woden_binding_fault_t * AXIS2_CALL
00118 woden_binding_fault_to_nested_configurable(
00119 void *binding_fault,
00120 const axis2_env_t *env);
00121
00122 AXIS2_EXTERN woden_binding_fault_t * AXIS2_CALL
00123 woden_binding_fault_to_configurable(
00124 void *binding_fault,
00125 const axis2_env_t *env);
00126
00127 AXIS2_EXTERN woden_binding_fault_t * AXIS2_CALL
00128 woden_binding_fault_to_wsdl_obj(
00129 void *binding_fault,
00130 const axis2_env_t *env);
00131
00132 AXIS2_EXTERN woden_binding_fault_t * AXIS2_CALL
00133 woden_binding_fault_to_documentable_element(
00134 void *binding_fault,
00135 const axis2_env_t *env);
00136
00137 AXIS2_EXTERN woden_binding_fault_t * AXIS2_CALL
00138 woden_binding_fault_to_documentable(
00139 void *binding_fault,
00140 const axis2_env_t *env);
00141
00142 AXIS2_EXTERN woden_binding_fault_t * AXIS2_CALL
00143 woden_binding_fault_to_nested_element(
00144 void *binding_fault,
00145 const axis2_env_t *env);
00146
00147 AXIS2_EXTERN woden_binding_fault_t * AXIS2_CALL
00148 woden_binding_fault_to_wsdl_component(
00149 void *binding_fault,
00150 const axis2_env_t *env);
00151
00152 AXIS2_EXTERN woden_binding_fault_t * AXIS2_CALL
00153 woden_binding_fault_to_configurable_element(
00154 void *binding_fault,
00155 const axis2_env_t *env);
00156
00157 AXIS2_EXTERN woden_binding_fault_t * AXIS2_CALL
00158 woden_binding_fault_to_attr_extensible(
00159 void *binding_fault,
00160 const axis2_env_t *env);
00161
00162 AXIS2_EXTERN woden_binding_fault_t * AXIS2_CALL
00163 woden_binding_fault_to_element_extensible(
00164 void *binding_fault,
00165 const axis2_env_t *env);
00166
00167 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00168 woden_binding_fault_resolve_methods(
00169 woden_binding_fault_t *binding_fault,
00170 const axis2_env_t *env,
00171 woden_binding_fault_t *binding_fault_impl,
00172 axis2_hash_t *methods);
00173
00174
00175 #define WODEN_BINDING_FAULT_FREE(binding_fault, env) \
00176 (((woden_binding_fault_t *) binding_fault)->ops->free(binding_fault, env))
00177
00178 #define WODEN_BINDING_FAULT_SUPER_OBJS(binding_fault, env) \
00179 (((woden_binding_fault_t *) binding_fault)->ops->super_objs(binding_fault, env))
00180
00181 #define WODEN_BINDING_FAULT_TYPE(binding_fault, env) \
00182 (((woden_binding_fault_t *) binding_fault)->ops->type(binding_fault, env))
00183
00184 #define WODEN_BINDING_FAULT_GET_BASE_IMPL(binding_fault, env) \
00185 (((woden_binding_fault_t *) binding_fault)->ops->get_base_impl(binding_fault, env))
00186
00187 #define WODEN_BINDING_FAULT_GET_INTERFACE_FAULT(binding_fault, env) \
00188 (((woden_binding_fault_t *) binding_fault)->ops->\
00189 get_interface_fault(binding_fault, env))
00190
00191 #define WODEN_BINDING_FAULT_TO_ELEMENT(binding_fault, env) \
00192 (((woden_binding_fault_t *) binding_fault)->ops->\
00193 to_element(binding_fault, env))
00194
00195 #define WODEN_BINDING_FAULT_SET_INTERFACE_FAULT_ELEMENT(binding_fault, env, in_fault) \
00196 (((woden_binding_fault_t *) binding_fault)->ops->\
00197 set_interface_fault_element(binding_fault, env, in_fault))
00198
00200 #ifdef __cplusplus
00201 }
00202 #endif
00203 #endif