tmiller     01/10/02 09:54:53

  Modified:    java/src/org/apache/xalan/xsltc/trax TransformerImpl.java
  Log:
  handle StreamResults that start with file: protocol
  
  Revision  Changes    Path
  1.17      +11 -3     
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.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- TransformerImpl.java      2001/10/02 11:16:52     1.16
  +++ TransformerImpl.java      2001/10/02 16:54:53     1.17
  @@ -1,5 +1,5 @@
   /*
  - * @(#)$Id: TransformerImpl.java,v 1.16 2001/10/02 11:16:52 morten Exp $
  + * @(#)$Id: TransformerImpl.java,v 1.17 2001/10/02 16:54:53 tmiller Exp $
    *
    * The Apache Software License, Version 1.1
    *
  @@ -64,6 +64,7 @@
   package org.apache.xalan.xsltc.trax;
   
   import java.io.File;
  +import java.io.FileOutputStream;
   import java.io.Writer;
   import java.io.Reader;
   import java.io.InputStream;
  @@ -195,10 +196,12 @@
       private ContentHandler getOutputHandler(Result result) 
        throws TransformerException {
        // Try to get the encoding from Translet (may not be set)
  -     if (_translet._encoding != null)
  +     if (_translet._encoding != null) {
            _encoding = _translet._encoding;
  -     else
  +     }
  +     else {
            _encoding = "utf-8"; // default output encoding
  +     }
   
        try {
            String systemId = result.getSystemId();
  @@ -220,6 +223,11 @@
                    return (new DefaultSAXOutputHandler(ostream, _encoding));
                else if (writer != null)
                    return (new DefaultSAXOutputHandler(writer, _encoding));
  +             else if ((systemId != null) && systemId.startsWith("file:")) {
  +                 final URL url = new URL(systemId);
  +                 final OutputStream os = new FileOutputStream(url.getFile());
  +                 return (new DefaultSAXOutputHandler(os, _encoding));
  +             }
            }
            // Handle DOMResult output handler
            else if (result instanceof DOMResult) {
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to