zongaro 2002/08/24 04:33:42
Modified: java/src/org/apache/xalan/xsltc/dom Tag: XSLTC_DTM
XSLTCDTMManager.java
Log:
Eliminated use of DTDMonitor in building an XSLTC DOM object. Instead, the
nested DOMBuilderImpl classes of DOMImpl and SAXImpl now implement the
DTDHandler and DeclHandler SAX interfaces (and the ExtendedSAX interface now
extends them).
DTDMonitor was responsible for capturing information from SAX events relating
to unparsed entities and ID attribute values, and gave that information to the
translet, where it was ultimately stored. With this change, DOMImpl and
SAXImpl
are responsible for capturing this information; in the case of ID attribute
values, the information is again given back to the translet, which treats them
in the same manner as xsl:key elements. So the XSLTC DOM interface (and the
classes that implement it) now add a getUnparsedEntityURI method and a
getElementsWithID method.
With these changes, we now use DOMImpl to build an XSLTC DOM from a DOMSource
object, rather than using DOM2SAX to build the XSLTC DOM from SAX events.
Currently, this requires an extra call to the post-processing method
createMappings to traverse the DOM, gathering information in the form required
by the XSLTC DOM interface, which SAXImpl gathers as SAX events are fired.
Revision Changes Path
No revision
No revision
1.1.2.3 +6 -0
xml-xalan/java/src/org/apache/xalan/xsltc/dom/Attic/XSLTCDTMManager.java
Index: XSLTCDTMManager.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/dom/Attic/XSLTCDTMManager.java,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -u -r1.1.2.2 -r1.1.2.3
--- XSLTCDTMManager.java 13 Aug 2002 21:20:23 -0000 1.1.2.2
+++ XSLTCDTMManager.java 24 Aug 2002 11:33:42 -0000 1.1.2.3
@@ -241,6 +241,9 @@
addDTM(dtm, dtmPos);
+ // %HZ% %REVISIT%: I hate calling this here!
+ dtm.createMappings();
+
// if (DUMPTREE)
// {
// dtm.dumpDTM();
@@ -464,6 +467,9 @@
whiteSpaceFilter, xstringFactory,
doIndexing, size);
addDTM(dtm, dtmPos);
+
+ // %HZ% %REVISIT%: I hate calling this here!
+ dtm.createMappings();
// if (DUMPTREE)
// {
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]