org.apache.xalan.xsltc.trax
Class SmartTransformerFactoryImpl

java.lang.Object
  extended by javax.xml.transform.TransformerFactory
      extended by javax.xml.transform.sax.SAXTransformerFactory
          extended by org.apache.xalan.xsltc.trax.SmartTransformerFactoryImpl

public class SmartTransformerFactoryImpl
extends SAXTransformerFactory

Implementation of a transformer factory that uses an XSLTC transformer factory for the creation of Templates objects and uses the Xalan processor transformer factory for the creation of Transformer objects.

Author:
G. Todd Miller

Field Summary
 
Fields inherited from class javax.xml.transform.sax.SAXTransformerFactory
FEATURE, FEATURE_XMLFILTER
 
Constructor Summary
SmartTransformerFactoryImpl()
          implementation of the SmartTransformerFactory.
 
Method Summary
 Source getAssociatedStylesheet(Source source, String media, String title, String charset)
           
 Object getAttribute(String name)
           
 ErrorListener getErrorListener()
           
 boolean getFeature(String name)
          javax.xml.transform.sax.TransformerFactory implementation.
 URIResolver getURIResolver()
           
 Templates newTemplates(Source source)
          Create a Templates object that from the input stylesheet Uses the org.apache.xalan.xsltc.trax.TransformerFactory.
 TemplatesHandler newTemplatesHandler()
          Get a TemplatesHandler object that can process SAX ContentHandler events into a Templates object.
 Transformer newTransformer()
          Create a Transformer object that copies the input document to the result.
 Transformer newTransformer(Source source)
          Create a Transformer object that from the input stylesheet Uses the org.apache.xalan.processor.TransformerFactory.
 TransformerHandler newTransformerHandler()
          Get a TransformerHandler object that can process SAX ContentHandler events based on a copy transformer.
 TransformerHandler newTransformerHandler(Source src)
          Get a TransformerHandler object that can process SAX ContentHandler events based on a transformer specified by the stylesheet Source.
 TransformerHandler newTransformerHandler(Templates templates)
          Get a TransformerHandler object that can process SAX ContentHandler events based on a transformer specified by the stylesheet Source.
 XMLFilter newXMLFilter(Source src)
          Create an XMLFilter that uses the given source as the transformation instructions.
 XMLFilter newXMLFilter(Templates templates)
           
 void setAttribute(String name, Object value)
           
 void setErrorListener(ErrorListener listener)
           
 void setFeature(String name, boolean value)
          Set a feature for this SmartTransformerFactory and Transformers or Templates created by this factory.
 void setURIResolver(URIResolver resolver)
           
 
Methods inherited from class javax.xml.transform.TransformerFactory
newInstance
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SmartTransformerFactoryImpl

public SmartTransformerFactoryImpl()
implementation of the SmartTransformerFactory. This factory uses org.apache.xalan.xsltc.trax.TransformerFactory to return Templates objects; and uses org.apache.xalan.processor.TransformerFactory to return Transformer objects.

Method Detail

setErrorListener

public void setErrorListener(ErrorListener listener)
                      throws IllegalArgumentException
Specified by:
setErrorListener in class TransformerFactory
Throws:
IllegalArgumentException

getErrorListener

public ErrorListener getErrorListener()
Specified by:
getErrorListener in class TransformerFactory

getAttribute

public Object getAttribute(String name)
                    throws IllegalArgumentException
Specified by:
getAttribute in class TransformerFactory
Throws:
IllegalArgumentException

setAttribute

public void setAttribute(String name,
                         Object value)
                  throws IllegalArgumentException
Specified by:
setAttribute in class TransformerFactory
Throws:
IllegalArgumentException

setFeature

public void setFeature(String name,
                       boolean value)
                throws TransformerConfigurationException

Set a feature for this SmartTransformerFactory and Transformers or Templates created by this factory.

Feature names are fully qualified URIs. Implementations may define their own features. An TransformerConfigurationException is thrown if this TransformerFactory or the Transformers or Templates it creates cannot support the feature. It is possible for an TransformerFactory to expose a feature value but be unable to change its state.

See TransformerFactory for full documentation of specific features.

Specified by:
setFeature in class TransformerFactory
Parameters:
name - Feature name.
value - Is feature state true or false.
Throws:
TransformerConfigurationException - if this TransformerFactory or the Transformers or Templates it creates cannot support this feature.
NullPointerException - If the name parameter is null.

getFeature

public boolean getFeature(String name)
javax.xml.transform.sax.TransformerFactory implementation. Look up the value of a feature (to see if it is supported). This method must be updated as the various methods and features of this class are implemented.

Specified by:
getFeature in class TransformerFactory
Parameters:
name - The feature name
Returns:
'true' if feature is supported, 'false' if not

getURIResolver

public URIResolver getURIResolver()
Specified by:
getURIResolver in class TransformerFactory

setURIResolver

public void setURIResolver(URIResolver resolver)
Specified by:
setURIResolver in class TransformerFactory

getAssociatedStylesheet

public Source getAssociatedStylesheet(Source source,
                                      String media,
                                      String title,
                                      String charset)
                               throws TransformerConfigurationException
Specified by:
getAssociatedStylesheet in class TransformerFactory
Throws:
TransformerConfigurationException

newTransformer

public Transformer newTransformer()
                           throws TransformerConfigurationException
Create a Transformer object that copies the input document to the result. Uses the org.apache.xalan.processor.TransformerFactory.

Specified by:
newTransformer in class TransformerFactory
Returns:
A Transformer object.
Throws:
TransformerConfigurationException

newTransformer

public Transformer newTransformer(Source source)
                           throws TransformerConfigurationException
Create a Transformer object that from the input stylesheet Uses the org.apache.xalan.processor.TransformerFactory.

Specified by:
newTransformer in class TransformerFactory
Parameters:
source - the stylesheet.
Returns:
A Transformer object.
Throws:
TransformerConfigurationException

newTemplates

public Templates newTemplates(Source source)
                       throws TransformerConfigurationException
Create a Templates object that from the input stylesheet Uses the org.apache.xalan.xsltc.trax.TransformerFactory.

Specified by:
newTemplates in class TransformerFactory
Parameters:
source - the stylesheet.
Returns:
A Templates object.
Throws:
TransformerConfigurationException

newTemplatesHandler

public TemplatesHandler newTemplatesHandler()
                                     throws TransformerConfigurationException
Get a TemplatesHandler object that can process SAX ContentHandler events into a Templates object. Uses the org.apache.xalan.xsltc.trax.TransformerFactory.

Specified by:
newTemplatesHandler in class SAXTransformerFactory
Throws:
TransformerConfigurationException

newTransformerHandler

public TransformerHandler newTransformerHandler()
                                         throws TransformerConfigurationException
Get a TransformerHandler object that can process SAX ContentHandler events based on a copy transformer. Uses org.apache.xalan.processor.TransformerFactory.

Specified by:
newTransformerHandler in class SAXTransformerFactory
Throws:
TransformerConfigurationException

newTransformerHandler

public TransformerHandler newTransformerHandler(Source src)
                                         throws TransformerConfigurationException
Get a TransformerHandler object that can process SAX ContentHandler events based on a transformer specified by the stylesheet Source. Uses org.apache.xalan.processor.TransformerFactory.

Specified by:
newTransformerHandler in class SAXTransformerFactory
Throws:
TransformerConfigurationException

newTransformerHandler

public TransformerHandler newTransformerHandler(Templates templates)
                                         throws TransformerConfigurationException
Get a TransformerHandler object that can process SAX ContentHandler events based on a transformer specified by the stylesheet Source. Uses org.apache.xalan.xsltc.trax.TransformerFactory.

Specified by:
newTransformerHandler in class SAXTransformerFactory
Throws:
TransformerConfigurationException

newXMLFilter

public XMLFilter newXMLFilter(Source src)
                       throws TransformerConfigurationException
Create an XMLFilter that uses the given source as the transformation instructions. Uses org.apache.xalan.xsltc.trax.TransformerFactory.

Specified by:
newXMLFilter in class SAXTransformerFactory
Throws:
TransformerConfigurationException

newXMLFilter

public XMLFilter newXMLFilter(Templates templates)
                       throws TransformerConfigurationException
Specified by:
newXMLFilter in class SAXTransformerFactory
Throws:
TransformerConfigurationException


Copyright ? 2005 Apache XML Project. All Rights Reserved.