org.exolab.adaptx.xslt

Class ProcessorState


public class ProcessorState
extends XPathContext

The current RuleProcessor environment.

Version:
$Revision: 1.1.1.1 $ $Date: 2003/03/01 07:39:48 $

Author:
Keith Visco

Field Summary

static String
ECMASCRIPT
static String
JPYTHON

Method Summary

void
associateNamespace(String nsPrefix, String nsURI)
Associates a namespace with the given prefix,
String
generateId(XPathNode node)
Creates a unique identifier for the given node
AttributeValueTemplate
getAttributeValueTemplate(String avtString)
Returns the value of the given String as an AttributeValueTemplate
XPathNode
getCurrentNode()
Returns the "current" node The current node, is different than the context node, as the context node may change during the evaluation of an xpath expression, the current node does not.
int[]
getDocumentOrder(XPathNode node)
Returns the document order of the given node.
XPathNode
getElementById(XPathNode root, String id)
Returns the element associated with the given identifier.
ErrorObserver
getErrorObserver()
Returns the ErrorObserver to report errors to
XPathFunction
getFunction(String name)
Returns the XPathFunction with the given name and belonging to the given namespace.
XPathFunction
getFunction(String namespace, String name)
Returns the XPathFunction with the given name and belonging to the given namespace.
String
getNamespaceURI(String prefix)
Returns the namespace associated with the given prefix.
XPathNode
getNode()
Returns the context node of this XPathContext
NodeSet
getNodeSet()
Returns the current context node-set.
String
getParameter(String name)
Returns the parameter value associated with the given name.
ScopedVariableSet
getParameters()
int
getPosition()
Returns the position of the context node.
String
getProperty(String name)
Returns the Property value associated with the given name.
int
getSize()
Returns the size of the context.
URILocation
getStylesheetLocation()
URIResolver
getURIResolver()
Returns the URIResolver for resolving all URIs.
XPathResult
getVariable(String name)
Returns the XPath result bound to the given variable name.
QuickStack
getXMLSpaceModes()
Returns the stack of XML space modes
boolean
isFunctionAvailable(String name, String namespace)
Returns true if a function with the given name exists within the given namespace.
boolean
isXSLTNamespace(String prefixOrURI)
Determines if the given prefix or URI maps to the XSLT namespace
XPathNode
popCurrentNode()
Removes the current node from the top of the stack The current node, is different than the context node, as the context node may change during the evaluation of an xpath expression, the current node does not.
ResultHandler
popHandler()
Removes and returns the ResultHandler from the top of the ResultHandler stack.
NodeSet
popNodeSet()
Removes and returns the current NodeSet from the context stack
void
pushCurrentNode(XPathNode node)
Adds the given node to the top of the "current" node Stack.
void
pushHandler(ResultHandler handler)
Pushes a new ResultHandler to the top of the ResultHandler stack.
void
pushNodeSet(NodeSet nodeSet)
Pushes the given nodeSet onto the context stack
void
setNodeSet(NodeSet nodeSet, int position)
Sets the given node-set as the context node-set for this XPathContext
void
setPosition(int position)
Sets the position of the context node within the context node-set

Methods inherited from class org.exolab.adaptx.xpath.XPathContext

addNamespaceBinding, getDocumentOrder, getElementById, getFunction, getNamespaceURI, getNode, getNodeSet, getPosition, getSize, getVariable, newContext, newContext, newNodeSet, newNodeSet, newNodeSet, setNodeSet, setPosition

Field Details

ECMASCRIPT

public static final String ECMASCRIPT


JPYTHON

public static final String JPYTHON

Method Details

associateNamespace

public void associateNamespace(String nsPrefix,
                               String nsURI)
Associates a namespace with the given prefix,

Parameters:
nsPrefix - the namespace prefix
nsURI - the namespace URI to associate


generateId

public String generateId(XPathNode node)
Creates a unique identifier for the given node

Returns:
the String that is a unique identifier for the given node


getAttributeValueTemplate

public AttributeValueTemplate getAttributeValueTemplate(String avtString)
            throws XPathException
Returns the value of the given String as an AttributeValueTemplate


getCurrentNode

public XPathNode getCurrentNode()
Returns the "current" node The current node, is different than the context node, as the context node may change during the evaluation of an xpath expression, the current node does not. Basically it's the first context node during the beginning of an xpath evalation.

Returns:
the "current" node

See Also:
popCurrentNode, pushCurrentNode


getDocumentOrder

public int[] getDocumentOrder(XPathNode node)
Returns the document order of the given node.
Overrides:
getDocumentOrder in interface XPathContext

Returns:
The document order of the given node


getElementById

public XPathNode getElementById(XPathNode root,
                                String id)
Returns the element associated with the given identifier. Locates the element underneath the specified root node.
Overrides:
getElementById in interface XPathContext

Parameters:
root - The root node
id - The element's identifier

Returns:
The first element in document order with the given identifier, or null if no such element was found


getErrorObserver

