org.apache.xalan.processor

## 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.SAXTransformerFactory

  The TransformerFactoryImpl, which implements the TRaX TransformerFactory interface, processes XSLT stylesheets into a Templates object (a StylesheetRoot).

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `FEATURE_INCREMENTAL` Static string to be used for incremental feature
    `static java.lang.String` | `FEATURE_OPTIMIZE` Static string to be used for optimize feature
    `static java.lang.String` | `FEATURE_SOURCE_LOCATION` Static string to be used for source_location feature
    `static java.lang.String` | `XSLT_PROPERTIES` The path/filename of the property file: XSLTInfo.properties Maintenance note: see also `org.apache.xpath.functions.FuncSystemProperty.XSLT_PROPERTIES`

    - ### Fields inherited from class javax.xml.transform.sax.SAXTransformerFactory

      `FEATURE, FEATURE_XMLFILTER`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `TransformerFactoryImpl()` Constructor TransformerFactoryImpl

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `javax.xml.transform.Source` | `getAssociatedStylesheet(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.Object` | `getAttribute(java.lang.String name)` Allows the user to retrieve specific attributes on the underlying implementation.
    `javax.xml.transform.ErrorListener` | `getErrorListener()` Get the error listener in effect for the TransformerFactory.
    `boolean` | `getFeature(java.lang.String name)` Look up the value of a feature.
    `javax.xml.transform.URIResolver` | `getURIResolver()` Get the object that will be used to resolve URIs used in xsl:import, etc.
    `boolean` | `isSecureProcessing()` Return the state of the secure processing feature.
    `javax.xml.transform.Templates` | `newTemplates(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.TemplatesHandler` | `newTemplatesHandler()` Create a new Transformer object that performs a copy of the source to the result.
    `javax.xml.transform.Transformer` | `newTransformer()` Create a new Transformer object that performs a copy of the source to the result.
    `javax.xml.transform.Transformer` | `newTransformer(javax.xml.transform.Source source)` Process the source into a Transformer object.
    `javax.xml.transform.sax.TransformerHandler` | `newTransformerHandler()` Get a TransformerHandler object that can process SAX ContentHandler events into a Result.
    `javax.xml.transform.sax.TransformerHandler` | `newTransformerHandler(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.TransformerHandler` | `newTransformerHandler(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.XMLFilter` | `newXMLFilter(javax.xml.transform.Source src)` Create an XMLFilter that uses the given source as the transformation instructions.
    `org.xml.sax.XMLFilter` | `newXMLFilter(javax.xml.transform.Templates templates)` Create an XMLFilter that uses the given source as the transformation instructions.
    `javax.xml.transform.Templates` | `processFromNode(org.w3c.dom.Node node)`
    `void` | `setAttribute(java.lang.String name, java.lang.Object value)` Allows the user to set specific attributes on the underlying implementation.
    `void` | `setErrorListener(javax.xml.transform.ErrorListener listener)` Set an error listener for the TransformerFactory.
    `void` | `setFeature(java.lang.String name, boolean value)` Set a feature for this `TransformerFactory` and `Transformer`s or `Template`s created by this factory.
    `void` | `setURIResolver(javax.xml.transform.URIResolver resolver)` Set an object that will be used to resolve URIs used in xsl:import, etc.

    - ### Methods inherited from class javax.xml.transform.TransformerFactory

      `newInstance, newInstance`

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### XSLT_PROPERTIES

          public static final java.lang.String XSLT_PROPERTIES

      The path/filename of the property file: XSLTInfo.properties Maintenance note: see also `org.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

  - ### Constructor Detail

    - #### TransformerFactoryImpl

          public TransformerFactoryImpl()

      Constructor TransformerFactoryImpl

  - ### 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.TransformerConfigurationException

      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.

      Specified by:
        `getAssociatedStylesheet` in class `javax.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.TransformerConfigurationException

      Create a new Transformer object that performs a copy of the source to the result.
      Specified by:
        `newTemplatesHandler` in class `javax.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.TransformerConfigurationException

      Set a feature for this `TransformerFactory` and `Transformer`s or `Template`s created by this factory.

      Feature names are fully qualified `URI`s. Implementations may define their own features. An `TransformerConfigurationException` is thrown if this `TransformerFactory` or the `Transformer`s or `Template`s 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 `javax.xml.transform.TransformerFactory`
      Parameters:
        `name` - Feature name.
        `value` - Is feature state `true` or `false`.
      Throws:
        `javax.xml.transform.TransformerConfigurationException` - if this `TransformerFactory` or the `Transformer`s or `Template`s it creates cannot support this feature.
        `java.lang.NullPointerException` - If the `name` parameter 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:
        `getFeature` in class `javax.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.IllegalArgumentException

      Allows the user to set specific attributes on the underlying implementation.
      Specified by:
        `setAttribute` in class `javax.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.IllegalArgumentException

      Allows the user to retrieve specific attributes on the underlying implementation.
      Specified by:
        `getAttribute` in class `javax.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.TransformerConfigurationException

      Create an XMLFilter that uses the given source as the transformation instructions.
      Specified by:
        `newXMLFilter` in class `javax.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.TransformerConfigurationException

      Create an XMLFilter that uses the given source as the transformation instructions.
      Specified by:
        `newXMLFilter` in class `javax.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.TransformerConfigurationException

      Get a TransformerHandler object that can process SAX ContentHandler events into a Result, based on the transformation instructions specified by the argument.
      Specified by:
        `newTransformerHandler` in class `javax.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.TransformerConfigurationException

      Get a TransformerHandler object that can process SAX ContentHandler events into a Result, based on the Templates argument.
      Specified by:
        `newTransformerHandler` in class `javax.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.TransformerConfigurationException

      Get a TransformerHandler object that can process SAX ContentHandler events into a Result.
      Specified by:
        `newTransformerHandler` in class `javax.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.TransformerConfigurationException

      Process 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:
        `newTransformer` in class `javax.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.TransformerConfigurationException

      Create a new Transformer object that performs a copy of the source to the result.
      Specified by:
        `newTransformer` in class `javax.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.TransformerConfigurationException

      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.
      Specified by:
        `newTemplates` in class `javax.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:
        `setURIResolver` in class `javax.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:
        `getURIResolver` in class `javax.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:
        `getErrorListener` in class `javax.xml.transform.TransformerFactory`
      Returns:
        A non-null reference to an error listener.

    - #### setErrorListener

          public void setErrorListener(javax.xml.transform.ErrorListener listener)
                                throws java.lang.IllegalArgumentException

      Set an error listener for the TransformerFactory.
      Specified by:
        `setErrorListener` in class `javax.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.

Copyright © 2023 Apache XML Project. All Rights Reserved.