00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef W2C_SCHEMA_PROPERTY_LOADER_H
00019 #define W2C_SCHEMA_PROPERTY_LOADER_H
00020
00026 #include <axis2_utils.h>
00027 #include <w2c_schema_writer.h>
00028
00029 #ifdef __cplusplus
00030 extern "C"
00031 {
00032 #endif
00033
00039 typedef struct w2c_schema_property_loader w2c_schema_property_loader_t;
00040 typedef struct w2c_schema_property_loader_ops w2c_schema_property_loader_ops_t;
00041
00042 AXIS2_DECLARE_DATA struct w2c_schema_property_loader_ops
00043 {
00051 axis2_status_t (AXIS2_CALL *
00052 free)(w2c_schema_property_loader_t *schema_property_loader,
00053 const axis2_env_t *env);
00054
00064 axis2_status_t (AXIS2_CALL *
00065 set_filename)(w2c_schema_property_loader_t *schema_property_loader,
00066 const axis2_env_t *env, axis2_char_t *filename);
00067
00077 axis2_status_t (AXIS2_CALL *
00078 set_language)(w2c_schema_property_loader_t *schema_property_loader,
00079 const axis2_env_t *env, axis2_char_t *lang);
00080
00081
00089 axis2_status_t (AXIS2_CALL *
00090 reload )(w2c_schema_property_loader_t *schema_property_loader,
00091 const axis2_env_t *env);
00092
00099 axis2_char_t* (AXIS2_CALL*
00100 get_template_name)(
00101 w2c_schema_property_loader_t *schema_property_loader,
00102 const axis2_env_t *env);
00103
00109 w2c_schema_writer_t* (AXIS2_CALL*
00110 get_writer_instance)(
00111 w2c_schema_property_loader_t *schema_property_loader,
00112 const axis2_env_t *env);
00113
00119 axis2_char_t* (AXIS2_CALL*
00120 get_typemapper_name)(
00121 w2c_schema_property_loader_t *schema_property_loader,
00122 const axis2_env_t *env);
00123
00129 axis2_char_t* (AXIS2_CALL*
00130 get_default_class)(
00131 w2c_schema_property_loader_t *schema_property_loader,
00132 const axis2_env_t *env);
00133
00139 axis2_char_t* (AXIS2_CALL*
00140 get_default_array)(
00141 w2c_schema_property_loader_t *schema_property_loader,
00142 const axis2_env_t *env);
00143
00144
00145 };
00146
00147 AXIS2_DECLARE_DATA struct w2c_schema_property_loader
00148 {
00149 struct w2c_schema_property_loader_ops *ops;
00150 };
00151
00158 AXIS2_EXTERN w2c_schema_property_loader_t* AXIS2_CALL
00159 w2c_schema_property_loader_create( const axis2_env_t *env, axis2_char_t *lang);
00160
00161
00162
00163 #define W2C_SCHEMA_PROPERTY_LOADER_FREE(schema_property_loader, env) \
00164 ((schema_property_loader)->ops->free (schema_property_loader, env))
00165
00166 #define W2C_SCHEMA_PROPERTY_LOADER_SET_FILENAME(schema_property_loader, env, filename) \
00167 ((schema_property_loader)->ops->set_filename (schema_property_loader, env, filename))
00168
00169 #define W2C_SCHEMA_PROPERTY_LOADER_RELOAD(schema_property_loader, env) \
00170 ((schema_property_loader)->ops->reload (schema_property_loader, env))
00171
00172 #define W2C_SCHEMA_PROPERTY_LOADER_GET_WRITER_INSTANCE(schema_property_loader, env) \
00173 ((schema_property_loader)->ops->get_writer_instance(schema_property_loader, env))
00174
00175 #define W2C_SCHEMA_PROPERTY_LOADER_GET_TEMPLATE_NAME(schema_property_loader, env) \
00176 ((schema_property_loader)->ops->get_template_name(schema_property_loader, env))
00177
00178 #define W2C_SCHEMA_PROPERTY_LOADER_GET_TYPEMAPPER_NAME(schema_property_loader, env) \
00179 ((schema_property_loader)->ops->get_typemapper_name(schema_property_loader, env))
00180
00181 #define W2C_SCHEMA_PROPERTY_LOADER_GET_DEFAULT_ARRAY(schema_property_loader, env) \
00182 ((schema_property_loader)->ops->get_default_array(schema_property_loader, env))
00183
00184 #define W2C_SCHEMA_PROPERTY_LOADER_GET_DEFAULT_CLASS(schema_property_loader, env) \
00185 ((schema_property_loader)->ops->get_default_class(schema_property_loader, env))
00186
00189 #ifdef __cplusplus
00190 }
00191 #endif
00192
00193 #endif