You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by dl...@locus.apache.org on 2000/11/20 14:00:38 UTC
cvs commit: xml-xalan/java/samples/Pipe Pipe.java
dleslie 00/11/20 05:00:37
Modified: java/samples/Pipe Pipe.java
Log:
Updated to use new TrAX.
Revision Changes Path
1.5 +32 -38 xml-xalan/java/samples/Pipe/Pipe.java
Index: Pipe.java
===================================================================
RCS file: /home/cvs/xml-xalan/java/samples/Pipe/Pipe.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- Pipe.java 2000/10/18 17:56:21 1.4
+++ Pipe.java 2000/11/20 13:00:36 1.5
@@ -56,13 +56,16 @@
*/
// Imported TraX classes
-import org.apache.trax.Processor;
-import org.apache.trax.Templates;
-import org.apache.trax.Transformer;
-import org.apache.trax.Result;
-import org.apache.trax.ProcessorException;
-import org.apache.trax.ProcessorFactoryException;
-import org.apache.trax.TransformException;
+import javax.xml.transform.TransformerFactory;
+import javax.xml.transform.Transformer;
+import javax.xml.transform.stream.StreamSource;
+import javax.xml.transform.stream.StreamResult;
+import javax.xml.transform.TransformerException;
+import javax.xml.transform.TransformerConfigurationException;
+import javax.xml.transform.sax.SAXTransformerFactory;
+import javax.xml.transform.sax.TransformerHandler;
+import javax.xml.transform.sax.SAXResult;
+import javax.xml.transform.dom.DOMResult;
// Imported SAX classes
import org.xml.sax.InputSource;
@@ -78,9 +81,9 @@
import org.w3c.dom.Node;
// Imported Serializer classes
-import org.apache.serialize.OutputFormat;
-import org.apache.serialize.Serializer;
-import org.apache.serialize.SerializerFactory;
+import org.apache.xalan.serialize.OutputFormat;
+import org.apache.xalan.serialize.Serializer;
+import org.apache.xalan.serialize.SerializerFactory;
// Imported JAVA API for XML Parsing 1.0 classes
import javax.xml.parsers.DocumentBuilder;
@@ -102,40 +105,31 @@
public class Pipe
{
public static void main(String[] args)
- throws SAXException, IOException, ParserConfigurationException
- {
- // Instantiate a stylesheet processor.
- Processor processor = Processor.newInstance("xslt");
-
- // Create a Templates object and a Transformer for each stylesheet.
- Templates stylesheet1 = processor.process(new InputSource("foo1.xsl"));
- Transformer transformer1 = stylesheet1.newTransformer();
-
- Templates stylesheet2= processor.process(new InputSource("foo2.xsl"));
- Transformer transformer2 = stylesheet2.newTransformer();
-
- Templates stylesheet3 = processor.process(new InputSource("foo3.xsl"));
- Transformer transformer3= stylesheet3.newTransformer();
+ throws TransformerException, TransformerConfigurationException,
+ SAXException, IOException
+ {
+ // Instantiate a TransformerFactory.
+ TransformerFactory tFactory = TransformerFactory.newInstance();
+ SAXTransformerFactory saxTFactory = (SAXTransformerFactory)tFactory;
+ // Create a Transformer for each stylesheet.
+ TransformerHandler tHandler1 = saxTFactory.newTransformerHandler(new StreamSource("foo1.xsl"));
+ TransformerHandler tHandler2 = saxTFactory.newTransformerHandler(new StreamSource("foo2.xsl"));
+ TransformerHandler tHandler3 = saxTFactory.newTransformerHandler(new StreamSource("foo3.xsl"));
// Create an XMLReader.
- XMLReader reader = XMLReaderFactory.createXMLReader();
-
- ContentHandler chandler = transformer1.getInputContentHandler();
- reader.setContentHandler(chandler);
- if(chandler instanceof LexicalHandler)
- reader.setProperty("http://xml.org/sax/properties/lexical-handler", chandler);
- else
- reader.setProperty("http://xml.org/sax/properties/lexical-handler", null);
-
- transformer1.setContentHandler(transformer2.getInputContentHandler());
- transformer2.setContentHandler(transformer3.getInputContentHandler());
-
+ XMLReader reader = XMLReaderFactory.createXMLReader();
+ reader.setContentHandler(tHandler1);
+ reader.setProperty("http://xml.org/sax/properties/lexical-handler", tHandler1);
+
+ tHandler1.setResult(new SAXResult(tHandler2));
+ tHandler2.setResult(new SAXResult(tHandler3));
+
// transformer3 outputs SAX events to the serializer.
Serializer serializer = SerializerFactory.getSerializer("xml");
serializer.setOutputStream(System.out);
- transformer3.setContentHandler(serializer.asContentHandler());
+ tHandler3.setResult(new SAXResult(serializer.asContentHandler()));
- // Parse the XML input document. The input ContentHandler and output ContentHandler
+ // Parse the XML input document. The input ContentHandler and output ContentHandler
// work in separate threads to optimize performance.
reader.parse("foo.xml");
}