Fix for XALANJ-2323 is applied making both ToHTMLSAXHandler and
ToTextSAXHandler obsolete.
Only ToXMLSAXHandler is used from now on, so no optimizations
are done. Rather this kind of object converts our internal SAX-like
calls to true SAX calls on the ContentHandler, which
may be a user defined one.
diff --git a/src/org/apache/xalan/transformer/TransformerImpl.java b/src/org/apache/xalan/transformer/TransformerImpl.java
index a59ad1b..f999f6d 100644
--- a/src/org/apache/xalan/transformer/TransformerImpl.java
+++ b/src/org/apache/xalan/transformer/TransformerImpl.java
@@ -72,9 +72,7 @@
import org.apache.xml.dtm.DTMIterator;
import org.apache.xml.dtm.DTMManager;
import org.apache.xml.dtm.DTMWSFilter;
-import org.apache.xml.serializer.ToHTMLSAXHandler;
import org.apache.xml.serializer.ToSAXHandler;
-import org.apache.xml.serializer.ToTextSAXHandler;
import org.apache.xml.serializer.ToTextStream;
import org.apache.xml.serializer.ToXMLSAXHandler;
import org.apache.xml.serializer.SerializationHandler;
@@ -1140,21 +1138,11 @@
String encoding = format.getProperty(OutputKeys.ENCODING);
String method = format.getProperty(OutputKeys.METHOD);
- if (org.apache.xml.serializer.Method.HTML.equals(method))
- {
- xoh = new ToHTMLSAXHandler(handler, lexHandler, encoding);
- }
- else if (org.apache.xml.serializer.Method.TEXT.equals(method))
- {
- xoh = new ToTextSAXHandler(handler, lexHandler, encoding);
- }
- else
- {
- ToXMLSAXHandler toXMLSAXHandler = new ToXMLSAXHandler(handler, lexHandler, encoding);
- toXMLSAXHandler.setShouldOutputNSAttr(false);
- xoh = toXMLSAXHandler;
-
- }
+
+ ToXMLSAXHandler toXMLSAXHandler = new ToXMLSAXHandler(handler, lexHandler, encoding);
+ toXMLSAXHandler.setShouldOutputNSAttr(false);
+ xoh = toXMLSAXHandler;
+
String publicID = format.getProperty(OutputKeys.DOCTYPE_PUBLIC);
String systemID = format.getProperty(OutputKeys.DOCTYPE_SYSTEM);
diff --git a/src/org/apache/xalan/xsltc/runtime/output/TransletOutputHandlerFactory.java b/src/org/apache/xalan/xsltc/runtime/output/TransletOutputHandlerFactory.java
index 2e2581b..dc45edb 100644
--- a/src/org/apache/xalan/xsltc/runtime/output/TransletOutputHandlerFactory.java
+++ b/src/org/apache/xalan/xsltc/runtime/output/TransletOutputHandlerFactory.java
@@ -28,9 +28,7 @@
import javax.xml.parsers.ParserConfigurationException;
import org.apache.xalan.xsltc.trax.SAX2DOM;
-import org.apache.xml.serializer.ToHTMLSAXHandler;
import org.apache.xml.serializer.ToHTMLStream;
-import org.apache.xml.serializer.ToTextSAXHandler;
import org.apache.xml.serializer.ToTextStream;
import org.apache.xml.serializer.ToUnknownStream;
import org.apache.xml.serializer.ToXMLSAXHandler;
@@ -170,57 +168,19 @@
_method = "xml"; // default case
}
- if (_method.equalsIgnoreCase("xml"))
+ if (_lexHandler == null)
{
-
- if (_lexHandler == null)
- {
- result = new ToXMLSAXHandler(_handler, _encoding);
- }
- else
- {
- result =
- new ToXMLSAXHandler(
- _handler,
- _lexHandler,
- _encoding);
- }
-
+ result = new ToXMLSAXHandler(_handler, _encoding);
}
- else if (_method.equalsIgnoreCase("html"))
+ else
{
-
- if (_lexHandler == null)
- {
- result = new ToHTMLSAXHandler(_handler, _encoding);
- }
- else
- {
- result =
- new ToHTMLSAXHandler(
- _handler,
- _lexHandler,
- _encoding);
- }
-
+ result =
+ new ToXMLSAXHandler(
+ _handler,
+ _lexHandler,
+ _encoding);
}
- else if (_method.equalsIgnoreCase("text"))
- {
- if (_lexHandler == null)
- {
- result = new ToTextSAXHandler(_handler, _encoding);
- }
- else
- {
- result =
- new ToTextSAXHandler(
- _handler,
- _lexHandler,
- _encoding);
- }
-
- }
return result;
}
return null;