org.apache.commons.jxpath.ri.axes
Class RootContext

java.lang.Object
  extended byorg.apache.commons.jxpath.ri.EvalContext
      extended byorg.apache.commons.jxpath.ri.axes.RootContext
All Implemented Interfaces:
ExpressionContext, java.util.Iterator

public class RootContext
extends EvalContext

EvalContext that is used to hold the root node for the path traversal.

Version:
$Revision: 1.18 $ $Date: 2004/04/01 02:55:31 $
Author:
Dmitri Plotnikov

Field Summary
private  int availableRegister
           
private  JXPathContextReferenceImpl jxpathContext
           
private static int MAX_REGISTER
           
private  NamespaceResolver namespaceResolver
           
private  NodePointer pointer
           
private  java.lang.Object[] registers
           
static java.lang.Object UNKNOWN_VALUE
           
 
Fields inherited from class org.apache.commons.jxpath.ri.EvalContext
parentContext, position, rootContext
 
Constructor Summary
RootContext(JXPathContextReferenceImpl jxpathContext, NodePointer pointer)
           
 
Method Summary
 EvalContext getAbsoluteRootContext()
           
 EvalContext getConstantContext(java.lang.Object constant)
           
 NodePointer getCurrentNodePointer()
          Returns the current context node.
 int getCurrentPosition()
           
 Function getFunction(QName functionName, java.lang.Object[] parameters)
           
 JXPathContext getJXPathContext()
          Get the JXPathContext in which this function is being evaluated.
 java.lang.Object getRegisteredValue(int id)
           
 RootContext getRootContext()
          Returns the root context of the path, which provides easy access to variables and functions.
 java.lang.Object getValue()
          Typically returns the NodeSet by calling getNodeSet(), but will be overridden for contexts that more naturally produce individual values, e.g.
 EvalContext getVariableContext(QName variableName)
           
 boolean nextNode()
          Returns true if there is another object in the current set.
 boolean nextSet()
          Returns true if there is another sets of objects to interate over.
 boolean setPosition(int position)
          Moves the current position to the specified index.
 int setRegisteredValue(java.lang.Object value)
           
 java.lang.String toString()
           
 
Methods inherited from class org.apache.commons.jxpath.ri.EvalContext
getContextNodeList, getContextNodePointer, getDocumentOrder, getNodeSet, getPosition, getSingleNodePointer, hasNext, isChildOrderingRequired, next, remove, reset
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

jxpathContext

private JXPathContextReferenceImpl jxpathContext

pointer

private NodePointer pointer

registers

private java.lang.Object[] registers

availableRegister

private int availableRegister

namespaceResolver

private NamespaceResolver namespaceResolver

UNKNOWN_VALUE

public static final java.lang.Object UNKNOWN_VALUE

MAX_REGISTER

private static final int MAX_REGISTER
See Also:
Constant Field Values
Constructor Detail

RootContext

public RootContext(JXPathContextReferenceImpl jxpathContext,
                   NodePointer pointer)
Method Detail

getJXPathContext

public JXPathContext getJXPathContext()
Description copied from interface: ExpressionContext
Get the JXPathContext in which this function is being evaluated.

Specified by:
getJXPathContext in interface ExpressionContext
Overrides:
getJXPathContext in class EvalContext

getRootContext

public RootContext getRootContext()
Description copied from class: EvalContext
Returns the root context of the path, which provides easy access to variables and functions.

Overrides:
getRootContext in class EvalContext

getAbsoluteRootContext

public EvalContext getAbsoluteRootContext()

getCurrentNodePointer

public NodePointer getCurrentNodePointer()
Description copied from class: EvalContext
Returns the current context node. Undefined before the beginning of the iteration.

Specified by:
getCurrentNodePointer in class EvalContext

getValue

public java.lang.Object getValue()
Description copied from class: EvalContext
Typically returns the NodeSet by calling getNodeSet(), but will be overridden for contexts that more naturally produce individual values, e.g. VariableContext

Overrides:
getValue in class EvalContext

getCurrentPosition

public int getCurrentPosition()
Overrides:
getCurrentPosition in class EvalContext

nextNode

public boolean nextNode()
Description copied from class: EvalContext
Returns true if there is another object in the current set. Switches the current position and node to the next object.

Specified by:
nextNode in class EvalContext

nextSet

public boolean nextSet()
Description copied from class: EvalContext
Returns true if there is another sets of objects to interate over. Resets the current position and node.

Overrides:
nextSet in class EvalContext

setPosition

public boolean setPosition(int position)
Description copied from class: EvalContext
Moves the current position to the specified index. Used with integer predicates to quickly get to the n'th element of the node set. Returns false if the position is out of the node set range. You can call it with 0 as the position argument to restart the iteration.

Overrides:
setPosition in class EvalContext

getConstantContext

public EvalContext getConstantContext(java.lang.Object constant)

getVariableContext

public EvalContext getVariableContext(QName variableName)

getFunction

public Function getFunction(QName functionName,
                            java.lang.Object[] parameters)

getRegisteredValue

public java.lang.Object getRegisteredValue(int id)

setRegisteredValue

public int setRegisteredValue(java.lang.Object value)

toString

public java.lang.String toString()
Overrides:
toString in class EvalContext