org.apache.xalan.templates

## Class OutputProperties

- java.lang.Object
- - org.apache.xml.utils.UnImplNode
  - - org.apache.xalan.templates.ElemTemplateElement
    - - org.apache.xalan.templates.OutputProperties

- All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, javax.xml.transform.SourceLocator, XSLTVisitable, PrefixResolver, ExpressionNode, WhitespaceStrippingElementMatcher, org.w3c.dom.Document, org.w3c.dom.Element, org.w3c.dom.Node, org.w3c.dom.NodeList

      public class OutputProperties
      extends ElemTemplateElement
      implements java.lang.Cloneable

  This class provides information from xsl:output elements. It is mainly a wrapper for `Properties`, but can not extend that class because it must be part of the `ElemTemplateElement` heararchy.

  An OutputProperties list can contain another OutputProperties list as its "defaults"; this second property list is searched if the property key is not found in the original property list.

  See Also:
    XSLT DTD, xsl:output in XSLT Specification, Serialized Form

- - ### Field Summary

    - ### Fields inherited from interface org.w3c.dom.Node

      `ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `OutputProperties()` Creates an empty OutputProperties with no default values.
    `OutputProperties(java.util.Properties defaults)` Creates an empty OutputProperties with the specified defaults.
    `OutputProperties(java.lang.String method)` Creates an empty OutputProperties with the defaults specified by a property file.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.Object` | `clone()` Clone this OutputProperties, including a clone of the wrapped Properties reference.
    `void` | `compose(StylesheetRoot sroot)` This function is called after everything else has been recomposed, and allows the template to set remaining values that may be based on some other property that depends on recomposition.
    `void` | `copyFrom(OutputProperties opsrc)` Copy the keys and values from the source to this object.
    `void` | `copyFrom(java.util.Properties src)` Copy the keys and values from the source to this object.
    `void` | `copyFrom(java.util.Properties src, boolean shouldResetDefaults)` Copy the keys and values from the source to this object.
    `boolean` | `getBooleanProperty(QName key)` Searches for the boolean property with the specified key in the property list.
    `boolean` | `getBooleanProperty(java.lang.String key)` Searches for the boolean property with the specified key in the property list.
    `static java.util.Properties` | `getDefaultMethodProperties(java.lang.String method)` Deprecated. Use org.apache.xml.serializer.OuputPropertiesFactory. getDefaultMethodProperties directly.
    `int` | `getIntProperty(QName key)` Searches for the int property with the specified key in the property list.
    `int` | `getIntProperty(java.lang.String key)` Searches for the int property with the specified key in the property list.
    `java.util.Properties` | `getProperties()` Get the Properties object that this class wraps.
    `java.lang.String` | `getProperty(QName key)` Searches for the property with the specified key in the property list.
    `java.lang.String` | `getProperty(java.lang.String key)` Searches for the property with the specified key in the property list.
    `java.util.Vector` | `getQNameProperties(QName key)` Searches for the list of qname properties with the specified key in the property list.
    `java.util.Vector` | `getQNameProperties(java.lang.String key)` Searches for the list of qname properties with the specified key in the property list.
    `static java.util.Vector` | `getQNameProperties(java.lang.String key, java.util.Properties props)` Searches for the list of qname properties with the specified key in the property list.
    `QName` | `getQNameProperty(QName key)` Searches for the qname property with the specified key in the property list.
    `QName` | `getQNameProperty(java.lang.String key)` Searches for the qname property with the specified key in the property list.
    `static QName` | `getQNameProperty(java.lang.String key, java.util.Properties props)` Searches for the qname property with the specified key in the property list.
    `static boolean` | `isLegalPropertyKey(java.lang.String key)` Report if the key given as an argument is a legal xsl:output key.
    `void` | `recompose(StylesheetRoot root)` This function is called to recompose all of the output format extended elements.
    `void` | `setBooleanProperty(QName key, boolean value)` Set an output property.
    `void` | `setBooleanProperty(java.lang.String key, boolean value)` Set an output property.
    `void` | `setIntProperty(QName key, int value)` Set an output property.
    `void` | `setIntProperty(java.lang.String key, int value)` Set an output property.
    `void` | `setMethodDefaults(java.lang.String method)` Reset the default properties based on the method.
    `void` | `setProperty(QName key, java.lang.String value)` Set an output property.
    `void` | `setProperty(java.lang.String key, java.lang.String value)` Set an output property.
    `void` | `setQNameProperties(QName key, java.util.Vector v)` Set an output property with a QName list value.
    `void` | `setQNameProperties(java.lang.String key, java.util.Vector v)` Set an output property with a QName list value.
    `void` | `setQNameProperty(QName key, QName value)` Set an output property with a QName value.
    `void` | `setQNameProperty(java.lang.String key, QName value)` Set an output property with a QName value.

    - ### Methods inherited from class org.apache.xalan.templates.ElemTemplateElement

      `appendChild, appendChild, callVisitors, canAcceptVariables, canStripWhiteSpace, compareTo, containsExcludeResultPrefix, endCompose, error, error, execute, exprAddChild, exprGetChild, exprGetNumChildren, exprGetParent, exprSetParent, getBaseIdentifier, getChildNodes, getColumnNumber, getDeclaredPrefixes, getDOMBackPointer, getEndColumnNumber, getEndLineNumber, getFirstChild, getFirstChildElem, getLastChild, getLastChildElem, getLength, getLineNumber, getLocalName, getNamespaceForPrefix, getNamespaceForPrefix, getNextSibling, getNextSiblingElem, getNodeName, getNodeType, getOwnerDocument, getOwnerXSLTemplate, getParentElem, getParentNode, getParentNodeElem, getPreviousSibling, getPreviousSiblingElem, getPublicId, getStylesheet, getStylesheetComposed, getStylesheetRoot, getSystemId, getTagName, getUid, getXmlSpace, getXSLToken, handlesNullPrefixes, hasChildNodes, hasTextLitOnly, hasVariableDecl, insertBefore, isCompiledTemplate, item, removeChild, replaceChild, replaceChild, resolvePrefixTables, runtimeInit, setDOMBackPointer, setEndLocaterInfo, setLocaterInfo, setParentElem, setPrefixes, setPrefixes, setUid, setXmlSpace, shouldStripWhiteSpace`

    - ### Methods inherited from class org.apache.xml.utils.UnImplNode

      `adoptNode, appendData, cloneNode, compareDocumentPosition, createAttribute, createAttributeNS, createCDATASection, createComment, createDocumentFragment, createElement, createElementNS, createEntityReference, createProcessingInstruction, createTextNode, deleteData, getActualEncoding, getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getAttributes, getBaseURI, getDoctype, getDocumentElement, getDocumentURI, getDomConfig, getElementById, getElementsByTagName, getElementsByTagNameNS, getFeature, getImplementation, getInputEncoding, getNamespaceURI, getNodeValue, getOwnerElement, getPrefix, getSchemaTypeInfo, getSpecified, getStrictErrorChecking, getTextContent, getUserData, getWholeText, getXmlEncoding, getXmlStandalone, getXmlVersion, hasAttribute, hasAttributeNS, hasAttributes, importNode, insertData, isDefaultNamespace, isEqualNode, isId, isSameNode, isSupported, isWhitespaceInElementContent, lookupNamespaceURI, lookupPrefix, normalize, normalizeDocument, removeAttribute, removeAttributeNode, removeAttributeNS, removeChild, renameNode, replaceData, replaceWholeText, setActualEncoding, setAttribute, setAttributeNode, setAttributeNodeNS, setAttributeNS, setData, setDocumentURI, setIdAttribute, setIdAttribute, setIdAttributeNode, setIdAttributeNS, setInputEncoding, setNodeValue, setPrefix, setStrictErrorChecking, setTextContent, setUserData, setValue, setXmlEncoding, setXmlStandalone, setXmlVersion, splitText, substringData`

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

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

