BEA Systems, Inc.

WebLogic Server 6.1 API Reference

weblogic.apache.xalan.extensions
Class ExtensionHandler

java.lang.Object
  |
  +--weblogic.apache.xalan.extensions.ExtensionHandler
Direct Known Subclasses:
ExtensionHandlerGeneral, ExtensionHandlerJava

public abstract class ExtensionHandler
extends java.lang.Object

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.

Author:
Sanjiva Weerawarana (sanjiva@watson.ibm.com)
Copyright © 2001 BEA Systems, Inc. All Rights Reserved.

Field Summary
protected  java.lang.String m_namespaceUri
          uri of the extension namespace
protected  java.lang.String m_scriptLang
          scripting language of implementation
 
Constructor Summary
protected ExtensionHandler(java.lang.String namespaceUri, java.lang.String scriptLang)
          Construct a new extension namespace handler given all the information needed.
 
Method Summary
abstract  java.lang.Object callFunction(java.lang.String funcName, java.util.Vector args, java.lang.Object methodKey, ExpressionContext exprContext)
          Process a call to a function.
abstract  boolean isElementAvailable(java.lang.String element)
          Tests whether a certain element name is known within this namespace.
abstract  boolean isFunctionAvailable(java.lang.String function)
          Tests whether a certain function name is known within this namespace.
abstract  void processElement(java.lang.String localPart, org.w3c.dom.Element element, TransformerImpl transformer, Stylesheet stylesheetTree, org.w3c.dom.Node sourceTree, org.w3c.dom.Node sourceNode, QName mode, java.lang.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

m_namespaceUri

protected java.lang.String m_namespaceUri
uri of the extension namespace

m_scriptLang

protected java.lang.String m_scriptLang
scripting language of implementation
Constructor Detail

ExtensionHandler

protected ExtensionHandler(java.lang.String namespaceUri,
                           java.lang.String scriptLang)
Construct a new extension namespace handler given all the information needed.

Parameters:
namespaceUri - the extension namespace URI that I'm implementing
scriptLang - language of code implementing the extension
Method Detail

isFunctionAvailable

public abstract boolean isFunctionAvailable(java.lang.String function)
Tests whether a certain function name is known within this namespace.

Parameters:
function - name of the function being tested
Returns:
true if its known, false if not.

isElementAvailable

public abstract boolean isElementAvailable(java.lang.String element)
Tests whether a certain element name is known within this namespace.

Parameters:
function - name of the function being tested
element - Name of element to check
Returns:
true if its known, false if not.

callFunction

public abstract java.lang.Object callFunction(java.lang.String funcName,
                                              java.util.Vector args,
                                              java.lang.Object methodKey,
                                              ExpressionContext exprContext)
                                       throws javax.xml.transform.TransformerException
Process a call to a function.

Parameters:
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.
Returns:
the return value of the function evaluation.
Throws:
javax.xml.transform.TransformerException - if parsing trouble

processElement

public abstract void processElement(java.lang.String localPart,
                                    org.w3c.dom.Element element,
                                    TransformerImpl transformer,
                                    Stylesheet stylesheetTree,
                                    org.w3c.dom.Node sourceTree,
                                    org.w3c.dom.Node sourceNode,
                                    QName mode,
                                    java.lang.Object methodKey)
                             throws javax.xml.transform.TransformerException,
                                    java.io.IOException
Process a call to this extension namespace via an element. As a side effect, the results are sent to the TransformerImpl's result tree.

Parameters:
localPart - Element name's local part.
element - The extension element being processed.
transformer - Handle to TransformerImpl.
stylesheetTree - The compiled stylesheet tree.
mode - The current mode.
sourceTree - The root of the source tree (but don't assume it's a Document).
sourceNode - The current context node.
methodKey - A key that uniquely identifies this class and method call.
Throws:
XSLProcessorException - thrown if something goes wrong while running the extension handler.
MalformedURLException - if loading trouble
FileNotFoundException - if loading trouble
java.io.IOException - if loading trouble
javax.xml.transform.TransformerException - if parsing trouble

Documentation is available at
http://e-docs.bea.com/wls/docs61

WebLogic classes and methods that do not appear in this reference are not public and are not supported.