org.apache.xalan.processor

Class TransformerFactoryImpl

public class TransformerFactoryImpl extends SAXTransformerFactory

The TransformerFactoryImpl, which implements the TRaX TransformerFactory interface, processes XSLT stylesheets into a Templates object (a StylesheetRoot).
Field Summary
static StringFEATURE_INCREMENTAL
Static string to be used for incremental feature
static StringFEATURE_OPTIMIZE
Static string to be used for optimize feature
static StringFEATURE_SOURCE_LOCATION
Static string to be used for source_location feature
static StringXSLT_PROPERTIES
The path/filename of the property file: XSLTInfo.properties Maintenance note: see also org.apache.xpath.functions.FuncSystemProperty.XSLT_PROPERTIES
Constructor Summary
TransformerFactoryImpl()
Constructor TransformerFactoryImpl
Method Summary
SourcegetAssociatedStylesheet(Source source, String media, String title, String charset)
Get InputSource specification(s) that are associated with the given document specified in the source param, via the xml-stylesheet processing instruction (see http://www.w3.org/TR/xml-stylesheet/), and that matches the given criteria.
ObjectgetAttribute(String name)
Allows the user to retrieve specific attributes on the underlying implementation.
ErrorListenergetErrorListener()
Get the error listener in effect for the TransformerFactory.
booleangetFeature(String name)
Look up the value of a feature.
URIResolvergetURIResolver()
Get the object that will be used to resolve URIs used in xsl:import, etc.
booleanisSecureProcessing()
Return the state of the secure processing feature.
TemplatesnewTemplates(Source source)
Process the source into a Templates object, which is likely a compiled representation of the source.
TemplatesHandlernewTemplatesHandler()
Create a new Transformer object that performs a copy of the source to the result.
TransformernewTransformer(Source source)
Process the source into a Transformer object.
TransformernewTransformer()
Create a new Transformer object that performs a copy of the source to the result.
TransformerHandlernewTransformerHandler(Source src)
Get a TransformerHandler object that can process SAX ContentHandler events into a Result, based on the transformation instructions specified by the argument.
TransformerHandlernewTransformerHandler(Templates templates)
Get a TransformerHandler object that can process SAX ContentHandler events into a Result, based on the Templates argument.
TransformerHandlernewTransformerHandler()
Get a TransformerHandler object that can process SAX ContentHandler events into a Result.
XMLFilternewXMLFilter(Source src)
Create an XMLFilter that uses the given source as the transformation instructions.
XMLFilternewXMLFilter(Templates templates)
Create an XMLFilter that uses the given source as the transformation instructions.
TemplatesprocessFromNode(Node node)
voidsetAttribute(String name, Object value)
Allows the user to set specific attributes on the underlying implementation.
voidsetErrorListener(ErrorListener listener)
Set an error listener for the TransformerFactory.
voidsetFeature(String name, boolean value)

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

Feature names are fully qualified java.net.URIs.

voidsetURIResolver(URIResolver resolver)
Set an object that will be used to resolve URIs used in xsl:import, etc.

Field Detail

FEATURE_INCREMENTAL

public static final String FEATURE_INCREMENTAL
Static string to be used for incremental feature

FEATURE_OPTIMIZE

public static final String FEATURE_OPTIMIZE
Static string to be used for optimize feature

FEATURE_SOURCE_LOCATION

public static final String FEATURE_SOURCE_LOCATION
Static string to be used for source_location feature

XSLT_PROPERTIES

public static final String XSLT_PROPERTIES
The path/filename of the property file: XSLTInfo.properties Maintenance note: see also org.apache.xpath.functions.FuncSystemProperty.XSLT_PROPERTIES

Constructor Detail

TransformerFactoryImpl

public TransformerFactoryImpl()
Constructor TransformerFactoryImpl

Method Detail

getAssociatedStylesheet

public Source getAssociatedStylesheet(Source source, String media, String title, String charset)
Get InputSource specification(s) that are associated with the given document specified in the source param, via the xml-stylesheet processing instruction (see http://www.w3.org/TR/xml-stylesheet/), and that matches the given criteria. Note that it is possible to return several stylesheets that match the criteria, in which case they are applied as if they were a list of imports or cascades.

Note that DOM2 has it's own mechanism for discovering stylesheets. Therefore, there isn't a DOM version of this method.

Parameters: source The XML source that is to be searched. media The media attribute to be matched. May be null, in which case the prefered templates will be used (i.e. alternate = no). title The value of the title attribute to match. May be null. charset The value of the charset attribute to match. May be null.

Returns: A Source object capable of being used to create a Templates object.

Throws: TransformerConfigurationException

getAttribute

public Object getAttribute(String name)
Allows the user to retrieve specific attributes on the underlying implementation.

Parameters: name The name of the attribute.

Returns: value The value of the attribute.

Throws: IllegalArgumentException thrown if the underlying implementation doesn't recognize the attribute.

getErrorListener

public ErrorListener getErrorListener()
Get the error listener in effect for the TransformerFactory.

Returns: A non-null reference to an error listener.

getFeature

public boolean getFeature(String name)
Look up the value of a feature.

The feature name is any fully-qualified URI. It is possible for an TransformerFactory to recognize a feature name but to be unable to return its value; this is especially true in the case of an adapter for a SAX1 Parser, which has no way of knowing whether the underlying parser is validating, for example.

Parameters: name The feature name, which is a fully-qualified URI.

Returns: The current state of the feature (true or false).

getURIResolver

public URIResolver getURIResolver()
Get the object that will be used to resolve URIs used in xsl:import, etc. This will be used as the default for the transformation.

Returns: The URIResolver that was set with setURIResolver.

isSecureProcessing

public boolean isSecureProcessing()
Return the state of the secure processing feature.

Returns: state of the secure processing feature.

newTemplates

public Templates newTemplates(Source source)
Process the source into a Templates object, which is likely a compiled representation of the source. This Templates object may then be used concurrently across multiple threads. Creating a Templates object allows the TransformerFactory to do detailed performance optimization of transformation instructions, without penalizing runtime transformation.

Parameters: source An object that holds a URL, input stream, etc.

Returns: A Templates object capable of being used for transformation purposes.

Throws: TransformerConfigurationException May throw this during the parse when it is constructing the Templates object and fails.

newTemplatesHandler

public TemplatesHandler newTemplatesHandler()
Create a new Transformer object that performs a copy of the source to the result.

Returns: A Transformer object that may be used to perform a transformation in a single thread, never null.

Throws: TransformerConfigurationException May throw this during the parse when it is constructing the Templates object and fails.

newTransformer

public Transformer newTransformer(Source source)
Process the source into a Transformer object. Care must be given to know that this object can not be used concurrently in multiple threads.

Parameters: source An object that holds a URL, input stream, etc.

Returns: A Transformer object capable of being used for transformation purposes in a single thread.

Throws: TransformerConfigurationException May throw this during the parse when it is constructing the Templates object and fails.

newTransformer

public Transformer newTransformer()
Create a new Transformer object that performs a copy of the source to the result.

Returns: A Transformer object capable of being used for transformation purposes in a single thread.

Throws: TransformerConfigurationException May throw this during the parse when it is constructing the Templates object and it fails.

newTransformerHandler

public TransformerHandler newTransformerHandler(Source src)
Get a TransformerHandler object that can process SAX ContentHandler events into a Result, based on the transformation instructions specified by the argument.

Parameters: src The source of the transformation instructions.

Returns: TransformerHandler ready to transform SAX events.

Throws: TransformerConfigurationException

newTransformerHandler

public TransformerHandler newTransformerHandler(Templates templates)
Get a TransformerHandler object that can process SAX ContentHandler events into a Result, based on the Templates argument.

Parameters: templates The source of the transformation instructions.

Returns: TransformerHandler ready to transform SAX events.

Throws: TransformerConfigurationException

newTransformerHandler

public TransformerHandler newTransformerHandler()
Get a TransformerHandler object that can process SAX ContentHandler events into a Result.

Returns: TransformerHandler ready to transform SAX events.

Throws: TransformerConfigurationException

newXMLFilter

public XMLFilter newXMLFilter(Source src)
Create an XMLFilter that uses the given source as the transformation instructions.

Parameters: src The source of the transformation instructions.

Returns: An XMLFilter object, or null if this feature is not supported.

Throws: TransformerConfigurationException

newXMLFilter

public XMLFilter newXMLFilter(Templates templates)
Create an XMLFilter that uses the given source as the transformation instructions.

Parameters: templates non-null reference to Templates object.

Returns: An XMLFilter object, or null if this feature is not supported.

Throws: TransformerConfigurationException

processFromNode

public Templates processFromNode(Node node)

setAttribute

public void setAttribute(String name, Object value)
Allows the user to set specific attributes on the underlying implementation.

Parameters: name The name of the attribute. value The value of the attribute; Boolean or String="true"|"false"

Throws: IllegalArgumentException thrown if the underlying implementation doesn't recognize the attribute.

setErrorListener

public void setErrorListener(ErrorListener listener)
Set an error listener for the TransformerFactory.

Parameters: listener Must be a non-null reference to an ErrorListener.

Throws: IllegalArgumentException if the listener argument is null.

setFeature

public void setFeature(String name, boolean value)

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

Feature names are fully qualified java.net.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 javax.xml.transform.TransformerFactory for full documentation of specific features.

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.

setURIResolver

public void setURIResolver(URIResolver resolver)
Set an object that will be used to resolve URIs used in xsl:import, etc. This will be used as the default for the transformation.

Parameters: resolver An object that implements the URIResolver interface, or null.

Copyright B) 2005 Apache XML Project. All Rights Reserved.