org.apache.xalan.extensions
Class ExtensionHandlerExsltFunction

java.lang.Object
  |
  +--org.apache.xalan.extensions.ExtensionHandler
        |
        +--org.apache.xalan.extensions.ExtensionHandlerExsltFunction

public class ExtensionHandlerExsltFunction
extends ExtensionHandler

Execute EXSLT functions, determine the availability of EXSLT functions, and the availability of an EXSLT result element.


Constructor Summary
ExtensionHandlerExsltFunction(java.lang.String ns, StylesheetRoot stylesheet)
          Constructor called from ElemExsltFunction runtimeInit().
 
Method Summary
 java.lang.Object callFunction(FuncExtFunction extFunction, java.util.Vector args, ExpressionContext exprContext)
          Execute the EXSLT function and return the result value.
 java.lang.Object callFunction(java.lang.String funcName, java.util.Vector args, java.lang.Object methodKey, ExpressionContext exprContext)
          Execute the EXSLT function and return the result value.
 ElemExsltFunction getFunction(java.lang.String funcName)
          Get the ElemExsltFunction element associated with the function.
 boolean isElementAvailable(java.lang.String elemName)
          If an element-available() call applies to an EXSLT result element within an EXSLT function element, return true.
 boolean isFunctionAvailable(java.lang.String funcName)
          Does the EXSLT function exist?
 void processElement(java.lang.String localPart, ElemTemplateElement element, TransformerImpl transformer, Stylesheet stylesheetTree, java.lang.Object methodKey)
          Required by ExtensionHandler (an abstract method).
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ExtensionHandlerExsltFunction

public ExtensionHandlerExsltFunction(java.lang.String ns,
                                     StylesheetRoot stylesheet)
Constructor called from ElemExsltFunction runtimeInit().
Method Detail

processElement

public void processElement(java.lang.String localPart,
                           ElemTemplateElement element,
                           TransformerImpl transformer,
                           Stylesheet stylesheetTree,
                           java.lang.Object methodKey)
                    throws TransformerException,
                           java.io.IOException
Required by ExtensionHandler (an abstract method). No-op.
Overrides:
processElement in class ExtensionHandler

getFunction

public ElemExsltFunction getFunction(java.lang.String funcName)
Get the ElemExsltFunction element associated with the function.
Parameters:
funcName - Local name of the function.
Returns:
the ElemExsltFunction element associated with the function, null if none exists.

isFunctionAvailable

public boolean isFunctionAvailable(java.lang.String funcName)
Does the EXSLT function exist?
Parameters:
funcName - Local name of the function.
Returns:
true if the function exists.
Overrides:
isFunctionAvailable in class ExtensionHandler

isElementAvailable

public boolean isElementAvailable(java.lang.String elemName)
If an element-available() call applies to an EXSLT result element within an EXSLT function element, return true. Note: The EXSLT function element is a template-level element, and element-available() returns false for it.
Parameters:
elemName - name of the element.
Returns:
true if the function is available.
Overrides:
isElementAvailable in class ExtensionHandler

callFunction

public java.lang.Object callFunction(java.lang.String funcName,
                                     java.util.Vector args,
                                     java.lang.Object methodKey,
                                     ExpressionContext exprContext)
                              throws TransformerException
Execute the EXSLT function and return the result value.
Parameters:
funcName - Name of the EXSLT function.
args - The arguments of the function call.
methodKey - Not used.
exprContext - Used to get the XPathContext.
Returns:
the return value of the function evaluation.
Throws:
TransformerException -  
Overrides:
callFunction in class ExtensionHandler

callFunction

public java.lang.Object callFunction(FuncExtFunction extFunction,
                                     java.util.Vector args,
                                     ExpressionContext exprContext)
                              throws TransformerException
Execute the EXSLT function and return the result value.
Parameters:
extFunction - The XPath extension function
args - The arguments of the function call.
exprContext - The context in which this expression is being executed.
Returns:
the return value of the function evaluation.
Throws:
TransformerException -  
Overrides:
callFunction in class ExtensionHandler


Copyright 2006 Apache XML Project. All Rights Reserved.