knoaman 2002/12/27 08:16:51
Modified: c/src/xercesc/dom/deprecated DOMParser.cpp
c/src/xercesc/internal XMLScanner.cpp XMLScanner.hpp
c/src/xercesc/parsers AbstractDOMParser.cpp
SAX2XMLReaderImpl.cpp SAXParser.cpp
Log:
Set scanner options and handlers.
Revision Changes Path
1.12 +4 -4 xml-xerces/c/src/xercesc/dom/deprecated/DOMParser.cpp
Index: DOMParser.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/dom/deprecated/DOMParser.cpp,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- DOMParser.cpp 23 Dec 2002 15:23:17 -0000 1.11
+++ DOMParser.cpp 27 Dec 2002 16:16:50 -0000 1.12
@@ -383,11 +383,11 @@
if (tempScanner) {
- // REVISIT: need to set scanner options and handlers
+ tempScanner->setParseSettings(fScanner);
+ tempScanner->setGrammarResolver(fGrammarResolver);
+ tempScanner->setURIStringPool(fURIStringPool);
delete fScanner;
fScanner = tempScanner;
- fScanner->setGrammarResolver(fGrammarResolver);
- fScanner->setURIStringPool(fURIStringPool);
}
}
1.33 +21 -2 xml-xerces/c/src/xercesc/internal/XMLScanner.cpp
Index: XMLScanner.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/internal/XMLScanner.cpp,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -r1.32 -r1.33
--- XMLScanner.cpp 24 Dec 2002 16:11:39 -0000 1.32
+++ XMLScanner.cpp 27 Dec 2002 16:16:50 -0000 1.33
@@ -540,7 +540,26 @@
fErrorCount = 0;
}
-
+void XMLScanner::setParseSettings(XMLScanner* const refScanner)
+{
+ setDocHandler(refScanner->getDocHandler());
+ setDocTypeHandler(refScanner->getDocTypeHandler());
+ setErrorHandler(refScanner->getErrorHandler());
+ setErrorReporter(refScanner->getErrorReporter());
+ setEntityHandler(refScanner->getEntityHandler());
+ setDoNamespaces(refScanner->getDoNamespaces());
+ setDoSchema(refScanner->getDoSchema());
+ setCalculateSrcOfs(refScanner->getCalculateSrcOfs());
+ setExitOnFirstFatal(refScanner->getExitOnFirstFatal());
+ setValidationConstraintFatal(refScanner->getValidationConstraintFatal());
+ setValidationSchemaFullChecking(refScanner->getValidationSchemaFullChecking());
+ cacheGrammarFromParse(refScanner->isCachingGrammarFromParse());
+ useCachedGrammarInParse(refScanner->isUsingCachedGrammarInParse());
+ setLoadExternalDTD(refScanner->getLoadExternalDTD());
+ setNormalizeData(refScanner->getNormalizeData());
+ setExternalSchemaLocation(refScanner->getExternalSchemaLocation());
+
setExternalNoNamespaceSchemaLocation(refScanner->getExternalNoNamespaceSchemaLocation());
+}
// ---------------------------------------------------------------------------
// XMLScanner: Private helper methods.
1.15 +17 -1 xml-xerces/c/src/xercesc/internal/XMLScanner.hpp
Index: XMLScanner.hpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/internal/XMLScanner.hpp,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- XMLScanner.hpp 20 Dec 2002 22:09:56 -0000 1.14
+++ XMLScanner.hpp 27 Dec 2002 16:16:51 -0000 1.15
@@ -56,6 +56,9 @@
/*
* $Log$
+ * Revision 1.15 2002/12/27 16:16:51 knoaman
+ * Set scanner options and handlers.
+ *
* Revision 1.14 2002/12/20 22:09:56 tng
* XML 1.1
*
@@ -408,6 +411,8 @@
XMLEntityHandler* getEntityHandler();
const XMLErrorReporter* getErrorReporter() const;
XMLErrorReporter* getErrorReporter();
+ const ErrorHandler* getErrorHandler() const;
+ ErrorHandler* getErrorHandler();
bool getExitOnFirstFatal() const;
bool getValidationConstraintFatal() const;
RefHashTableOf<XMLRefInfo>* getIDRefList();
@@ -527,6 +532,7 @@
void setLoadExternalDTD(const bool loadDTD);
void setNormalizeData(const bool normalizeData);
void setCalculateSrcOfs(const bool newValue);
+ void setParseSettings(XMLScanner* const refScanner);
// -----------------------------------------------------------------------
// Mutator methods
@@ -577,7 +583,7 @@
// -----------------------------------------------------------------------
// Grammar preparsing methods
- // -----------------------------------------------------------------------
+ // -----------------------------------------------------------------------
Grammar* loadGrammar
(
const XMLCh* const systemId
@@ -932,6 +938,16 @@
inline XMLErrorReporter* XMLScanner::getErrorReporter()
{
return fErrorReporter;
+}
+
+inline const ErrorHandler* XMLScanner::getErrorHandler() const
+{
+ return fErrorHandler;
+}
+
+inline ErrorHandler* XMLScanner::getErrorHandler()
+{
+ return fErrorHandler;
}
inline bool XMLScanner::getExitOnFirstFatal() const
1.30 +4 -6 xml-xerces/c/src/xercesc/parsers/AbstractDOMParser.cpp
Index: AbstractDOMParser.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/parsers/AbstractDOMParser.cpp,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- AbstractDOMParser.cpp 4 Dec 2002 22:00:31 -0000 1.29
+++ AbstractDOMParser.cpp 27 Dec 2002 16:16:51 -0000 1.30
@@ -378,13 +378,11 @@
if (tempScanner) {
- // REVISIT: need to set scanner options and handlers
+ tempScanner->setParseSettings(fScanner);
+ tempScanner->setGrammarResolver(fGrammarResolver);
+ tempScanner->setURIStringPool(fURIStringPool);
delete fScanner;
fScanner = tempScanner;
- fScanner->setDocHandler(this);
- fScanner->setDocTypeHandler(this);
- fScanner->setGrammarResolver(fGrammarResolver);
- fScanner->setURIStringPool(fURIStringPool);
}
}
1.15 +4 -1 xml-xerces/c/src/xercesc/parsers/SAX2XMLReaderImpl.cpp
Index: SAX2XMLReaderImpl.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/parsers/SAX2XMLReaderImpl.cpp,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- SAX2XMLReaderImpl.cpp 11 Dec 2002 22:14:54 -0000 1.14
+++ SAX2XMLReaderImpl.cpp 27 Dec 2002 16:16:51 -0000 1.15
@@ -56,6 +56,9 @@
/*
* $Log$
+ * Revision 1.15 2002/12/27 16:16:51 knoaman
+ * Set scanner options and handlers.
+ *
* Revision 1.14 2002/12/11 22:14:54 knoaman
* Performance: no need to use temporary buffer to hold namespace value.
*
@@ -1488,7 +1491,7 @@
if (tempScanner) {
- // REVISIT: set scanner options and handlers
+ tempScanner->setParseSettings(fScanner);
tempScanner->setGrammarResolver(fGrammarResolver);
tempScanner->setURIStringPool(fURIStringPool);
delete fScanner;
1.12 +7 -3 xml-xerces/c/src/xercesc/parsers/SAXParser.cpp
Index: SAXParser.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/parsers/SAXParser.cpp,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- SAXParser.cpp 23 Dec 2002 15:23:18 -0000 1.11
+++ SAXParser.cpp 27 Dec 2002 16:16:51 -0000 1.12
@@ -56,6 +56,9 @@
/*
* $Log$
+ * Revision 1.12 2002/12/27 16:16:51 knoaman
+ * Set scanner options and handlers.
+ *
* Revision 1.11 2002/12/23 15:23:18 knoaman
* Added a public api to various parsers to return the src offset within the input
* source.
@@ -553,11 +556,11 @@
if (tempScanner) {
- // REVISIT: need to set scanner options and handlers
+ tempScanner->setParseSettings(fScanner);
+ tempScanner->setGrammarResolver(fGrammarResolver);
+ tempScanner->setURIStringPool(fURIStringPool);
delete fScanner;
fScanner = tempScanner;
- fScanner->setGrammarResolver(fGrammarResolver);
- fScanner->setURIStringPool(fURIStringPool);
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]