00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef XML_SCHEMA_INPUT_SOURCE_H
00019 #define XML_SCHEMA_INPUT_SOURCE_H
00020
00030 typedef struct xml_schema_input_source
00031 xml_schema_input_source_t;
00032
00033 typedef struct xml_schema_input_source_ops
00034 xml_schema_input_source_ops_t;
00035
00036 #ifdef __cplusplus
00037 extern "C"
00038 {
00039 #endif
00040
00041 struct xml_schema_input_source_ops
00042 {
00043 axis2_char_t* (AXIS2_CALL *
00044 get_system_id)(
00045 xml_schema_input_source_t *source,
00046 const axis2_env_t *env);
00047
00048 axis2_status_t (AXIS2_CALL *
00049 set_system_id)(
00050 xml_schema_input_source_t *source,
00051 const axis2_env_t *env,
00052 const axis2_char_t *system_id);
00053
00054 axis2_char_t* (AXIS2_CALL*
00055 get_public_id)(
00056 xml_schema_input_source_t *source,
00057 const axis2_env_t *env);
00058
00059 axis2_status_t (AXIS2_CALL*
00060 set_public_id)(
00061 xml_schema_input_source_t *source,
00062 const axis2_env_t *env,
00063 const axis2_char_t *public_id);
00064
00065 axis2_status_t (AXIS2_CALL*
00066 set_encoding)(
00067 xml_schema_input_source_t *source,
00068 const axis2_env_t *env,
00069 const axis2_char_t *encoding);
00070
00071 axis2_char_t * (AXIS2_CALL*
00072 get_encoding)(
00073 xml_schema_input_source_t *source,
00074 const axis2_env_t *env);
00075
00076 axis2_status_t (AXIS2_CALL *
00077 free)(xml_schema_input_source_t *source,
00078 const axis2_env_t *env);
00079 };
00080
00081 struct xml_schema_input_source
00082 {
00083 xml_schema_input_source_ops_t *ops;
00084 };
00085
00086 AXIS2_EXTERN xml_schema_input_source_t* AXIS2_CALL
00087 xml_schema_input_source_create(const axis2_env_t *env);
00088
00089 AXIS2_EXTERN xml_schema_input_source_t* AXIS2_CALL
00090 xml_schema_input_source_create_with_system_id(
00091 const axis2_env_t *env,
00092 const axis2_char_t *id);
00093
00094
00095
00096 #define XML_SCHEMA_INPUT_SOURCE_FREE(source, env) \
00097 ((source)->ops->free(source, env))
00098
00099 #define XML_SCHEMA_INPUT_SOURCE_SET_PUBLIC_ID(source, env, id) \
00100 ((source)->ops->set_public_id(source, env, id))
00101
00102 #define XML_SCHEMA_INPUT_SOURCE_GET_PUBLIC_ID(source, env) \
00103 ((source)->ops->get_public_id(source, env))
00104
00105 #define XML_SCHEMA_INPUT_SOURCE_SET_SYSTEM_ID(source, env, id) \
00106 ((source)->ops->set_system_id(source, env, id))
00107
00108 #define XML_SCHEMA_INPUT_SOURCE_GET_SYSTEM_ID(source, env) \
00109 ((source)->ops->get_system_id(source, env))
00110
00111 #define XML_SCHEMA_INPUT_SOURCE_SET_ENCODING(source, env, encoding) \
00112 ((source)->ops->set_encoding(source, env, encoding))
00113
00114 #define XML_SCHEMA_INPUT_SOURCE_GET_ENCODING(source, env) \
00115 ((source)->ops->get_encoding(source, env))
00116
00117 #ifdef __cplusplus
00118 }
00119 #endif
00120
00121 #endif
00122