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