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]

Reply via email to