00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef AXIS2_WSDL_PROPERTY_H
00018 #define AXIS2_WSDL_PROPERTY_H
00019
00025 #include <axis2_const.h>
00026 #include <axis2_error.h>
00027 #include <axis2_defines.h>
00028 #include <axis2_env.h>
00029 #include <axis2_allocator.h>
00030 #include <axis2_wsdl_component.h>
00031
00032 #ifdef __cplusplus
00033 extern "C"
00034 {
00035 #endif
00036
00037 struct axis2_wsdl_component;
00038 typedef struct axis2_wsdl_property axis2_wsdl_property_t;
00039 typedef struct axis2_wsdl_property_ops axis2_wsdl_property_ops_t;
00040
00050 AXIS2_DECLARE_DATA struct axis2_wsdl_property_ops
00051 {
00055 axis2_status_t (AXIS2_CALL *free)(axis2_wsdl_property_t *wsdl_property,
00056 const axis2_env_t *env);
00057
00063 void * (AXIS2_CALL *
00064 get_constraint) (axis2_wsdl_property_t *wsdl_property,
00065 const axis2_env_t *env);
00066
00072 axis2_status_t (AXIS2_CALL *
00073 set_constraint) (axis2_wsdl_property_t *wsdl_property,
00074 const axis2_env_t *env,
00075 void *constraint);
00076
00082 axis2_char_t *(AXIS2_CALL *
00083 get_name) (axis2_wsdl_property_t *wsdl_property,
00084 const axis2_env_t *env);
00085
00091 axis2_status_t (AXIS2_CALL *
00092 set_name) (axis2_wsdl_property_t *wsdl_property,
00093 const axis2_env_t *env,
00094 axis2_char_t *name);
00095
00096
00102 void *(AXIS2_CALL *
00103 get_value) (axis2_wsdl_property_t *wsdl_property,
00104 const axis2_env_t *env);
00105
00111 axis2_status_t (AXIS2_CALL *
00112 set_value) (axis2_wsdl_property_t *wsdl_property,
00113 const axis2_env_t *env,
00114 void *value);
00115
00116
00117
00118 };
00119
00124 AXIS2_DECLARE_DATA struct axis2_wsdl_property
00125 {
00126 axis2_wsdl_property_ops_t *ops;
00127 struct axis2_wsdl_component *wsdl_component;
00128 };
00129
00134 AXIS2_EXTERN axis2_wsdl_property_t *AXIS2_CALL axis2_wsdl_property_create (const axis2_env_t *env);
00135
00136
00137
00138 #define AXIS2_WSDL_PROPERTY_FREE(wsdl_property, env) \
00139 ((wsdl_property)->ops->free (wsdl_property, env))
00140
00141 #define AXIS2_WSDL_PROPERTY_GET_CONSTRAINT(wsdl_property, env) \
00142 ((wsdl_property)->ops->set_constraint (wsdl_property, env))
00143
00144 #define AXIS2_WSDL_PROPERTY_SET_CONSTRAINT(wsdl_property, env, constraint) \
00145 ((wsdl_property)->ops->get_constraint (wsdl_property, env, constraint))
00146
00147 #define AXIS2_WSDL_PROPERTY_GET_NAME(wsdl_property, env) \
00148 ((wsdl_property)->ops->get_name (wsdl_property, env))
00149
00150 #define AXIS2_WSDL_PROPERTY_SET_NAME(wsdl_property, env, name) \
00151 ((wsdl_property)->ops->set_name (wsdl_property, env, name))
00152
00153 #define AXIS2_WSDL_PROPERTY_GET_VALUE(wsdl_property, env) \
00154 ((wsdl_property)->ops->get_value (wsdl_property, env))
00155
00156 #define AXIS2_WSDL_PROPERTY_SET_VALUE(wsdl_property, env, value) \
00157 ((wsdl_property)->ops->set_value (wsdl_property, env, value))
00158
00159
00160
00163 #ifdef __cplusplus
00164 }
00165 #endif
00166 #endif