00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef WODEN_INTERFACE_FAULT_REF_H
00018 #define WODEN_INTERFACE_FAULT_REF_H
00019
00029 #include <woden.h>
00030 #include <woden_interface_fault_ref_element.h>
00031 #include <woden_nested_configurable.h>
00032 #include <axis2_qname.h>
00033
00039 typedef union woden_interface_fault_ref_base woden_interface_fault_ref_base_t;
00040 typedef struct woden_interface_fault_ref woden_interface_fault_ref_t;
00041 typedef struct woden_interface_fault_ref_ops woden_interface_fault_ref_ops_t;
00042
00043
00044 #ifdef __cplusplus
00045 extern "C"
00046 {
00047 #endif
00048
00049 struct woden_interface_fault_ref_ops
00050 {
00055 axis2_status_t (AXIS2_CALL *
00056 free) (void *interface_fault_ref,
00057 const axis2_env_t *env);
00058
00059 axis2_hash_t *(AXIS2_CALL *
00060 super_objs) (void *interface_fault_ref,
00061 const axis2_env_t *env);
00062
00063 woden_obj_types_t (AXIS2_CALL *
00064 type) (void *interface_fault_ref,
00065 const axis2_env_t *env);
00069 struct woden_nested_configurable *(AXIS2_CALL *
00070 get_base_impl) (
00071 void *interface_fault_ref,
00072 const axis2_env_t *env);
00073
00074 void *(AXIS2_CALL *
00075 get_interface_fault) (
00076 void *interface_fault_ref,
00077 const axis2_env_t *env);
00078
00079 void *(AXIS2_CALL *
00080 get_msg_label) (
00081 void *interface_fault_ref,
00082 const axis2_env_t *env);
00083
00084 void *(AXIS2_CALL *
00085 get_direction) (
00086 void *interface_fault_ref,
00087 const axis2_env_t *env);
00088
00089 void *(AXIS2_CALL *
00090 to_element) (
00091 void *interface_fault_ref,
00092 const axis2_env_t *env);
00093
00094
00095
00096
00097 axis2_status_t (AXIS2_CALL *
00098 set_interface_fault) (
00099 void *interface_fault_ref,
00100 const axis2_env_t *env,
00101 void *fault);
00102
00103 };
00104
00105 union woden_interface_fault_ref_base
00106 {
00107 woden_nested_configurable_t nested_configurable;
00108 woden_interface_fault_ref_element_t interface_fault_ref_element;
00109 };
00110
00111 struct woden_interface_fault_ref
00112 {
00113 woden_interface_fault_ref_base_t base;
00114 woden_interface_fault_ref_ops_t *ops;
00115 };
00116
00117 AXIS2_EXTERN woden_interface_fault_ref_t * AXIS2_CALL
00118 woden_interface_fault_ref_create(
00119 const axis2_env_t *env);
00120
00121
00122
00123 AXIS2_EXTERN woden_interface_fault_ref_t * AXIS2_CALL
00124 woden_interface_fault_ref_to_interface_fault_ref_element(
00125 void *interface_fault_ref,
00126 const axis2_env_t *env);
00127
00128 AXIS2_EXTERN woden_interface_fault_ref_t * AXIS2_CALL
00129 woden_interface_fault_ref_to_nested_configurable(
00130 void *interface_fault_ref,
00131 const axis2_env_t *env);
00132
00133 AXIS2_EXTERN woden_interface_fault_ref_t * AXIS2_CALL
00134 woden_interface_fault_ref_to_configurable(
00135 void *interface_fault_ref,
00136 const axis2_env_t *env);
00137
00138 AXIS2_EXTERN woden_interface_fault_ref_t * AXIS2_CALL
00139 woden_interface_fault_ref_to_nested_element(
00140 void *interface_fault_ref,
00141 const axis2_env_t *env);
00142
00143 AXIS2_EXTERN woden_interface_fault_ref_t * AXIS2_CALL
00144 woden_interface_fault_ref_to_configurable_element(
00145 void *interface_fault_ref,
00146 const axis2_env_t *env);
00147
00148 AXIS2_EXTERN woden_interface_fault_ref_t * AXIS2_CALL
00149 woden_interface_fault_ref_to_documentable_element(
00150 void *interface_fault_ref,
00151 const axis2_env_t *env);
00152
00153 AXIS2_EXTERN woden_interface_fault_ref_t * AXIS2_CALL
00154 woden_interface_fault_ref_to_documentable(
00155 void *interface_fault_ref,
00156 const axis2_env_t *env);
00157
00158 AXIS2_EXTERN woden_interface_fault_ref_t * AXIS2_CALL
00159 woden_interface_fault_ref_to_attr_extensible(
00160 void *interface_fault_ref,
00161 const axis2_env_t *env);
00162
00163 AXIS2_EXTERN woden_interface_fault_ref_t * AXIS2_CALL
00164 woden_interface_fault_ref_to_element_extensible(
00165 void *interface_fault_ref,
00166 const axis2_env_t *env);
00167
00168
00169 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00170 woden_interface_fault_ref_resolve_methods(
00171 woden_interface_fault_ref_t *interface_fault_ref,
00172 const axis2_env_t *env,
00173 woden_interface_fault_ref_t *interface_fault_ref_impl,
00174 axis2_hash_t *methods);
00175
00176
00177 #define WODEN_INTERFACE_FAULT_REF_FREE(interface_fault_ref, env) \
00178 (((woden_interface_fault_ref_t *) interface_fault_ref)->ops->free(interface_fault_ref, env))
00179
00180 #define WODEN_INTERFACE_FAULT_REF_SUPER_OBJS(interface_fault_ref, env) \
00181 (((woden_interface_fault_ref_t *) interface_fault_ref)->ops->super_objs(interface_fault_ref, env))
00182
00183 #define WODEN_INTERFACE_FAULT_REF_TYPE(interface_fault_ref, env) \
00184 (((woden_interface_fault_ref_t *) interface_fault_ref)->ops->type(interface_fault_ref, env))
00185
00186 #define WODEN_INTERFACE_FAULT_REF_GET_BASE_IMPL(interface_fault_ref, env) \
00187 (((woden_interface_fault_ref_t *) interface_fault_ref)->ops->get_base_impl(interface_fault_ref, env))
00188
00189 #define WODEN_INTERFACE_FAULT_REF_GET_INTERFACE_FAULT(interface_fault_ref, env) \
00190 (((woden_interface_fault_ref_t *) interface_fault_ref)->\
00191 get_interface_fault(interface_fault_ref, env))
00192
00193 #define WODEN_INTERFACE_FAULT_REF_GET_MSG_LABEL(interface_fault_ref, env) \
00194 (((woden_interface_fault_ref_t *) interface_fault_ref)->\
00195 get_msg_label(interface_fault_ref, env))
00196
00197 #define WODEN_INTERFACE_FAULT_REF_GET_DIRECTION(interface_fault_ref, env) \
00198 (((woden_interface_fault_ref_t *) interface_fault_ref)->\
00199 get_direction(interface_fault_ref, env))
00200
00201 #define WODEN_INTERFACE_FAULT_REF_TO_ELEMENT(interface_fault_ref, env) \
00202 (((woden_interface_fault_ref_t *) interface_fault_ref)->ops->\
00203 to_element(interface_fault_ref, env))
00204
00205 #define WODEN_INTERFACE_FAULT_REF_SET_INTERFACE_FAULT(interface_fault_ref, env, fault) \
00206 (((woden_interface_fault_ref_t *) interface_fault_ref)->ops->\
00207 set_interface_fault(interface_fault_ref, env, fault))
00208
00210 #ifdef __cplusplus
00211 }
00212 #endif
00213 #endif