w2c_config_property_loader.h

Go to the documentation of this file.
00001 /*
00002  * Licensed to the Apache Software Foundation (ASF) under one or more
00003  * contributor license agreements.  See the NOTICE file distributed with
00004  * this work for additional information regarding copyright ownership.
00005  * The ASF licenses this file to You under the Apache License, Version 2.0
00006  * (the "License"); you may not use this file except in compliance with
00007  * the License.  You may obtain a copy of the License at
00008  *
00009  *      http://www.apache.org/licenses/LICENSE-2.0
00010  *
00011  * Unless required by applicable law or agreed to in writing, software
00012  * distributed under the License is distributed on an "AS IS" BASIS,
00013  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00014  * See the License for the specific language governing permissions and
00015  * limitations under the License.
00016  */
00017   
00018 #ifndef W2C_CONFIG_PROPERTY_LOADER_H
00019 #define W2C_CONFIG_PROPERTY_LOADER_H
00020 
00026 #include <axis2_utils.h>
00027 #include <axis2_array_list.h>
00028 #include <axis2_hash.h>
00029 
00030 #ifdef __cplusplus
00031 extern "C"
00032 {
00033 #endif
00034 
00041 typedef struct w2c_config_property_loader w2c_config_property_loader_t;
00042 typedef struct w2c_config_property_loader_ops w2c_config_property_loader_ops_t;
00043 
00044 AXIS2_DECLARE_DATA  struct w2c_config_property_loader_ops
00045 {
00053     axis2_status_t (AXIS2_CALL *
00054     free)(w2c_config_property_loader_t *config_property_loader,
00055          const axis2_env_t *env);
00056 
00065     axis2_status_t (AXIS2_CALL *
00066     set_filename)(w2c_config_property_loader_t *config_property_loader,
00067          const axis2_env_t *env, axis2_char_t *filename);
00068 
00076     axis2_status_t (AXIS2_CALL *
00077     reload )(w2c_config_property_loader_t *config_property_loader,
00078          const axis2_env_t *env);
00079     
00086     axis2_char_t* (AXIS2_CALL* 
00087     get_test_object_template_name )(
00088         w2c_config_property_loader_t *config_property_loader,
00089         const axis2_env_t *env);
00090     
00097     axis2_char_t* (AXIS2_CALL*
00098     get_db_supporter_template_name )(
00099         w2c_config_property_loader_t *config_property_loader,
00100         const axis2_env_t *env);
00106     axis2_array_list_t* (AXIS2_CALL* 
00107     get_extension_class_names )(
00108         w2c_config_property_loader_t *config_property_loader,
00109         const axis2_env_t *env);
00115     axis2_array_list_t* (AXIS2_CALL* 
00116     get_post_extension_class_names )(
00117         w2c_config_property_loader_t *config_property_loader,
00118         const axis2_env_t *env);
00119     
00125     axis2_array_list_t* (AXIS2_CALL* 
00126     get_third_party_schema_names )(
00127         w2c_config_property_loader_t *config_property_loader,
00128         const axis2_env_t *env);
00129     
00135     axis2_array_list_t* (AXIS2_CALL* 
00136     get_language_types )(
00137         w2c_config_property_loader_t *config_property_loader,
00138         const axis2_env_t *env);
00139     
00145     axis2_hash_t* (AXIS2_CALL* 
00146     get_language_emitter_map )(
00147         w2c_config_property_loader_t *config_property_loader,
00148         const axis2_env_t *env);
00149     
00155     axis2_char_t* (AXIS2_CALL* 
00156     get_default_language )(
00157         w2c_config_property_loader_t *config_property_loader,
00158         const axis2_env_t *env);
00159     
00165     axis2_hash_t* (AXIS2_CALL* 
00166     get_language_specific_properties_map )(
00167         w2c_config_property_loader_t *config_property_loader,
00168         const axis2_env_t *env);
00169     
00175     axis2_array_list_t* (AXIS2_CALL* 
00176     get_databinding_framework_names )(
00177         w2c_config_property_loader_t *config_property_loader,
00178         const axis2_env_t *env);
00179     
00186     axis2_hash_t* (AXIS2_CALL* 
00187     get_databinding_framework_name_to_extension_map )(
00188         w2c_config_property_loader_t *config_property_loader,
00189         const axis2_env_t *env);
00190     
00196     axis2_char_t* (AXIS2_CALL* 
00197     get_default_db_framework_name )(
00198         w2c_config_property_loader_t *config_property_loader,
00199         const axis2_env_t *env);
00200 };
00201 
00202 AXIS2_DECLARE_DATA  struct w2c_config_property_loader
00203 {
00204      struct w2c_config_property_loader_ops *ops;
00205 };
00206 
00212 AXIS2_EXTERN w2c_config_property_loader_t* AXIS2_CALL
00213 w2c_config_property_loader_create( const axis2_env_t *env);
00214 
00215 /*************************** Function macros **********************************/
00216 
00217 #define W2C_CONFIG_PROPERTY_LOADER_FREE(config_property_loader, env) \
00218       ((config_property_loader)->ops->free (config_property_loader, env)) 
00219 
00220 #define W2C_CONFIG_PROPERTY_LOADER_SET_FILENAME(config_property_loader, env, filename) \
00221       ((config_property_loader)->ops->set_filename (config_property_loader, env, filename)) 
00222 
00223 #define W2C_CONFIG_PROPERTY_LOADER_RELOAD(config_property_loader, env) \
00224       ((config_property_loader)->ops->reload (config_property_loader, env)) 
00225 
00226 #define W2C_CONFIG_PROPERTY_LOADER_GET_TEST_OBJECT_TEMPLATE_NAME (config_property_loader, env) \
00227       ((config_property_loader)->ops->get_test_object_template_name  (config_property_loader, env))
00228 
00229 #define W2C_CONFIG_PROPERTY_LOADER_GET_DB_SUPPORTER_TEMPLATE_NAME (config_property_loader, env) \
00230       ((config_property_loader)->ops->get_db_supporter_template_name  (config_property_loader, env))
00231 
00232 #define W2C_CONFIG_PROPERTY_LOADER_GET_EXTENSION_CLASS_NAMES(config_property_loader, env) \
00233       ((config_property_loader)->ops->get_extension_class_names (config_property_loader, env))
00234 
00235 #define W2C_CONFIG_PROPERTY_LOADER_GET_POST_EXTENSION_CLASS_NAMES(config_property_loader, env) \
00236       ((config_property_loader)->ops->get_post_extension_class_names (config_property_loader, env))
00237 
00238 #define W2C_CONFIG_PROPERTY_LOADER_GET_THIRD_PARTY_SCHEMA_NAMES(config_property_loader, env) \
00239       ((config_property_loader)->ops->get_third_party_schema_names (config_property_loader, env))
00240 
00241 #define W2C_CONFIG_PROPERTY_LOADER_GET_LANGUAGE_TYPES (config_property_loader, env) \
00242       ((config_property_loader)->ops->get_language_types  (config_property_loader, env))
00243 
00244 #define W2C_CONFIG_PROPERTY_LOADER_GET_LANGUAGE_EMITTER_MAP(config_property_loader, env) \
00245       ((config_property_loader)->ops->get_language_emitter_map (config_property_loader, env))
00246 
00247 #define W2C_CONFIG_PROPERTY_LOADER_GET_DEFAULT_LANGUAGE(config_property_loader, env) \
00248       ((config_property_loader)->ops->get_default_language (config_property_loader, env))
00249 
00250 #define W2C_CONFIG_PROPERTY_LOADER_GET_LANGUAGE_SPECIFIC_PROPERTIES_MAP(config_property_loader, env) \
00251       ((config_property_loader)->ops->get_language_specific_properties_map (config_property_loader, env))
00252 
00253 #define W2C_CONFIG_PROPERTY_LOADER_GET_DATABINDING_FARMEWORK_NAMES(config_property_loader, env) \
00254       ((config_property_loader)->ops->get_databinding_framework_names (config_property_loader, env))
00255 
00256 #define W2C_CONFIG_PROPERTY_LOADER_GET_DATABIDNING_FRAMEWORK_NAME_TO_EXTENSION_MAP(config_property_loader, env) \
00257       ((config_property_loader)->ops->get_databinding_framework_name_to_extension_map (config_property_loader, env))
00258 
00259 #define W2C_CONFIG_PROPERTY_LOADER_GET_DEFAULT_DB_FRMAEWORK_NAME(config_property_loader, env) \
00260       ((config_property_loader)->ops->get_default_db_framework_name (config_property_loader, env))
00261 
00262 
00263 
00264 
00267 #ifdef __cplusplus
00268 }
00269 #endif
00270 
00271 #endif /* W2C_CONFIG_PROPERTY_LOADER_H */

Generated on Wed Dec 20 20:34:50 2006 for Axis2/C by  doxygen 1.5.1