morten 01/10/31 02:19:37
Modified: java/src/org/apache/xalan/xsltc/dom DOMImpl.java
java/src/org/apache/xalan/xsltc/runtime SAXAdapter.java
Log:
Updated the SAXAdapter used to build result tree fragments to handle comments.
PR: bugzilla 4172
Obtained from: n/a
Submitted by: [EMAIL PROTECTED]
Reviewed by: [EMAIL PROTECTED]
Revision Changes Path
1.56 +3 -2
xml-xalan/java/src/org/apache/xalan/xsltc/dom/DOMImpl.java
Index: DOMImpl.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/dom/DOMImpl.java,v
retrieving revision 1.55
retrieving revision 1.56
diff -u -r1.55 -r1.56
--- DOMImpl.java 2001/10/30 15:49:32 1.55
+++ DOMImpl.java 2001/10/31 10:19:36 1.56
@@ -1,5 +1,5 @@
/*
- * @(#)$Id: DOMImpl.java,v 1.55 2001/10/30 15:49:32 morten Exp $
+ * @(#)$Id: DOMImpl.java,v 1.56 2001/10/31 10:19:36 morten Exp $
*
* The Apache Software License, Version 1.1
*
@@ -2754,7 +2754,8 @@
* DOM builder's interface is pure SAX2 (must investigate)
*/
public TransletOutputHandler getOutputDomBuilder() {
- return new SAXAdapter(getBuilder());
+ DOMBuilder builder = getBuilder();
+ return new SAXAdapter(builder, builder);
}
/**
1.9 +13 -1
xml-xalan/java/src/org/apache/xalan/xsltc/runtime/SAXAdapter.java
Index: SAXAdapter.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/runtime/SAXAdapter.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- SAXAdapter.java 2001/10/30 14:57:54 1.8
+++ SAXAdapter.java 2001/10/31 10:19:37 1.9
@@ -1,5 +1,5 @@
/*
- * @(#)$Id: SAXAdapter.java,v 1.8 2001/10/30 14:57:54 morten Exp $
+ * @(#)$Id: SAXAdapter.java,v 1.9 2001/10/31 10:19:37 morten Exp $
*
* The Apache Software License, Version 1.1
*
@@ -65,19 +65,27 @@
package org.apache.xalan.xsltc.runtime;
import org.xml.sax.*;
+import org.xml.sax.ext.LexicalHandler;
import org.apache.xalan.xsltc.*;
public final class SAXAdapter implements TransletOutputHandler {
private final ContentHandler _saxHandler;
+ private final LexicalHandler _lexHandler;
private final AttributeList _attributes = new AttributeList();
private String _openElementName;
public SAXAdapter(ContentHandler saxHandler) {
_saxHandler = saxHandler;
+ _lexHandler = null;
}
+ public SAXAdapter(ContentHandler saxHandler, LexicalHandler lexHandler) {
+ _saxHandler = saxHandler;
+ _lexHandler = lexHandler;
+ }
+
private void maybeEmitStartElement() throws SAXException {
if (_openElementName != null) {
_saxHandler.startElement(null, null, _openElementName, _attributes);
@@ -153,6 +161,10 @@
public void comment(String comment) throws TransletException {
try {
maybeEmitStartElement();
+ if (_lexHandler != null) {
+ char[] chars = comment.toCharArray();
+ _lexHandler.comment(chars, 0, chars.length);
+ }
}
catch (SAXException e) {
throw new TransletException(e);
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]