Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.commons.jxpath.ri
Class EvalContext

    java.lang.Object
      |
      +--org.apache.commons.jxpath.ri.EvalContext

All Implemented Interfaces:
  ExpressionContext, java.util.Iterator

Direct Known Subclasses:
  AncestorContext, AttributeContext, ChildContext, DescendantContext, InitialContext, NamespaceContext, ParentContext, PrecedingOrFollowingContext, PredicateContext, RootContext, SelfContext, UnionContext

public abstract class EvalContext
extends java.lang.Object
implements ExpressionContext, java.util.Iterator

An XPath evaluation context. When evaluating a path, a chain of EvalContexts is created, each context in the chain representing a step of the path. Subclasses of EvalContext implement behavior of various XPath axes: "child::", "parent::" etc.

Version:
  $Revision: 1.23 $ $Date: 2003/03/11 00:59:18 $
Author:
  Dmitri Plotnikov

Field Summary
`protected EvalContext` | `parentContext`
`protected int` | `position`
`protected RootContext` | `rootContext`

Constructor Summary
`EvalContext(EvalContext parentContext)`

Method Summary
`java.util.List` | `getContextNodeList()` Returns the list of all Pointers in this context for the current position of the parent context.
`Pointer` | `getContextNodePointer()` Get the current context node.
`abstract NodePointer` | `getCurrentNodePointer()` Returns the current context node.
`int` | `getCurrentPosition()`
`int` | `getDocumentOrder()` Determines the document order for this context.
`JXPathContext` | `getJXPathContext()` Get the JXPathContext in which this function is being evaluated.
`NodeSet` | `getNodeSet()` Returns the list of all Pointers in this context for all positions of the parent contexts.
`int` | `getPosition()` Returns the current context position.
`RootContext` | `getRootContext()` Returns the root context of the path, which provides easy access to variables and functions.
`Pointer` | `getSingleNodePointer()` Returns the first encountered Pointer that matches the current context's criteria.
`boolean` | `hasNext()` Returns true if there are mode nodes matching the context's constraints.
`java.lang.Object` | `next()` Returns the next node pointer in the context
`abstract 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.
`void` | `remove()` Operation is not supported
`void` | `reset()` Sets current position = 0, which is the pre-iteration state.
`boolean` | `setPosition(int position)` Moves the current position to the specified index.
`java.lang.String` | `toString()`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### parentContext

    protected EvalContext parentContext

### rootContext

    protected RootContext rootContext

### position

    protected int position

Constructor Detail

### EvalContext

    public EvalContext(EvalContext parentContext)

Method Detail

### getContextNodePointer

    public Pointer getContextNodePointer()

  Description copied from interface: `ExpressionContext`
  Get the current context node.
  Specified by:
    `getContextNodePointer` in interface `ExpressionContext`
  Following copied from interface: `org.apache.commons.jxpath.ExpressionContext`
  Returns:
    The current context node pointer.

### 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`
  Following copied from interface: `org.apache.commons.jxpath.ExpressionContext`
  Returns:
    A list representing the current context nodes.

### getPosition

    public int getPosition()

  Description copied from interface: `ExpressionContext`
  Returns the current context position.
  Specified by:
    `getPosition` in interface `ExpressionContext`

### getDocumentOrder

    public int getDocumentOrder()

  Determines the document order for this context.
  Returns:
    1 ascending order, -1 descending order, 0 - does not require ordering

### hasNext

    public boolean hasNext()

  Returns true if there are mode nodes matching the context's constraints.
  Specified by:
    `hasNext` in interface `java.util.Iterator`

### next

    public java.lang.Object next()

  Returns the next node pointer in the context
  Specified by:
    `next` in interface `java.util.Iterator`

### remove

    public void remove()

  Operation is not supported
  Specified by:
    `remove` in interface `java.util.Iterator`

### getContextNodeList

    public java.util.List getContextNodeList()

  Returns the list of all Pointers in this context for the current position of the parent context.
  Specified by:
    `getContextNodeList` in interface `ExpressionContext`
  Following copied from interface: `org.apache.commons.jxpath.ExpressionContext`
  Returns:
    A list representing the current context nodes.

### getNodeSet

    public NodeSet getNodeSet()

  Returns the list of all Pointers in this context for all positions of the parent contexts. If there was an ongoing iteration over this context, the method should not be called.

### toString

    public java.lang.String toString()

  Overrides:
    `toString` in class `java.lang.Object`

### getRootContext

    public RootContext getRootContext()

  Returns the root context of the path, which provides easy access to variables and functions.

### reset

    public void reset()

  Sets current position = 0, which is the pre-iteration state.

### getCurrentPosition

    public int getCurrentPosition()

### getSingleNodePointer

    public Pointer getSingleNodePointer()

  Returns the first encountered Pointer that matches the current context's criteria.

### getCurrentNodePointer

    public abstract NodePointer getCurrentNodePointer()

  Returns the current context node. Undefined before the beginning of the iteration.

### nextSet

    public boolean nextSet()

  Returns true if there is another sets of objects to interate over. Resets the current position and node.

### nextNode

    public abstract boolean nextNode()

  Returns true if there is another object in the current set. Switches the current position and node to the next object.

### setPosition

    public boolean setPosition(int position)

  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.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2001-2003 Apache Software Foundation. All Rights Reserved.