You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by sb...@locus.apache.org on 2000/09/11 21:45:37 UTC

cvs commit: xml-xalan/java/src/org/apache/xalan/transformer TransformerImpl.java

sboag       00/09/11 12:45:37

  Modified:    java/src/org/apache/xalan/transformer TransformerImpl.java
  Log:
  Use DocumentBuilder and plain old DocumentFragment for the RTF, in transformToRTF.  I don't think ResultTreeFrag is used anymore...
  
  Revision  Changes    Path
  1.19      +25 -4     xml-xalan/java/src/org/apache/xalan/transformer/TransformerImpl.java
  
  Index: TransformerImpl.java
  ===================================================================
  RCS file: /home/cvs/xml-xalan/java/src/org/apache/xalan/transformer/TransformerImpl.java,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- TransformerImpl.java	2000/08/24 20:27:41	1.18
  +++ TransformerImpl.java	2000/09/11 19:45:36	1.19
  @@ -138,6 +138,11 @@
   import trax.TransformException;
   import trax.URIResolver;
   
  +// Imported JAVA API for XML Parsing 1.0 classes
  +import javax.xml.parsers.DocumentBuilder;
  +import javax.xml.parsers.DocumentBuilderFactory;
  +import javax.xml.parsers.ParserConfigurationException; 
  +
   /**
    * <meta name="usage" content="advanced"/>
    * The Xalan workhorse -- Collaborates with the XPath xcontext, the DOM,
  @@ -808,6 +813,8 @@
   
       
     // ======== End Transformer Implementation ========  
  +  
  +  DocumentBuilder m_docBuilder = null;
       
     /**
      * <meta name="usage" content="advanced"/>
  @@ -826,11 +833,25 @@
       throws SAXException
     {
       XPathContext xctxt = getXPathContext();
  -    Document docFactory = xctxt.getDOMHelper().getDOMFactory();
  -
  +    // Document docFactory = xctxt.getDOMHelper().getDOMFactory();
  +    
  +    if(null == m_docBuilder)
  +    {
  +      try
  +      {
  +        DocumentBuilderFactory dfactory = DocumentBuilderFactory.newInstance();
  +        m_docBuilder = dfactory.newDocumentBuilder();
  +      }
  +      catch(ParserConfigurationException pce)
  +      {
  +        throw new SAXException(pce);//"createDocument() not supported in XPathContext!");
  +        // return null;
  +      }
  +    }
  +    Document docFactory = m_docBuilder.newDocument();
  +    
       // Create a ResultTreeFrag object.
  -    ResultTreeFrag resultFragment 
  -      = new ResultTreeFrag(docFactory, xctxt);
  +    DocumentFragment resultFragment = docFactory.createDocumentFragment();
   
       // Create a DOMBuilder object that will handle the SAX events 
       // and build the ResultTreeFrag nodes.