Class TransformerFactoryImpl
- java.lang.Object
-
- javax.xml.transform.TransformerFactory
-
- javax.xml.transform.sax.SAXTransformerFactory
-
- org.apache.xalan.processor.TransformerFactoryImpl
-
public class TransformerFactoryImpl extends javax.xml.transform.sax.SAXTransformerFactoryThe TransformerFactoryImpl, which implements the TRaX TransformerFactory interface, processes XSLT stylesheets into a Templates object (a StylesheetRoot).
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringFEATURE_INCREMENTALStatic string to be used for incremental featurestatic java.lang.StringFEATURE_OPTIMIZEStatic string to be used for optimize featurestatic java.lang.StringFEATURE_SOURCE_LOCATIONStatic string to be used for source_location featurestatic java.lang.StringXSLT_PROPERTIESThe path/filename of the property file: XSLTInfo.properties Maintenance note: see alsoorg.apache.xpath.functions.FuncSystemProperty.XSLT_PROPERTIES
-
Constructor Summary
Constructors Constructor Description TransformerFactoryImpl()Constructor TransformerFactoryImpl
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description javax.xml.transform.SourcegetAssociatedStylesheet(javax.xml.transform.Source source, java.lang.String media, java.lang.String title, java.lang.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.java.lang.ObjectgetAttribute(java.lang.String name)Allows the user to retrieve specific attributes on the underlying implementation.javax.xml.transform.ErrorListenergetErrorListener()Get the error listener in effect for the TransformerFactory.booleangetFeature(java.lang.String name)Look up the value of a feature.javax.xml.transform.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.javax.xml.transform.TemplatesnewTemplates(javax.xml.transform.Source source)Process the source into a Templates object, which is likely a compiled representation of the source.javax.xml.transform.sax.TemplatesHandlernewTemplatesHandler()Create a new Transformer object that performs a copy of the source to the result.javax.xml.transform.TransformernewTransformer()Create a new Transformer object that performs a copy of the source to the result.javax.xml.transform.TransformernewTransformer(javax.xml.transform.Source source)Process the source into a Transformer object.javax.xml.transform.sax.TransformerHandlernewTransformerHandler()Get a TransformerHandler object that can process SAX ContentHandler events into a Result.javax.xml.transform.sax.TransformerHandlernewTransformerHandler(javax.xml.transform.Source src)Get a TransformerHandler object that can process SAX ContentHandler events into a Result, based on the transformation instructions specified by the argument.javax.xml.transform.sax.TransformerHandlernewTransformerHandler(javax.xml.transform.Templates templates)Get a TransformerHandler object that can process SAX ContentHandler events into a Result, based on the Templates argument.org.xml.sax.XMLFilternewXMLFilter(javax.xml.transform.Source src)Create an XMLFilter that uses the given source as the transformation instructions.org.xml.sax.XMLFilternewXMLFilter(javax.xml.transform.Templates templates)Create an XMLFilter that uses the given source as the transformation instructions.javax.xml.transform.TemplatesprocessFromNode(org.w3c.dom.Node node)voidsetAttribute(java.lang.String name, java.lang.Object value)Allows the user to set specific attributes on the underlying implementation.voidsetErrorListener(javax.xml.transform.ErrorListener listener)Set an error listener for the TransformerFactory.voidsetFeature(java.lang.String name, boolean value)Set a feature for thisTransformerFactoryandTransformers orTemplates created by this factory.voidsetURIResolver(javax.xml.transform.URIResolver resolver)Set an object that will be used to resolve URIs used in xsl:import, etc.
-
-
-
Field Detail
-
XSLT_PROPERTIES
public static final java.lang.String XSLT_PROPERTIES
The path/filename of the property file: XSLTInfo.properties Maintenance note: see alsoorg.apache.xpath.functions.FuncSystemProperty.XSLT_PROPERTIES- See Also:
- Constant Field Values
-
FEATURE_INCREMENTAL
public static final java.lang.String FEATURE_INCREMENTAL
Static string to be used for incremental feature- See Also:
- Constant Field Values
-
FEATURE_OPTIMIZE
public static final java.lang.String FEATURE_OPTIMIZE
Static string to be used for optimize feature- See Also:
- Constant Field Values
-
FEATURE_SOURCE_LOCATION
public static final java.lang.String FEATURE_SOURCE_LOCATION
Static string to be used for source_location feature- See Also:
- Constant Field Values
-
-
Method Detail
-
processFromNode
public javax.xml.transform.Templates processFromNode(org.w3c.dom.Node node) throws javax.xml.transform.TransformerConfigurationException- Throws:
javax.xml.transform.TransformerConfigurationException
-
getAssociatedStylesheet
public javax.xml.transform.Source getAssociatedStylesheet(javax.xml.transform.Source source, java.lang.String media, java.lang.String title, java.lang.String charset) throws javax.xml.transform.TransformerConfigurationExceptionGet 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.
- Specified by:
getAssociatedStylesheetin classjavax.xml.transform.TransformerFactory- 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:
javax.xml.transform.TransformerConfigurationException
-
newTemplatesHandler
public javax.xml.transform.sax.TemplatesHandler newTemplatesHandler() throws javax.xml.transform.TransformerConfigurationExceptionCreate a new Transformer object that performs a copy of the source to the result.- Specified by:
newTemplatesHandlerin classjavax.xml.transform.sax.SAXTransformerFactory- Returns:
- A Transformer object that may be used to perform a transformation in a single thread, never null.
- Throws:
javax.xml.transform.TransformerConfigurationException- May throw this during the parse when it is constructing the Templates object and fails.
-
setFeature
public void setFeature(java.lang.String name, boolean value) throws javax.xml.transform.TransformerConfigurationExceptionSet a feature for this
TransformerFactoryandTransformers orTemplates created by this factory.Feature names are fully qualified
URIs. Implementations may define their own features. AnTransformerConfigurationExceptionis thrown if thisTransformerFactoryor theTransformers orTemplates it creates cannot support the feature. It is possible for anTransformerFactoryto expose a feature value but be unable to change its state.See
TransformerFactoryfor full documentation of specific features.- Specified by:
setFeaturein classjavax.xml.transform.TransformerFactory- Parameters:
name- Feature name.value- Is feature statetrueorfalse.- Throws:
javax.xml.transform.TransformerConfigurationException- if thisTransformerFactoryor theTransformers orTemplates it creates cannot support this feature.java.lang.NullPointerException- If thenameparameter is null.
-
getFeature
public boolean getFeature(java.lang.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.
- Specified by:
getFeaturein classjavax.xml.transform.TransformerFactory- Parameters:
name- The feature name, which is a fully-qualified URI.- Returns:
- The current state of the feature (true or false).
-
setAttribute
public void setAttribute(java.lang.String name, java.lang.Object value) throws java.lang.IllegalArgumentExceptionAllows the user to set specific attributes on the underlying implementation.- Specified by:
setAttributein classjavax.xml.transform.TransformerFactory- Parameters:
name- The name of the attribute.value- The value of the attribute; Boolean or String="true"|"false"- Throws:
java.lang.IllegalArgumentException- thrown if the underlying implementation doesn't recognize the attribute.
-
getAttribute
public java.lang.Object getAttribute(java.lang.String name) throws java.lang.IllegalArgumentExceptionAllows the user to retrieve specific attributes on the underlying implementation.- Specified by:
getAttributein classjavax.xml.transform.TransformerFactory- Parameters:
name- The name of the attribute.- Returns:
- value The value of the attribute.
- Throws:
java.lang.IllegalArgumentException- thrown if the underlying implementation doesn't recognize the attribute.
-
newXMLFilter
public org.xml.sax.XMLFilter newXMLFilter(javax.xml.transform.Source src) throws javax.xml.transform.TransformerConfigurationExceptionCreate an XMLFilter that uses the given source as the transformation instructions.- Specified by:
newXMLFilterin classjavax.xml.transform.sax.SAXTransformerFactory- Parameters:
src- The source of the transformation instructions.- Returns:
- An XMLFilter object, or null if this feature is not supported.
- Throws:
javax.xml.transform.TransformerConfigurationException
-
newXMLFilter
public org.xml.sax.XMLFilter newXMLFilter(javax.xml.transform.Templates templates) throws javax.xml.transform.TransformerConfigurationExceptionCreate an XMLFilter that uses the given source as the transformation instructions.- Specified by:
newXMLFilterin classjavax.xml.transform.sax.SAXTransformerFactory- Parameters:
templates- non-null reference to Templates object.- Returns:
- An XMLFilter object, or null if this feature is not supported.
- Throws:
javax.xml.transform.TransformerConfigurationException
-
newTransformerHandler
public javax.xml.transform.sax.TransformerHandler newTransformerHandler(javax.xml.transform.Source src) throws javax.xml.transform.TransformerConfigurationExceptionGet a TransformerHandler object that can process SAX ContentHandler events into a Result, based on the transformation instructions specified by the argument.- Specified by:
newTransformerHandlerin classjavax.xml.transform.sax.SAXTransformerFactory- Parameters:
src- The source of the transformation instructions.- Returns:
- TransformerHandler ready to transform SAX events.
- Throws:
javax.xml.transform.TransformerConfigurationException
-
newTransformerHandler
public javax.xml.transform.sax.TransformerHandler newTransformerHandler(javax.xml.transform.Templates templates) throws javax.xml.transform.TransformerConfigurationExceptionGet a TransformerHandler object that can process SAX ContentHandler events into a Result, based on the Templates argument.- Specified by:
newTransformerHandlerin classjavax.xml.transform.sax.SAXTransformerFactory- Parameters:
templates- The source of the transformation instructions.- Returns:
- TransformerHandler ready to transform SAX events.
- Throws:
javax.xml.transform.TransformerConfigurationException
-
newTransformerHandler
public javax.xml.transform.sax.TransformerHandler newTransformerHandler() throws javax.xml.transform.TransformerConfigurationExceptionGet a TransformerHandler object that can process SAX ContentHandler events into a Result.- Specified by:
newTransformerHandlerin classjavax.xml.transform.sax.SAXTransformerFactory- Returns:
- TransformerHandler ready to transform SAX events.
- Throws:
javax.xml.transform.TransformerConfigurationException
-
newTransformer
public javax.xml.transform.Transformer newTransformer(javax.xml.transform.Source source) throws javax.xml.transform.TransformerConfigurationExceptionProcess the source into a Transformer object. Care must be given to know that this object can not be used concurrently in multiple threads.- Specified by:
newTransformerin classjavax.xml.transform.TransformerFactory- 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:
javax.xml.transform.TransformerConfigurationException- May throw this during the parse when it is constructing the Templates object and fails.
-
newTransformer
public javax.xml.transform.Transformer newTransformer() throws javax.xml.transform.TransformerConfigurationExceptionCreate a new Transformer object that performs a copy of the source to the result.- Specified by:
newTransformerin classjavax.xml.transform.TransformerFactory- Returns:
- A Transformer object capable of being used for transformation purposes in a single thread.
- Throws:
javax.xml.transform.TransformerConfigurationException- May throw this during the parse when it is constructing the Templates object and it fails.
-
newTemplates
public javax.xml.transform.Templates newTemplates(javax.xml.transform.Source source) throws javax.xml.transform.TransformerConfigurationExceptionProcess 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.- Specified by:
newTemplatesin classjavax.xml.transform.TransformerFactory- Parameters:
source- An object that holds a URL, input stream, etc.- Returns:
- A Templates object capable of being used for transformation purposes.
- Throws:
javax.xml.transform.TransformerConfigurationException- May throw this during the parse when it is constructing the Templates object and fails.
-
setURIResolver
public void setURIResolver(javax.xml.transform.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.- Specified by:
setURIResolverin classjavax.xml.transform.TransformerFactory- Parameters:
resolver- An object that implements the URIResolver interface, or null.
-
getURIResolver
public javax.xml.transform.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.- Specified by:
getURIResolverin classjavax.xml.transform.TransformerFactory- Returns:
- The URIResolver that was set with setURIResolver.
-
getErrorListener
public javax.xml.transform.ErrorListener getErrorListener()
Get the error listener in effect for the TransformerFactory.- Specified by:
getErrorListenerin classjavax.xml.transform.TransformerFactory- Returns:
- A non-null reference to an error listener.
-
setErrorListener
public void setErrorListener(javax.xml.transform.ErrorListener listener) throws java.lang.IllegalArgumentExceptionSet an error listener for the TransformerFactory.- Specified by:
setErrorListenerin classjavax.xml.transform.TransformerFactory- Parameters:
listener- Must be a non-null reference to an ErrorListener.- Throws:
java.lang.IllegalArgumentException- if the listener argument is null.
-
isSecureProcessing
public boolean isSecureProcessing()
Return the state of the secure processing feature.- Returns:
- state of the secure processing feature.
-
-