00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #if !defined(XMLENTITYHANDLER_HPP)
00023 #define XMLENTITYHANDLER_HPP
00024
00025 #include <xercesc/util/XercesDefs.hpp>
00026
00027 XERCES_CPP_NAMESPACE_BEGIN
00028
00029 class InputSource;
00030 class XMLBuffer;
00031 class XMLResourceIdentifier;
00032
00043 class XMLEntityHandler
00044 {
00045 public:
00046
00047
00048
00049
00052
00056 virtual ~XMLEntityHandler()
00057 {
00058 }
00060
00061
00062
00063
00064
00067
00074 virtual void endInputSource(const InputSource& inputSource) = 0;
00075
00087 virtual bool expandSystemId
00088 (
00089 const XMLCh* const systemId
00090 , XMLBuffer& toFill
00091 ) = 0;
00092
00098 virtual void resetEntities() = 0;
00099
00120 virtual InputSource* resolveEntity
00121 (
00122 const XMLCh* const publicId
00123 , const XMLCh* const systemId
00124 , const XMLCh* const baseURI = 0
00125 ) = 0;
00126
00142 virtual InputSource* resolveEntity
00143 (
00144 XMLResourceIdentifier* resourceIdentifier
00145 ) = 0;
00146
00153 virtual void startInputSource(const InputSource& inputSource) = 0;
00155
00156
00157 protected :
00158
00159
00160
00163
00167 XMLEntityHandler()
00168 {
00169 }
00171
00172
00173
00174 private:
00175
00176
00177
00178 XMLEntityHandler(const XMLEntityHandler&);
00179 XMLEntityHandler& operator=(const XMLEntityHandler&);
00180 };
00181
00182 XERCES_CPP_NAMESPACE_END
00183
00184 #endif