|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.xalan.extensions.ExtensionHandler
Abstract base class for handling an extension namespace for XPath. Provides functions to test a function's existence and call a function. Also provides functions for calling an element and testing for an element's existence.
Field Summary | |
private static Method |
getCCL
the Method object for getContextClassLoader |
protected String |
m_namespaceUri
uri of the extension namespace |
protected String |
m_scriptLang
scripting language of implementation |
private static Object[] |
NO_OBJS
a zero length Object array used in getClassForName() |
Constructor Summary | |
protected |
ExtensionHandler(String namespaceUri,
String scriptLang)
Construct a new extension namespace handler given all the information needed. |
Method Summary | |
abstract Object |
callFunction(String funcName,
Vector args,
Object methodKey,
ExpressionContext exprContext)
Process a call to a function. |
static Class |
getClassForName(String className)
Replacement for Class.forName. |
abstract boolean |
isElementAvailable(String element)
Tests whether a certain element name is known within this namespace. |
abstract boolean |
isFunctionAvailable(String function)
Tests whether a certain function name is known within this namespace. |
abstract void |
processElement(String localPart,
ElemTemplateElement element,
TransformerImpl transformer,
Stylesheet stylesheetTree,
Object methodKey)
Process a call to this extension namespace via an element. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected String m_namespaceUri
protected String m_scriptLang
private static final Object[] NO_OBJS
private static Method getCCL
Constructor Detail |
protected ExtensionHandler(String namespaceUri, String scriptLang)
namespaceUri
- the extension namespace URI that I'm implementingscriptLang
- language of code implementing the extensionMethod Detail |
public static Class getClassForName(String className) throws ClassNotFoundException
className
- Name of the class to load
ClassNotFoundException
public abstract boolean isFunctionAvailable(String function)
function
- name of the function being tested
public abstract boolean isElementAvailable(String element)
element
- Name of element to check
public abstract Object callFunction(String funcName, Vector args, Object methodKey, ExpressionContext exprContext) throws javax.xml.transform.TransformerException
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 abstract void processElement(String localPart, ElemTemplateElement element, TransformerImpl transformer, Stylesheet stylesheetTree, Object methodKey) throws javax.xml.transform.TransformerException, IOException
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 class and method call.
XSLProcessorException
- thrown if something goes wrong
while running the extension handler.
MalformedURLException
- if loading trouble
FileNotFoundException
- if loading trouble
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 |