public ErrorObserver getErrorObserver()
Returns the ErrorObserver to report errors to

Returns:
the ErrorObserver to report errors to


getFunction

public XPathFunction getFunction(String name)
Returns the XPathFunction with the given name and belonging to the given namespace.

Parameters:
name - the name of the function

Returns:
the XPathFunction with the given name


getFunction

public XPathFunction getFunction(String namespace,
                                 String name)
Returns the XPathFunction with the given name and belonging to the given namespace.
Overrides:
getFunction in interface XPathContext

Parameters:
namespace - the namespace of the function
name - the name of the function

Returns:
the XPathFunction with the given name


getNamespaceURI

public String getNamespaceURI(String prefix)
Returns the namespace associated with the given prefix. A namespace can be associated with a given prefix via the XSLT document being processed, or using #associateNamespace method
Overrides:
getNamespaceURI in interface XPathContext

Parameters:
prefix - the prefix of the namespace to return

Returns:
the namespace prefix or null if none found.


getNode

public XPathNode getNode()
Returns the context node of this XPathContext
Overrides:
getNode in interface XPathContext

Returns:
the context node


getNodeSet

public NodeSet getNodeSet()
Returns the current context node-set.
Overrides:
getNodeSet in interface XPathContext

Returns:
The current context node-set


getParameter

public String getParameter(String name)
Returns the parameter value associated with the given name.

Parameters:
name - the name of the parameter to retrieve the value of

Returns:
the parameter value associated with the given name.


getParameters

public ScopedVariableSet getParameters()


getPosition

public int getPosition()
Returns the position of the context node. The position is a value between zero and the context size minus one. One must be added in order to obtain a value XPath position.
Overrides:
getPosition in interface XPathContext

Returns:
The position of the context node

See Also:
getSize()


getProperty

public String getProperty(String name)
Returns the Property value associated with the given name. All property names without a namespace are defaulted to the System evironment scope.

Parameters:
name - the name of the property to get the value of

Returns:
the Property value associated with the given name.


getSize

public int getSize()
Returns the size of the context.
Overrides:
getSize in interface XPathContext

Returns:
The size of the context


getStylesheetLocation

public URILocation getStylesheetLocation()


getURIResolver

public URIResolver getURIResolver()
Returns the URIResolver for resolving all URIs.

Returns:
the URIResolver for resolving all URIs.


getVariable

public XPathResult getVariable(String name)
Returns the XPath result bound to the given variable name. Returns null if the variable was not set.
Overrides:
getVariable in interface XPathContext

Parameters:
name - The variable name

Returns:
The variable's value


getXMLSpaceModes

public QuickStack getXMLSpaceModes()
Returns the stack of XML space modes


isFunctionAvailable

public boolean isFunctionAvailable(String name,
                                   String namespace)
Returns true if a function with the given name exists within the given namespace.

Returns:
true if a function with the given name exists


isXSLTNamespace

public boolean isXSLTNamespace(String prefixOrURI)
Determines if the given prefix or URI maps to the XSLT namespace

Parameters:
prefixOrURI - the prefix or URI to compare with the XSLT namespace

Returns:
true if the given prefix or URI maps to the XSLT namespace


popCurrentNode

public XPathNode popCurrentNode()
Removes the current node from the top of the stack The current node, is different than the context node, as the context node may change during the evaluation of an xpath expression, the current node does not. Basically it's the first context node during the beginning of an xpath evalation.

Returns:
the current node.

See Also:
pushCurrentNode, getCurrentNode


popHandler

public ResultHandler popHandler()
Removes and returns the ResultHandler from the top of the ResultHandler stack.

Returns:
the ResultHandler that was at the top of the stack.


popNodeSet

public NodeSet popNodeSet()
Removes and returns the current NodeSet from the context stack

Returns:
the current NodeSet from the context stack


pushCurrentNode

public void pushCurrentNode(XPathNode node)
Adds the given node to the top of the "current" node Stack. The current node, is different than the context node, as the context node may change during the evaluation of an xpath expression, the current node does not. Basically it's the first context node during the beginning of an xpath evalation.

Parameters:
node - the new current node

See Also:
popCurrentNode, getCurrentNode


pushHandler

public void pushHandler(ResultHandler handler)
Pushes a new ResultHandler to the top of the ResultHandler stack.

Parameters:
handler - the ResultHandler to push to the top of the stack.


pushNodeSet

public void pushNodeSet(NodeSet nodeSet)
Pushes the given nodeSet onto the context stack

Parameters:
nodeSet - the nodeSet ot push onto the stack


setNodeSet

public void setNodeSet(NodeSet nodeSet,
                       int position)
Sets the given node-set as the context node-set for this XPathContext
Overrides:
setNodeSet in interface XPathContext

Parameters:
nodeSet - the node-set to use as the context node-set.
position - the position of the context node


setPosition

public void setPosition(int position)
Sets the position of the context node within the context node-set
Overrides:
setPosition in interface XPathContext

Parameters: