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

java.lang.Object
  extended by org.apache.commons.jxpath.ri.EvalContext
      extended by org.apache.commons.jxpath.ri.axes.PrecedingOrFollowingContext
All Implemented Interfaces:
Iterator, ExpressionContext

public class PrecedingOrFollowingContext
extends EvalContext

EvalContext that walks the "preceding::" and "following::" axes.

Version:
$Revision: 670727 $ $Date: 2008-06-23 15:10:38 -0500 (Mon, 23 Jun 2008) $
Author:
Dmitri Plotnikov

Field Summary
 
Fields inherited from class org.apache.commons.jxpath.ri.EvalContext
parentContext, position, rootContext
 
Constructor Summary
PrecedingOrFollowingContext(EvalContext parentContext, NodeTest nodeTest, boolean reverse)
          Create a new PrecedingOrFollowingContext.
 
Method Summary
 NodePointer getCurrentNodePointer()
          Returns the current context node.
 int getDocumentOrder()
          Determines the document order for this context.
 boolean nextNode()
          Returns true if there is another object in the current set.
 void reset()
          Sets current position = 0, which is the pre-iteration state.
 boolean setPosition(int position)
          Moves the current position to the specified index.
 
Methods inherited from class org.apache.commons.jxpath.ri.EvalContext
getContextNodeList, getContextNodePointer, getCurrentPosition, getJXPathContext, getNodeSet, getPosition, getRootContext, getSingleNodePointer, getValue, hasNext, isChildOrderingRequired, next, nextSet, remove, sortPointers, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

PrecedingOrFollowingContext

public PrecedingOrFollowingContext(EvalContext parentContext,
                                   NodeTest nodeTest,
                                   boolean reverse)
Create a new PrecedingOrFollowingContext.

Parameters:
parentContext - parent context
nodeTest - test
reverse - whether to iterate in reverse order
Method Detail

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
Returns:
NodePoiner

getDocumentOrder

public int getDocumentOrder()
Description copied from class: EvalContext
Determines the document order for this context.

Overrides:
getDocumentOrder in class EvalContext
Returns:
1 ascending order, -1 descending order, 0 - does not require ordering

reset

public void reset()
Description copied from class: EvalContext
Sets current position = 0, which is the pre-iteration state.

Overrides:
reset 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
Parameters:
position - to set
Returns:
boolean

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
Returns:
boolean


Copyright © 2001-2008 The Apache Software Foundation. All Rights Reserved.