1 // $Id: XslTransformer.java,v 1.2 2004/02/12 22:57:34 powerpete Exp $
2 // [JMP, 04.02.2004] Created this file.
3 package org.jface.stepmt.transform.xsl;
4
5 import javax.xml.transform.Source;
6 import javax.xml.transform.TransformerConfigurationException;
7 import javax.xml.transform.TransformerFactory;
8 import javax.xml.transform.sax.SAXResult;
9 import javax.xml.transform.sax.SAXTransformerFactory;
10 import javax.xml.transform.sax.TransformerHandler;
11 import javax.xml.transform.stream.StreamSource;
12
13 import org.apache.commons.logging.Log;
14 import org.apache.commons.logging.LogFactory;
15 import org.jface.stepmt.transform.Transformer;
16 import org.xml.sax.ContentHandler;
17
18 /***
19 * @author <a href="mailto:powerpete@users.sf.net">M. Petersen</a>
20 * @version $Id: XslTransformer.java,v 1.2 2004/02/12 22:57:34 powerpete Exp $
21 */
22 public class XslTransformer implements Transformer
23 {
24 private static final Log LOG = LogFactory.getLog(XslTransformer.class);
25 private static final SAXTransformerFactory FACTORY =
26 ((SAXTransformerFactory) TransformerFactory.newInstance());
27 private TransformerHandler transformerHandler;
28 private String stylesheet;
29
30 public void setStylesheet(String stylesheet)
31 {
32 this.stylesheet = stylesheet;
33 // TODO Use Templates here for better performance?
34 //createContentHandler(new StreamSource(filename));
35 }
36
37 public ContentHandler getContentHandler()
38 {
39 try
40 {
41 transformerHandler = FACTORY.newTransformerHandler(createSource());
42 }
43 catch (TransformerConfigurationException e)
44 {
45 LOG.fatal("Error creating new TransformerHandler.", e);
46 }
47 return transformerHandler;
48 }
49
50 protected Source createSource()
51 {
52 return new StreamSource(stylesheet);
53 }
54
55 public void setContentHandler(ContentHandler contentHandler)
56 {
57 transformerHandler.setResult(new SAXResult(contentHandler));
58 }
59 }
This page was automatically generated by Maven