|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.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 extension| Method Detail |
public static Class getClassForName(String className)
throws ClassNotFoundException
className - Name of the class to load
ClassNotFoundExceptionpublic 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 trouble
public 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 | |||||||||