00001 #ifndef DOMBuilder_HEADER_GUARD_
00002 #define DOMBuilder_HEADER_GUARD_
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 #include <xercesc/util/XercesDefs.hpp>
00067
00068 class DOMErrorHandler;
00069 class DOMEntityResolver;
00070 class DOMInputSource;
00071 class DOMBuilderFilter;
00072 class DOMNode;
00073 class DOMDocument;
00074 class Grammar;
00075
00086 class DOMBuilder
00087 {
00088 protected :
00089
00090
00091
00094
00095 DOMBuilder(const DOMBuilder &) {};
00096 DOMBuilder & operator = (const DOMBuilder &) {return *this;};
00098
00099 public:
00100
00101
00102
00105
00109 virtual ~DOMBuilder() {};
00111
00112
00113
00114
00117
00144 enum ActionType
00145 {
00146 ACTION_REPLACE = 1,
00147 ACTION_APPEND_AS_CHILDREN = 2,
00148 ACTION_INSERT_AFTER = 3,
00149 ACTION_INSERT_BEFORE = 4
00150 };
00152
00153
00154
00155
00158
00159
00160
00161
00162
00174 virtual DOMErrorHandler* getErrorHandler() = 0;
00175
00187 virtual const DOMErrorHandler* getErrorHandler() const = 0;
00188
00200 virtual DOMEntityResolver* getEntityResolver() = 0;
00201
00213 virtual const DOMEntityResolver* getEntityResolver() const = 0;
00214
00226 virtual DOMBuilderFilter* getFilter() = 0;
00227
00239 virtual const DOMBuilderFilter* getFilter() const = 0;
00240
00241
00242
00243
00261 virtual void setErrorHandler(DOMErrorHandler* const handler) = 0;
00262
00282 virtual void setEntityResolver(DOMEntityResolver* const handler) = 0;
00283
00305 virtual void setFilter(DOMBuilderFilter* const filter) = 0;
00306
00307
00308
00309
00333 virtual void setFeature(const XMLCh* const name, const bool state) = 0;
00334
00350 virtual bool getFeature(const XMLCh* const name) const = 0;
00351
00368 virtual bool canSetFeature(const XMLCh* const name, const bool state) const = 0;
00369
00370
00371
00372
00403 virtual DOMDocument* parse(const DOMInputSource& source) = 0;
00404
00432 virtual DOMDocument* parseURI(const XMLCh* const systemId) = 0;
00433
00460 virtual DOMDocument* parseURI(const char* const systemId) = 0;
00461
00490 virtual void parseWithContext
00491 (
00492 const DOMInputSource& source
00493 , DOMNode* const contextNode
00494 , const short action
00495 ) = 0;
00497
00498
00499
00500
00503
00525 virtual void* getProperty(const XMLCh* const name) const = 0 ;
00526
00548 virtual void setProperty(const XMLCh* const name, void* value) = 0 ;
00549
00556 virtual void release() = 0;
00557
00581 virtual void resetDocumentPool() = 0;
00582
00610 virtual Grammar* loadGrammar(const DOMInputSource& source,
00611 const short grammarType,
00612 const bool toCache = false) = 0;
00613
00639 virtual Grammar* loadGrammar(const XMLCh* const systemId,
00640 const short grammarType,
00641 const bool toCache = false) = 0;
00642
00668 virtual Grammar* loadGrammar(const char* const systemId,
00669 const short grammarType,
00670 const bool toCache = false) = 0;
00671
00678 virtual Grammar* getGrammar(const XMLCh* const nameSpaceKey) const = 0;
00679
00685 virtual Grammar* getRootGrammar() const = 0;
00686
00693 virtual const XMLCh* getURIText(unsigned int uriId) const = 0;
00694
00698 virtual void resetCachedGrammarPool() = 0;
00699
00701
00702 };
00703
00704
00705 #endif