|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.xalan.extensions.ExtensionHandler org.apache.xalan.extensions.ExtensionHandlerJava org.apache.xalan.extensions.ExtensionHandlerJavaPackage
public class ExtensionHandlerJavaPackage
Represents an extension namespace for XPath that handles java packages that may be fully or partially specified. It is recommended that the class URI be of one of the following forms:
xalan://partial.class.name xalan:// http://xml.apache.org/xalan/java (which is the same as xalan://)However, we do not enforce this. If the class name contains a a /, we only use the part to the right of the rightmost slash. In addition, we ignore any "class:" prefix. Provides functions to test a function's existence and call a function. Also provides functions to test an element's existence and call an element.
Field Summary |
---|
Fields inherited from class org.apache.xalan.extensions.ExtensionHandlerJava |
---|
m_className |
Fields inherited from class org.apache.xalan.extensions.ExtensionHandler |
---|
m_namespaceUri, m_scriptLang |
Constructor Summary | |
---|---|
ExtensionHandlerJavaPackage(java.lang.String namespaceUri,
java.lang.String scriptLang,
java.lang.String className)
Construct a new extension namespace handler given all the information needed. |
Method Summary | |
---|---|
java.lang.Object |
callFunction(FuncExtFunction extFunction,
java.util.Vector args,
ExpressionContext exprContext)
Process a call to an XPath extension function |
java.lang.Object |
callFunction(java.lang.String funcName,
java.util.Vector args,
java.lang.Object methodKey,
ExpressionContext exprContext)
Process a call to a function in the package java namespace. |
boolean |
isElementAvailable(java.lang.String element)
Tests whether a certain element name is known within this namespace. |
boolean |
isFunctionAvailable(java.lang.String function)
Tests whether a certain function name is known within this namespace. |
void |
processElement(java.lang.String localPart,
ElemTemplateElement element,
TransformerImpl transformer,
Stylesheet stylesheetTree,
java.lang.Object methodKey)
Process a call to this extension namespace via an element. |
Methods inherited from class org.apache.xalan.extensions.ExtensionHandlerJava |
---|
getFromCache, putToCache |
Methods inherited from class org.apache.xalan.extensions.ExtensionHandler |
---|
getClassForName |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public ExtensionHandlerJavaPackage(java.lang.String namespaceUri, java.lang.String scriptLang, java.lang.String className)
namespaceUri
- the extension namespace URI that I'm implementingscriptLang
- language of code implementing the extensionclassName
- the beginning of the class name of the class. This
should be followed by a dot (.)Method Detail |
---|
public boolean isFunctionAvailable(java.lang.String function)
isFunctionAvailable
in class ExtensionHandler
function
- name of the function being tested
public boolean isElementAvailable(java.lang.String element)
isElementAvailable
in class ExtensionHandler
element
- name of the element being tested
public java.lang.Object callFunction(java.lang.String funcName, java.util.Vector args, java.lang.Object methodKey, ExpressionContext exprContext) throws javax.xml.transform.TransformerException
Constructor: packagens:class.name.new(arg1, arg2, ...) Static method: packagens:class.name.method(arg1, arg2, ...) Instance method: packagens:method(obj, arg1, arg2, ...)We use the following rules to determine the type of call made:
callFunction
in class ExtensionHandler
funcName
- Function name.args
- The arguments of the function call.methodKey
- A key that uniquely identifies this class and method call.exprContext
- The context in which this expression is being executed.
javax.xml.transform.TransformerException
- if parsing troublepublic java.lang.Object callFunction(FuncExtFunction extFunction, java.util.Vector args, ExpressionContext exprContext) throws javax.xml.transform.TransformerException
callFunction
in class ExtensionHandler
extFunction
- The XPath extension functionargs
- The arguments of the function call.exprContext
- The context in which this expression is being executed.
javax.xml.transform.TransformerException
public void processElement(java.lang.String localPart, ElemTemplateElement element, TransformerImpl transformer, Stylesheet stylesheetTree, java.lang.Object methodKey) throws javax.xml.transform.TransformerException, java.io.IOException
processElement
in class ExtensionHandler
localPart
- Element name's local part.element
- The extension element being processed.transformer
- Handle to TransformerImpl.stylesheetTree
- The compiled stylesheet tree.methodKey
- A key that uniquely identifies this element call.
java.io.IOException
- if loading trouble
javax.xml.transform.TransformerException
- if parsing trouble
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |