santiagopg 2002/06/11 13:11:19
Modified: java/src/org/apache/xalan/xsltc/cmdline Transform.java
java/src/org/apache/xalan/xsltc/compiler Constants.java
Output.java
java/src/org/apache/xalan/xsltc/runtime
AbstractTranslet.java TextOutput.java
java/src/org/apache/xalan/xsltc/runtime/output
SAXOutput.java StreamHTMLOutput.java
StreamUnknownOutput.java StreamXMLOutput.java
java/src/org/apache/xalan/xsltc/trax
TemplatesHandlerImpl.java TemplatesImpl.java
TransformerFactoryImpl.java TransformerImpl.java
Log:
New output system installed.
Revision Changes Path
1.20 +9 -9
xml-xalan/java/src/org/apache/xalan/xsltc/cmdline/Transform.java
Index: Transform.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/cmdline/Transform.java,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- Transform.java 28 May 2002 19:35:26 -0000 1.19
+++ Transform.java 11 Jun 2002 20:11:17 -0000 1.20
@@ -97,7 +97,7 @@
final public class Transform {
// Temporary
- static private boolean _useExperimentalOutputSystem = false;
+ static private boolean _useOldOutputSystem = false;
private TransletOutputHandler _handler;
@@ -210,16 +210,16 @@
tohFactory.setOutputMethod(_translet._method);
if (_iterations == -1) {
- translet.transform(dom, _useExperimentalOutputSystem ?
- tohFactory.getTransletOutputHandler() :
-
tohFactory.getOldTransletOutputHandler());
+ translet.transform(dom, _useOldOutputSystem ?
+
tohFactory.getOldTransletOutputHandler() :
+ tohFactory.getTransletOutputHandler());
}
else if (_iterations > 0) {
long mm = System.currentTimeMillis();
for (int i = 0; i < _iterations; i++) {
- translet.transform(dom, _useExperimentalOutputSystem ?
-
tohFactory.getTransletOutputHandler() :
-
tohFactory.getOldTransletOutputHandler());
+ translet.transform(dom, _useOldOutputSystem ?
+
tohFactory.getOldTransletOutputHandler() :
+
tohFactory.getTransletOutputHandler());
}
mm = System.currentTimeMillis() - mm;
@@ -320,7 +320,7 @@
jarFile = args[++i];
}
else if (args[i].equals("-e")) {
- _useExperimentalOutputSystem = true;
+ _useOldOutputSystem = true;
}
else if (args[i].equals("-n")) {
try {
1.22 +1 -5
xml-xalan/java/src/org/apache/xalan/xsltc/compiler/Constants.java
Index: Constants.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/compiler/Constants.java,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- Constants.java 26 Apr 2002 18:11:24 -0000 1.21
+++ Constants.java 11 Jun 2002 20:11:17 -0000 1.22
@@ -171,10 +171,6 @@
= "org/apache/xalan/xsltc/TransletOutputHandler";
public static final String OUTPUT_HANDLER_SIG
= "Lorg/apache/xalan/xsltc/TransletOutputHandler;";
- public static final String TEXT_OUTPUT
- = "org/apache/xalan/xsltc/runtime/TextOutput";
- public static final String TEXT_OUTPUT_SIG
- = "Lorg/apache/xalan/xsltc/runtime/TextOutput;";
public static final String FILTER_INTERFACE
= "org.apache.xalan.xsltc.dom.Filter";
public static final String FILTER_INTERFACE_SIG
1.13 +1 -2
xml-xalan/java/src/org/apache/xalan/xsltc/compiler/Output.java
Index: Output.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/compiler/Output.java,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- Output.java 1 Feb 2002 20:07:08 -0000 1.12
+++ Output.java 11 Jun 2002 20:11:18 -0000 1.13
@@ -73,7 +73,6 @@
import org.apache.bcel.classfile.JavaClass;
import org.apache.xalan.xsltc.compiler.util.*;
-import org.apache.xalan.xsltc.runtime.TextOutput;
final class Output extends TopLevelElement {
1.38 +40 -30
xml-xalan/java/src/org/apache/xalan/xsltc/runtime/AbstractTranslet.java
Index: AbstractTranslet.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/runtime/AbstractTranslet.java,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -r1.37 -r1.38
--- AbstractTranslet.java 8 Jun 2002 14:04:00 -0000 1.37
+++ AbstractTranslet.java 11 Jun 2002 20:11:18 -0000 1.38
@@ -77,6 +77,7 @@
import org.apache.xalan.xsltc.dom.KeyIndex;
import org.apache.xalan.xsltc.dom.DTDMonitor;
import org.apache.xalan.xsltc.util.IntegerArray;
+import org.apache.xalan.xsltc.runtime.output.*;
public abstract class AbstractTranslet implements Translet {
@@ -487,17 +488,22 @@
************************************************************************/
public TransletOutputHandler openOutputHandler(String filename)
- throws TransletException {
+ throws TransletException
+ {
try {
- // Use the default SAX handler to send the output to the file
- DefaultSAXOutputHandler handler =
- new DefaultSAXOutputHandler(filename, _encoding);
-
- // Create a translet output handler and plug in the SAX handler
- TextOutput text = new TextOutput(handler, handler, _encoding);
- transferOutputSettings(text);
- text.startDocument();
- return(text);
+ final TransletOutputHandlerFactory factory
+ = TransletOutputHandlerFactory.newInstance();
+
+ factory.setEncoding(_encoding);
+ factory.setOutputMethod(_method);
+ factory.setOutputType(TransletOutputHandlerFactory.STREAM);
+
+ final TransletOutputHandler handler
+ = factory.getTransletOutputHandler();
+
+ transferOutputSettings(handler);
+ handler.startDocument();
+ return handler;
}
catch (Exception e) {
throw new TransletException(e);
@@ -556,38 +562,42 @@
* Transfer the output settings to the output post-processor
*/
protected void transferOutputSettings(TransletOutputHandler handler) {
- // Transfer the output method setting
if (_method != null) {
- // Transfer all settings relevant to XML output
if (_method.equals("xml")) {
- if (_standalone != null) handler.setStandalone(_standalone);
- if (_omitHeader) handler.omitHeader(true);
- handler.setType(TextOutput.XML);
+ if (_standalone != null) {
+ handler.setStandalone(_standalone);
+ }
+ if (_omitHeader) {
+ handler.omitHeader(true);
+ }
handler.setCdataElements(_cdata);
- if (_version != null) handler.setVersion(_version);
+ if (_version != null) {
+ handler.setVersion(_version);
+ }
handler.setIndent(_indent);
- if (_doctypeSystem != null)
+ if (_doctypeSystem != null) {
handler.setDoctype(_doctypeSystem, _doctypePublic);
+ }
}
- // Transfer all output settings relevant to HTML output
else if (_method.equals("html")) {
- handler.setType(TextOutput.HTML);
handler.setIndent(_indent);
handler.setDoctype(_doctypeSystem, _doctypePublic);
- if (_mediaType != null) handler.setMediaType(_mediaType);
- }
- else if (_method.equals("text")) {
- handler.setType(TextOutput.TEXT);
- }
- else {
- handler.setType(TextOutput.QNAME);
+ if (_mediaType != null) {
+ handler.setMediaType(_mediaType);
+ }
}
}
else {
handler.setCdataElements(_cdata);
- if (_version != null) handler.setVersion(_version);
- if (_standalone != null) handler.setStandalone(_standalone);
- if (_omitHeader) handler.omitHeader(true);
+ if (_version != null) {
+ handler.setVersion(_version);
+ }
+ if (_standalone != null) {
+ handler.setStandalone(_standalone);
+ }
+ if (_omitHeader) {
+ handler.omitHeader(true);
+ }
handler.setIndent(_indent);
handler.setDoctype(_doctypeSystem, _doctypePublic);
}
1.57 +1 -9
xml-xalan/java/src/org/apache/xalan/xsltc/runtime/TextOutput.java
Index: TextOutput.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/runtime/TextOutput.java,v
retrieving revision 1.56
retrieving revision 1.57
diff -u -r1.56 -r1.57
--- TextOutput.java 14 May 2002 19:50:21 -0000 1.56
+++ TextOutput.java 11 Jun 2002 20:11:18 -0000 1.57
@@ -834,14 +834,6 @@
BasisLibrary.runTimeError(BasisLibrary.STRAY_ATTRIBUTE_ERR,
patchedName);
}
-/*
-System.err.println("TextOutput.attribute() uri = " + uri
- + " localname = " + localName
- + " qname = " + name
- + "\n value = " + value
- + " escapeString(value) = " + escapeString(value));
-*/
-
// Output as namespace declaration
if (name.startsWith(XMLNS_PREFIX)) {
namespace(name.length() > 6 ? name.substring(6) : EMPTYSTRING,
value);
1.11 +5 -7
xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output/SAXOutput.java
Index: SAXOutput.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output/SAXOutput.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- SAXOutput.java 10 Jun 2002 15:45:59 -0000 1.10
+++ SAXOutput.java 11 Jun 2002 20:11:18 -0000 1.11
@@ -132,14 +132,12 @@
}
/**
- * returns the local name of a qualified name. If the name has no prefix
- * then return null.
+ * Returns the local name of a qualified name. If the name has
+ * no prefix, then it works as the identity (SAX2).
*/
- protected static String getLocalName(String qname) throws
- TransletException
- {
+ protected static String getLocalName(String qname) {
final int col = qname.lastIndexOf(':');
- return (col > 0) ? qname.substring(col + 1) : null;
+ return (col > 0) ? qname.substring(col + 1) : qname;
}
protected void closeStartTag() throws TransletException {
1.8 +5 -1
xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output/StreamHTMLOutput.java
Index: StreamHTMLOutput.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output/StreamHTMLOutput.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- StreamHTMLOutput.java 4 Jun 2002 22:02:16 -0000 1.7
+++ StreamHTMLOutput.java 11 Jun 2002 20:11:18 -0000 1.8
@@ -98,6 +98,8 @@
public StreamHTMLOutput(StreamOutput output) {
super(output);
+// System.out.println("StreamHTMLOutput.<init>");
+
// Transfer output settings
setDoctype(output._doctypeSystem, output._doctypePublic);
omitHeader(output._omitHeader);
@@ -109,12 +111,14 @@
public StreamHTMLOutput(Writer writer, String encoding) {
super(writer, encoding);
+// System.out.println("StreamHTMLOutput.<init>");
}
public StreamHTMLOutput(OutputStream out, String encoding)
throws IOException
{
super(out, encoding);
+// System.out.println("StreamHTMLOutput.<init>");
}
public void startDocument() throws TransletException {
1.3 +3 -1
xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output/StreamUnknownOutput.java
Index: StreamUnknownOutput.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output/StreamUnknownOutput.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- StreamUnknownOutput.java 4 Jun 2002 22:02:16 -0000 1.2
+++ StreamUnknownOutput.java 11 Jun 2002 20:11:18 -0000 1.3
@@ -85,6 +85,7 @@
public StreamUnknownOutput(Writer writer, String encoding) {
super(writer, encoding);
_handler = new StreamXMLOutput(writer, encoding);
+// System.out.println("StreamUnknownOutput.<init>");
}
public StreamUnknownOutput(OutputStream out, String encoding)
@@ -92,6 +93,7 @@
{
super(out, encoding);
_handler = new StreamXMLOutput(out, encoding);
+// System.out.println("StreamUnknownOutput.<init>");
}
public void startDocument() throws TransletException {
1.13 +3 -1
xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output/StreamXMLOutput.java
Index: StreamXMLOutput.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/runtime/output/StreamXMLOutput.java,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- StreamXMLOutput.java 4 Jun 2002 22:02:16 -0000 1.12
+++ StreamXMLOutput.java 11 Jun 2002 20:11:18 -0000 1.13
@@ -90,6 +90,7 @@
super(writer, encoding);
initCDATA();
initNamespaces();
+// System.out.println("StreamXMLOutput.<init>");
}
public StreamXMLOutput(OutputStream out, String encoding)
@@ -98,6 +99,7 @@
super(out, encoding);
initCDATA();
initNamespaces();
+// System.out.println("StreamXMLOutput.<init>");
}
public void startDocument() throws TransletException {
1.10 +5 -5
xml-xalan/java/src/org/apache/xalan/xsltc/trax/TemplatesHandlerImpl.java
Index: TemplatesHandlerImpl.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/trax/TemplatesHandlerImpl.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- TemplatesHandlerImpl.java 11 Jun 2002 17:15:34 -0000 1.9
+++ TemplatesHandlerImpl.java 11 Jun 2002 20:11:18 -0000 1.10
@@ -79,14 +79,14 @@
private String _systemId;
// Temporary
- private boolean _experimentalOutput;
+ private boolean _oldOutputSystem;
/**
* Default constructor
*/
- protected TemplatesHandlerImpl(boolean experimentalOutput) {
+ protected TemplatesHandlerImpl(boolean oldOutputSystem) {
super(null);
- _experimentalOutput = experimentalOutput;
+ _oldOutputSystem = oldOutputSystem;
}
/**
@@ -170,7 +170,7 @@
final byte[][] bytecodes = xsltc.getBytecodes();
if (bytecodes != null) {
return new TemplatesImpl(xsltc.getBytecodes(),
transletName,
- _experimentalOutput);
+ _oldOutputSystem);
}
}
}
1.13 +5 -5
xml-xalan/java/src/org/apache/xalan/xsltc/trax/TemplatesImpl.java
Index: TemplatesImpl.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/trax/TemplatesImpl.java,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- TemplatesImpl.java 28 May 2002 19:35:26 -0000 1.12
+++ TemplatesImpl.java 11 Jun 2002 20:11:18 -0000 1.13
@@ -98,7 +98,7 @@
private int _transletIndex = -1;
// Temporary
- private boolean _experimentalOutput;
+ private boolean _oldOutputSystem;
// Our own private class loader - builds Class definitions from bytecodes
private class TransletClassLoader extends ClassLoader {
@@ -131,11 +131,11 @@
* the main translet class, must be supplied
*/
protected TemplatesImpl(byte[][] bytecodes, String transletName,
- boolean experimentalOutput)
+ boolean oldOutputSystem)
{
_bytecodes = bytecodes;
_name = transletName;
- _experimentalOutput = experimentalOutput;
+ _oldOutputSystem = oldOutputSystem;
}
/**
@@ -262,7 +262,7 @@
*/
public Transformer newTransformer()
throws TransformerConfigurationException {
- return new TransformerImpl(getTransletInstance(),
_experimentalOutput);
+ return new TransformerImpl(getTransletInstance(), _oldOutputSystem);
}
/**
1.39 +7 -7
xml-xalan/java/src/org/apache/xalan/xsltc/trax/TransformerFactoryImpl.java
Index: TransformerFactoryImpl.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/trax/TransformerFactoryImpl.java,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -r1.38 -r1.39
--- TransformerFactoryImpl.java 28 May 2002 19:35:27 -0000 1.38
+++ TransformerFactoryImpl.java 11 Jun 2002 20:11:18 -0000 1.39
@@ -143,7 +143,7 @@
// This flags are passed to the compiler
private boolean _debug = false;
private boolean _disableInlining = false;
- private boolean _experimentalOutput = false;
+ private boolean _oldOutputSystem = false;
/**
* javax.xml.transform.sax.TransformerFactory implementation.
@@ -220,8 +220,8 @@
else if (name.equals("disable-inlining") && value instanceof Boolean) {
_disableInlining = ((Boolean) value).booleanValue();
}
- else if (name.equals("experimental-output") && value instanceof
Boolean) {
- _experimentalOutput = ((Boolean) value).booleanValue();
+ else if (name.equals("old-output") && value instanceof Boolean) {
+ _oldOutputSystem = ((Boolean) value).booleanValue();
}
else {
// Throw an exception for all other attributes
@@ -346,7 +346,7 @@
// Create a Transformer object and store for other calls
Templates templates = new TemplatesImpl(bytecodes, _defaultTransletName,
- _experimentalOutput);
+ _oldOutputSystem);
_copyTransformer = templates.newTransformer();
if (_uriResolver != null) _copyTransformer.setURIResolver(_uriResolver);
return(_copyTransformer);
@@ -527,7 +527,7 @@
ErrorMsg err = new ErrorMsg(ErrorMsg.JAXP_COMPILE_ERR);
throw new TransformerConfigurationException(err.toString());
}
- return new TemplatesImpl(bytecodes, transletName, _experimentalOutput);
+ return new TemplatesImpl(bytecodes, transletName, _oldOutputSystem);
}
/**
@@ -541,7 +541,7 @@
public TemplatesHandler newTemplatesHandler()
throws TransformerConfigurationException {
final TemplatesHandlerImpl handler =
- new TemplatesHandlerImpl(_experimentalOutput);
+ new TemplatesHandlerImpl(_oldOutputSystem);
handler.init();
return handler;
}
1.45 +9 -10
xml-xalan/java/src/org/apache/xalan/xsltc/trax/TransformerImpl.java
Index: TransformerImpl.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/trax/TransformerImpl.java,v
retrieving revision 1.44
retrieving revision 1.45
diff -u -r1.44 -r1.45
--- TransformerImpl.java 10 Jun 2002 21:45:16 -0000 1.44
+++ TransformerImpl.java 11 Jun 2002 20:11:18 -0000 1.45
@@ -141,16 +141,16 @@
private TransletOutputHandlerFactory _tohFactory = null;
// Temporary
- private boolean _experimentalOutput;
+ private boolean _oldOutputSystem;
/**
* Implements JAXP's Transformer constructor
* Our Transformer objects always need a translet to do the actual work
*/
- protected TransformerImpl(Translet translet, boolean experimentalOutput)
{
+ protected TransformerImpl(Translet translet, boolean oldOutputSystem) {
_translet = (AbstractTranslet)translet;
_properties = createOutputProperties();
- _experimentalOutput = experimentalOutput;
+ _oldOutputSystem = oldOutputSystem;
}
/**
@@ -178,9 +178,8 @@
// Pass output properties to the translet
setOutputProperties(_translet, _properties);
- if (_experimentalOutput) {
- final TransletOutputHandler toHandler =
- getExperimentalOutputHandler(result);
+ if (!_oldOutputSystem) {
+ final TransletOutputHandler toHandler = getOutputHandler(result);
if (toHandler == null) {
ErrorMsg err = new ErrorMsg(ErrorMsg.JAXP_NO_HANDLER_ERR);
@@ -198,7 +197,7 @@
}
}
else {
- _handler = getOutputHandler(result);
+ _handler = getOldOutputHandler(result);
if (_handler == null) {
ErrorMsg err = new ErrorMsg(ErrorMsg.JAXP_NO_HANDLER_ERR);
throw new TransformerException(err.toString());
@@ -224,7 +223,7 @@
* the type and contents of the TrAX Result object passed to the
* transform() method.
*/
- private TransletOutputHandler getExperimentalOutputHandler(Result
result)
+ private TransletOutputHandler getOutputHandler(Result result)
throws TransformerException
{
// Try to get the encoding from the translet (may not be set)
@@ -335,7 +334,7 @@
* based on the type and contents of the TrAX Result object passed to
* the transform() method.
*/
- private ContentHandler getOutputHandler(Result result) throws
+ private ContentHandler getOldOutputHandler(Result result) throws
TransformerException
{
// Try to get the encoding from the translet (may not be set)
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]