You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by ne...@apache.org on 2003/01/16 18:10:10 UTC
cvs commit: xml-xerces/java/src/org/apache/xerces/impl/dtd XMLDTDLoader.java
neilg 2003/01/16 09:10:10
Modified: java/src/org/apache/xerces/impl XMLEntityManager.java
java/src/org/apache/xerces/impl/dtd XMLDTDLoader.java
Log:
make DTD preparsing work again.
Revision Changes Path
1.57 +10 -1 xml-xerces/java/src/org/apache/xerces/impl/XMLEntityManager.java
Index: XMLEntityManager.java
===================================================================
RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/impl/XMLEntityManager.java,v
retrieving revision 1.56
retrieving revision 1.57
diff -u -r1.56 -r1.57
--- XMLEntityManager.java 13 Jan 2003 22:21:47 -0000 1.56
+++ XMLEntityManager.java 16 Jan 2003 17:10:10 -0000 1.57
@@ -1199,7 +1199,16 @@
catch (XMLConfigurationException e) {
fSecurityManager = null;
}
+
+ // reset general state
+ reset();
+ } // reset(XMLComponentManager)
+
+ // reset general state. Should not be called other than by
+ // a class acting as a component manager but not
+ // implementing that interface for whatever reason.
+ public void reset() {
fEntityExpansionLimit = (fSecurityManager != null)?fSecurityManager.getEntityExpansionLimit():0;
// initialize state
1.6 +9 -3 xml-xerces/java/src/org/apache/xerces/impl/dtd/XMLDTDLoader.java
Index: XMLDTDLoader.java
===================================================================
RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/impl/dtd/XMLDTDLoader.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- XMLDTDLoader.java 16 Aug 2002 21:18:52 -0000 1.5
+++ XMLDTDLoader.java 16 Jan 2003 17:10:10 -0000 1.6
@@ -176,7 +176,6 @@
fDTDScanner = new XMLDTDScannerImpl(fSymbolTable, fErrorReporter, fEntityManager);
fDTDScanner.setDTDHandler(this);
fDTDScanner.setDTDContentModelHandler(this);
- fEntityManager.setProperty(ERROR_REPORTER, fErrorReporter);
reset();
} // init(SymbolTable, XMLGrammarPool, XMLErrorReporter, XMLEntityResolver)
@@ -268,6 +267,7 @@
} else if(propertyId.equals( ERROR_REPORTER)) {
fErrorReporter = (XMLErrorReporter)value;
fDTDScanner.setProperty(propertyId, value);
+ fEntityManager.setProperty(propertyId, value);
} else if(propertyId.equals( ERROR_HANDLER)) {
fErrorReporter.setProperty(propertyId, value);
} else if(propertyId.equals( ENTITY_RESOLVER)) {
@@ -357,7 +357,6 @@
public Grammar loadGrammar(XMLInputSource source)
throws IOException, XNIException {
reset();
- fDTDScanner.reset();
fDTDGrammar = new DTDGrammar(fSymbolTable, new XMLDTDDescription(source.getPublicId(), source.getSystemId(), source.getBaseSystemId(), fEntityManager.expandSystemId(source.getSystemId()), null));
fGrammarBucket = new DTDGrammarBucket();
fGrammarBucket.setStandalone(false);
@@ -377,5 +376,12 @@
}
return fDTDGrammar;
} // loadGrammar(XMLInputSource): Grammar
+
+ // reset all the components that we rely upon
+ protected void reset() {
+ super.reset();
+ fDTDScanner.reset();
+ fEntityManager.reset();
+ }
} // class XMLDTDLoader
---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-cvs-help@xml.apache.org