Class PrecedingOrFollowingContext
- java.lang.Object
-
- org.apache.commons.jxpath.ri.EvalContext
-
- org.apache.commons.jxpath.ri.axes.PrecedingOrFollowingContext
-
- All Implemented Interfaces:
java.util.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) $
-
-
Field Summary
Fields Modifier and Type Field Description private NodePointercurrentNodePointerprivate NodePointercurrentRootLocationprivate NodeTestnodeTestprivate booleanreverseprivate booleansetStartedprivate java.util.Stackstack-
Fields inherited from class org.apache.commons.jxpath.ri.EvalContext
parentContext, position, rootContext
-
-
Constructor Summary
Constructors Constructor Description PrecedingOrFollowingContext(EvalContext parentContext, NodeTest nodeTest, boolean reverse)Create a new PrecedingOrFollowingContext.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description NodePointergetCurrentNodePointer()Returns the current context node.intgetDocumentOrder()Determines the document order for this context.booleannextNode()Returns true if there is another object in the current set.voidreset()Sets current position = 0, which is the pre-iteration state.booleansetPosition(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
-
-
-
-
Field Detail
-
nodeTest
private NodeTest nodeTest
-
setStarted
private boolean setStarted
-
stack
private java.util.Stack stack
-
currentNodePointer
private NodePointer currentNodePointer
-
currentRootLocation
private NodePointer currentRootLocation
-
reverse
private boolean reverse
-
-
Constructor Detail
-
PrecedingOrFollowingContext
public PrecedingOrFollowingContext(EvalContext parentContext, NodeTest nodeTest, boolean reverse)
Create a new PrecedingOrFollowingContext.- Parameters:
parentContext- parent contextnodeTest- testreverse- whether to iterate in reverse order
-
-
Method Detail
-
getCurrentNodePointer
public NodePointer getCurrentNodePointer()
Description copied from class:EvalContextReturns the current context node. Undefined before the beginning of the iteration.- Specified by:
getCurrentNodePointerin classEvalContext- Returns:
- NodePoiner
-
getDocumentOrder
public int getDocumentOrder()
Description copied from class:EvalContextDetermines the document order for this context.- Overrides:
getDocumentOrderin classEvalContext- Returns:
- 1 ascending order, -1 descending order, 0 - does not require ordering
-
reset
public void reset()
Description copied from class:EvalContextSets current position = 0, which is the pre-iteration state.- Overrides:
resetin classEvalContext
-
setPosition
public boolean setPosition(int position)
Description copied from class:EvalContextMoves 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:
setPositionin classEvalContext- Parameters:
position- to set- Returns:
- boolean
-
nextNode
public boolean nextNode()
Description copied from class:EvalContextReturns true if there is another object in the current set. Switches the current position and node to the next object.- Specified by:
nextNodein classEvalContext- Returns:
- boolean
-
-