## org.apache.xalan.templates
Class ElemCallTemplate

    java.lang.Object
      |
      +--org.apache.xml.utils.UnImplNode
            |
            +--org.apache.xalan.templates.ElemTemplateElement
                  |
                  +--org.apache.xalan.templates.ElemForEach
                        |
                        +--org.apache.xalan.templates.ElemCallTemplate

Direct Known Subclasses:
  ElemApplyTemplates

public class ElemCallTemplate
extends ElemForEach

Implement xsl:call-template.

     &!ELEMENT xsl:call-template (xsl:with-param)*>
     &!ATTLIST xsl:call-template
       name %qname; #REQUIRED
     &

See Also:
  named-templates in XSLT Specification, Serialized Form
Usage:
  **For advanced use only**

Field Summary
`QName` `m_templateName` An xsl:call-template element invokes a template by name; it has a required name attribute that identifies the template to be invoked.

Fields inherited from class org.apache.xalan.templates.ElemForEach
`m_doc_cache_off`

Constructor Summary
`ElemCallTemplate()`

Method Summary
`ElemTemplateElement` `appendChild(ElemTemplateElement newChild)` Add a child to the child list.
`void` `callChildVisitors(XSLTVisitor visitor, boolean callAttrs)` Call the children visitors.
`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` `endCompose(StylesheetRoot sroot)` This after the template's children have been composed.
`void` `execute(TransformerImpl transformer)` Invoke a named template.
`QName` `getName()` Get the "name" attribute.
`java.lang.String` `getNodeName()` Return the node name.
`ElemWithParam` `getParamElem(int i)` Get a xsl:param element associated with this element.
`int` `getParamElemCount()` Get the count xsl:param elements associated with this element.
`int` `getXSLToken()` Get an int constant identifying the type of element.
`void` `setName(QName name)` Set the "name" attribute.
`void` `setParamElem(ElemWithParam ParamElem)` Set a xsl:param element associated with this element.

Methods inherited from class org.apache.xalan.templates.ElemForEach
`getExpression, getSelect, getSortElem, getSortElemCount, setExpression, setSelect, setSortElem, sortNodes, transformSelectedNodes`

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

`appendChild, callVisitors, canAcceptVariables, canStripWhiteSpace, compareTo, containsExcludeResultPrefix, error, error, exprAddChild, exprGetChild, exprGetNumChildren, exprGetParent, exprSetParent, getBaseIdentifier, getChildNodes, getColumnNumber, getDeclaredPrefixes, getDOMBackPointer, getEndColumnNumber, getEndLineNumber, getFirstChild, getFirstChildElem, getLastChild, getLastChildElem, getLength, getLineNumber, getLocalName, getNamespaceForPrefix, getNamespaceForPrefix, getNextSibling, getNextSiblingElem, getNodeType, getOwnerDocument, getOwnerXSLTemplate, getParentElem, getParentNode, getParentNodeElem, getPreviousSibling, getPreviousSiblingElem, getPublicId, getStylesheet, getStylesheetComposed, getStylesheetRoot, getSystemId, getTagName, getUid, getXmlSpace, handlesNullPrefixes, hasChildNodes, hasTextLitOnly, hasVariableDecl, insertBefore, isCompiledTemplate, item, recompose, 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`

Field Detail

### m_templateName

    public QName m_templateName

  An xsl:call-template element invokes a template by name; it has a required name attribute that identifies the template to be invoked.

Constructor Detail

### ElemCallTemplate

    public ElemCallTemplate()

Method Detail

### setName

    public void setName(QName name)

  Set the "name" attribute. An xsl:call-template element invokes a template by name; it has a required name attribute that identifies the template to be invoked.
  Parameters:
    `name` - Name attribute to set

### getName

    public QName getName()

  Get the "name" attribute. An xsl:call-template element invokes a template by name; it has a required name attribute that identifies the template to be invoked.
  Returns:
    Name attribute of this element

### getXSLToken

    public int getXSLToken()

  Get an int constant identifying the type of element.
  Returns:
    The token ID for this element
  Overrides:
    getXSLToken in class ElemForEach
  See Also:
    `Constants`

### getNodeName

    public java.lang.String getNodeName()

  Return the node name.
  Returns:
    The name of this element
  Overrides:
    getNodeName in class ElemForEach

### compose

    public void compose(StylesheetRoot sroot)
                 throws 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 ElemForEach

### endCompose

    public void endCompose(StylesheetRoot sroot)
                    throws TransformerException

  This after the template's children have been composed.
  Overrides:
    endCompose in class ElemForEach

### execute

    public void execute(TransformerImpl transformer)
                 throws TransformerException

  Invoke a named template.
  Parameters:
    `transformer` - non-null reference to the the current transform-time state.
  Throws:
    TransformerException -
  Overrides:
    execute in class ElemForEach
  See Also:
    named-templates in XSLT Specification

### getParamElemCount

    public int getParamElemCount()

  Get the count xsl:param elements associated with this element.
  Returns:
    The number of xsl:param elements.

### getParamElem

    public ElemWithParam getParamElem(int i)

  Get a xsl:param element associated with this element.
  Parameters:
    `i` - Index of element to find
  Returns:
    xsl:param element at given index

### setParamElem

    public void setParamElem(ElemWithParam ParamElem)

  Set a xsl:param element associated with this element.
  Parameters:
    `ParamElem` - xsl:param element to set.

### appendChild

    public ElemTemplateElement appendChild(ElemTemplateElement newChild)

  Add a child to the child list.
  Parameters:
    `newChild` - Child to add to this node's children list
  Returns:
    The child that was just added the children list
  Throws:
    DOMException -
  Overrides:
    appendChild in class ElemForEach

### callChildVisitors

    public void callChildVisitors(XSLTVisitor visitor,
                                  boolean callAttrs)

  Call the children visitors.
  Parameters:
    `visitor` - The visitor whose appropriate method will be called.
  Overrides:
    callChildVisitors in class ElemForEach

Copyright © 2006 Apache XML Project. All Rights Reserved.