00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052
00053
00054
00055
00056
00057
00058
00059
00060
00061
00062
00063
00064
00065
00066
00067
00068
00069
00070
00071
00072
00073
00074
00075
00076
00077
00078
00079
00080
00081
00082
00083
00084
00085
00086
00087
00088
00089
00090
00091
00092
00093
00094
00095
00096
00097
00098
00099
00100
00101
00102
00103
00104
00105
00106
00107
00108
00109
00110
00111
00112
00113
00114
00115
00116
00117
00118
00119
00120
00121
00122
00123
00124
00125
00126
00127
00128
00129
00130
00131
00132
00133 #ifndef SAX2XMLReader_HPP
00134 #define SAX2XMLReader_HPP
00135
00136 #include <xercesc/util/XercesDefs.hpp>
00137 #include <xercesc/util/XMLUniDefs.hpp>
00138 #include <xercesc/framework/XMLValidator.hpp>
00139 #include <xercesc/framework/XMLPScanToken.hpp>
00140
00141 class ContentHandler ;
00142 class DTDHandler;
00143 class EntityResolver;
00144 class ErrorHandler;
00145 class InputSource;
00146 class LexicalHandler;
00147 class DeclHandler;
00148 class XMLDocumentHandler;
00149
00150 class SAX2XMLReader
00151 {
00152 public:
00153
00154 enum ValSchemes
00155 {
00156 Val_Never
00157 , Val_Always
00158 , Val_Auto
00159 };
00160
00162
00163
00164
00166
00167 SAX2XMLReader()
00168 {
00169 }
00171 virtual ~SAX2XMLReader()
00172 {
00173 }
00175
00176
00177
00178
00181
00192 virtual int getErrorCount() const = 0 ;
00193
00199 virtual ContentHandler* getContentHandler() const = 0 ;
00200
00206 virtual DTDHandler* getDTDHandler() const = 0;
00207
00213 virtual EntityResolver* getEntityResolver() const = 0 ;
00214
00220 virtual ErrorHandler* getErrorHandler() const = 0 ;
00221
00227 virtual LexicalHandler* getLexicalHandler() const = 0 ;
00228
00234 virtual DeclHandler* getDeclarationHandler() const = 0 ;
00235
00243 virtual bool getFeature(const XMLCh* const name) const = 0;
00244
00264 virtual void* getProperty(const XMLCh* const name) const = 0 ;
00265
00275 virtual bool getExitOnFirstFatalError() const = 0;
00276
00287 virtual bool getValidationConstraintFatal() const = 0;
00288
00289
00315 virtual void parse
00316 (
00317 const InputSource& source
00318 ) = 0;
00319
00339 virtual void parse
00340 (
00341 const XMLCh* const systemId
00342 ) = 0;
00343
00363 virtual void parse
00364 (
00365 const char* const systemId
00366 ) = 0;
00367
00384 virtual void setContentHandler(ContentHandler* const handler) = 0;
00385
00401 virtual void setDTDHandler(DTDHandler* const handler) = 0;
00402
00419 virtual void setEntityResolver(EntityResolver* const resolver) = 0;
00420
00438 virtual void setErrorHandler(ErrorHandler* const handler) = 0;
00439
00456 virtual void setLexicalHandler(LexicalHandler* const handler) = 0;
00457
00474 virtual void setDeclarationHandler(DeclHandler* const handler) = 0;
00475
00491 virtual void setExitOnFirstFatalError(const bool newState) = 0;
00492
00508 virtual void setValidationConstraintFatal(const bool newState) = 0;
00509
00530 virtual void setFeature(const XMLCh* const name, const bool value) = 0;
00531
00555 virtual void setProperty(const XMLCh* const name, void* value) = 0 ;
00556
00558
00559
00560
00561
00562
00565
00596 virtual bool parseFirst
00597 (
00598 const XMLCh* const systemId
00599 , XMLPScanToken& toFill
00600 , const bool reuseGrammar = false
00601 ) = 0;
00602
00633 virtual bool parseFirst
00634 (
00635 const char* const systemId
00636 , XMLPScanToken& toFill
00637 , const bool reuseGrammar = false
00638 ) = 0;
00639
00670 virtual bool parseFirst
00671 (
00672 const InputSource& source
00673 , XMLPScanToken& toFill
00674 , const bool reuseGrammar = false
00675 ) = 0;
00676
00701 virtual bool parseNext(XMLPScanToken& token) = 0;
00702
00724 virtual void parseReset(XMLPScanToken& token) = 0;
00725
00727
00728
00729
00730
00731
00734
00743 virtual void setValidator(XMLValidator* valueToAdopt) = 0;
00744
00755 virtual XMLValidator* getValidator() const = 0;
00757
00758
00759
00760
00761
00764
00777 virtual void installAdvDocHandler(XMLDocumentHandler* const toInstall) = 0;
00778
00788 virtual bool removeAdvDocHandler(XMLDocumentHandler* const toRemove) = 0;
00790
00791 private :
00792
00793 SAX2XMLReader(const SAX2XMLReader&);
00794
00795
00796 void operator=(const SAX2XMLReader&);
00797
00798 };
00799
00800 #endif