- - ### Constructor Detail

    - #### OutputProperties

          public OutputProperties()

      Creates an empty OutputProperties with no default values.

    - #### OutputProperties

          public OutputProperties(java.util.Properties defaults)

      Creates an empty OutputProperties with the specified defaults.
      Parameters:
        `defaults` - the defaults.

    - #### OutputProperties

          public OutputProperties(java.lang.String method)

      Creates an empty OutputProperties with the defaults specified by a property file. The method argument is used to construct a string of the form output_[method].properties (for instance, output_html.properties). The output_xml.properties file is always used as the base.

      At the moment, anything other than 'text', 'xml', and 'html', will use the output_xml.properties file.

      Parameters:
        `method` - non-null reference to method name.

  - ### Method Detail

    - #### clone

          public java.lang.Object clone()

      Clone this OutputProperties, including a clone of the wrapped Properties reference.
      Overrides:
        `clone` in class `java.lang.Object`
      Returns:
        A new OutputProperties reference, mutation of which should not effect this object.

    - #### setProperty

          public void setProperty(QName key,
                                  java.lang.String value)

      Set an output property.
      Parameters:
        `key` - the key to be placed into the property list.
        `value` - the value corresponding to `key`.
      See Also:
        `OutputKeys`

    - #### setProperty

          public void setProperty(java.lang.String key,
                                  java.lang.String value)

      Set an output property.
      Parameters:
        `key` - the key to be placed into the property list.
        `value` - the value corresponding to `key`.
      See Also:
        `OutputKeys`

    - #### getProperty

          public java.lang.String getProperty(QName key)

      Searches for the property with the specified key in the property list. If the key is not found in this property list, the default property list, and its defaults, recursively, are then checked. The method returns `null` if the property is not found.
      Parameters:
        `key` - the property key.
      Returns:
        the value in this property list with the specified key value.

    - #### getProperty

          public java.lang.String getProperty(java.lang.String key)

      Searches for the property with the specified key in the property list. If the key is not found in this property list, the default property list, and its defaults, recursively, are then checked. The method returns `null` if the property is not found.
      Parameters:
        `key` - the property key.
      Returns:
        the value in this property list with the specified key value.

    - #### setBooleanProperty

          public void setBooleanProperty(QName key,
                                         boolean value)

      Set an output property.
      Parameters:
        `key` - the key to be placed into the property list.
        `value` - the value corresponding to `key`.
      See Also:
        `OutputKeys`

    - #### setBooleanProperty

          public void setBooleanProperty(java.lang.String key,
                                         boolean value)

      Set an output property.
      Parameters:
        `key` - the key to be placed into the property list.
        `value` - the value corresponding to `key`.
      See Also:
        `OutputKeys`

    - #### getBooleanProperty

          public boolean getBooleanProperty(QName key)

      Searches for the boolean property with the specified key in the property list. If the key is not found in this property list, the default property list, and its defaults, recursively, are then checked. The method returns `false` if the property is not found, or if the value is other than "yes".
      Parameters:
        `key` - the property key.
      Returns:
        the value in this property list as a boolean value, or false if null or not "yes".

    - #### getBooleanProperty

          public boolean getBooleanProperty(java.lang.String key)

      Searches for the boolean property with the specified key in the property list. If the key is not found in this property list, the default property list, and its defaults, recursively, are then checked. The method returns `false` if the property is not found, or if the value is other than "yes".
      Parameters:
        `key` - the property key.
      Returns:
        the value in this property list as a boolean value, or false if null or not "yes".

    - #### setIntProperty

          public void setIntProperty(QName key,
                                     int value)

      Set an output property.
      Parameters:
        `key` - the key to be placed into the property list.
        `value` - the value corresponding to `key`.
      See Also:
        `OutputKeys`

    - #### setIntProperty

          public void setIntProperty(java.lang.String key,
                                     int value)

      Set an output property.
      Parameters:
        `key` - the key to be placed into the property list.
        `value` - the value corresponding to `key`.
      See Also:
        `OutputKeys`

    - #### getIntProperty

          public int getIntProperty(QName key)

      Searches for the int property with the specified key in the property list. If the key is not found in this property list, the default property list, and its defaults, recursively, are then checked. The method returns `false` if the property is not found, or if the value is other than "yes".
      Parameters:
        `key` - the property key.
      Returns:
        the value in this property list as a int value, or false if null or not a number.

    - #### getIntProperty

          public int getIntProperty(java.lang.String key)

      Searches for the int property with the specified key in the property list. If the key is not found in this property list, the default property list, and its defaults, recursively, are then checked. The method returns `false` if the property is not found, or if the value is other than "yes".
      Parameters:
        `key` - the property key.
      Returns:
        the value in this property list as a int value, or false if null or not a number.

    - #### setQNameProperty

          public void setQNameProperty(QName key,
                                       QName value)

      Set an output property with a QName value. The QName will be turned into a string with the namespace in curly brackets.
      Parameters:
        `key` - the key to be placed into the property list.
        `value` - the value corresponding to `key`.
      See Also:
        `OutputKeys`

    - #### setMethodDefaults

          public void setMethodDefaults(java.lang.String method)

      Reset the default properties based on the method.
      Parameters:
        `method` - the method value.
      See Also:
        `OutputKeys`

    - #### setQNameProperty

          public void setQNameProperty(java.lang.String key,
                                       QName value)

      Set an output property with a QName value. The QName will be turned into a string with the namespace in curly brackets.
      Parameters:
        `key` - the key to be placed into the property list.
        `value` - the value corresponding to `key`.
      See Also:
        `OutputKeys`

    - #### getQNameProperty

          public QName getQNameProperty(QName key)

      Searches for the qname property with the specified key in the property list. If the key is not found in this property list, the default property list, and its defaults, recursively, are then checked. The method returns `null` if the property is not found.
      Parameters:
        `key` - the property key.
      Returns:
        the value in this property list as a QName value, or false if null or not "yes".

    - #### getQNameProperty

          public QName getQNameProperty(java.lang.String key)

      Searches for the qname property with the specified key in the property list. If the key is not found in this property list, the default property list, and its defaults, recursively, are then checked. The method returns `null` if the property is not found.
      Parameters:
        `key` - the property key.
      Returns:
        the value in this property list as a QName value, or false if null or not "yes".

    - #### getQNameProperty

          public static QName getQNameProperty(java.lang.String key,
                                               java.util.Properties props)

      Searches for the qname property with the specified key in the property list. If the key is not found in this property list, the default property list, and its defaults, recursively, are then checked. The method returns `null` if the property is not found.
      Parameters:
        `key` - the property key.
        `props` - the list of properties to search in.
      Returns:
        the value in this property list as a QName value, or false if null or not "yes".

    - #### setQNameProperties

          public void setQNameProperties(QName key,
                                         java.util.Vector v)

      Set an output property with a QName list value. The QNames will be turned into strings with the namespace in curly brackets.
      Parameters:
        `key` - the key to be placed into the property list.
        `v` - non-null list of QNames corresponding to `key`.
      See Also:
        `OutputKeys`

    - #### setQNameProperties

          public void setQNameProperties(java.lang.String key,
                                         java.util.Vector v)

      Set an output property with a QName list value. The QNames will be turned into strings with the namespace in curly brackets.
      Parameters:
        `key` - the key to be placed into the property list.
        `v` - non-null list of QNames corresponding to `key`.
      See Also:
        `OutputKeys`

    - #### getQNameProperties

          public java.util.Vector getQNameProperties(QName key)

      Searches for the list of qname properties with the specified key in the property list. If the key is not found in this property list, the default property list, and its defaults, recursively, are then checked. The method returns `null` if the property is not found.
      Parameters:
        `key` - the property key.
      Returns:
        the value in this property list as a vector of QNames, or false if null or not "yes".

    - #### getQNameProperties

          public java.util.Vector getQNameProperties(java.lang.String key)

      Searches for the list of qname properties with the specified key in the property list. If the key is not found in this property list, the default property list, and its defaults, recursively, are then checked. The method returns `null` if the property is not found.
      Parameters:
        `key` - the property key.
      Returns:
        the value in this property list as a vector of QNames, or false if null or not "yes".

    - #### getQNameProperties

          public static java.util.Vector getQNameProperties(java.lang.String key,
                                                            java.util.Properties props)

      Searches for the list of qname properties with the specified key in the property list. If the key is not found in this property list, the default property list, and its defaults, recursively, are then checked. The method returns `null` if the property is not found.
      Parameters:
        `key` - the property key.
        `props` - the list of properties to search in.
      Returns:
        the value in this property list as a vector of QNames, or false if null or not "yes".

    - #### recompose

          public void recompose(StylesheetRoot root)
                         throws javax.xml.transform.TransformerException

      This function is called to recompose all of the output format extended elements.
      Overrides:
        `recompose` in class `ElemTemplateElement`
      Parameters:
        `root` - non-null reference to the stylesheet root object.
      Throws:
        `javax.xml.transform.TransformerException`

    - #### compose

          public void compose(StylesheetRoot sroot)
                       throws javax.xml.transform.TransformerException

      This function is called after everything else has been recomposed, and allows the template to set remaining values that may be based on some other property that depends on recomposition.
      Overrides:
        `compose` in class `ElemTemplateElement`
      Throws:
        `javax.xml.transform.TransformerException`

    - #### getProperties

          public java.util.Properties getProperties()

      Get the Properties object that this class wraps.
      Returns:
        non-null reference to Properties object.

    - #### copyFrom

          public void copyFrom(java.util.Properties src)

      Copy the keys and values from the source to this object. This will not copy the default values. This is meant to be used by going from a higher precedence object to a lower precedence object, so that if a key already exists, this method will not reset it.
      Parameters:
        `src` - non-null reference to the source properties.

    - #### copyFrom

          public void copyFrom(java.util.Properties src,
                               boolean shouldResetDefaults)

      Copy the keys and values from the source to this object. This will not copy the default values. This is meant to be used by going from a higher precedence object to a lower precedence object, so that if a key already exists, this method will not reset it.
      Parameters:
        `src` - non-null reference to the source properties.
        `shouldResetDefaults` - true if the defaults should be reset based on the method property.

    - #### copyFrom

          public void copyFrom(OutputProperties opsrc)
                        throws javax.xml.transform.TransformerException

      Copy the keys and values from the source to this object. This will not copy the default values. This is meant to be used by going from a higher precedence object to a lower precedence object, so that if a key already exists, this method will not reset it.
      Parameters:
        `opsrc` - non-null reference to an OutputProperties.
      Throws:
        `javax.xml.transform.TransformerException`

    - #### isLegalPropertyKey

          public static boolean isLegalPropertyKey(java.lang.String key)

      Report if the key given as an argument is a legal xsl:output key.
      Parameters:
        `key` - non-null reference to key name.
      Returns:
        true if key is legal.

    - #### getDefaultMethodProperties

          public static java.util.Properties getDefaultMethodProperties(java.lang.String method)

      Deprecated. Use org.apache.xml.serializer.OuputPropertiesFactory. getDefaultMethodProperties directly.
      Creates an empty OutputProperties with the defaults specified by a property file. The method argument is used to construct a string of the form output_[method].properties (for instance, output_html.properties). The output_xml.properties file is always used as the base.

      At the moment, anything other than 'text', 'xml', and 'html', will use the output_xml.properties file.

      Parameters:
        `method` - non-null reference to method name.
      Returns:
        Properties object that holds the defaults for the given method.

Copyright © 2023 Apache XML Project. All Rights Reserved.