Class AncestorContext
- java.lang.Object
-
- org.apache.commons.jxpath.ri.EvalContext
-
- org.apache.commons.jxpath.ri.axes.AncestorContext
-
- All Implemented Interfaces:
java.util.Iterator
,ExpressionContext
public class AncestorContext extends EvalContext
EvalContext that walks the "ancestor::" and "ancestor-or-self::" axes.- Version:
- $Revision: 652845 $ $Date: 2008-05-02 12:46:46 -0500 (Fri, 02 May 2008) $
-
-
Field Summary
Fields Modifier and Type Field Description private NodePointer
currentNodePointer
private boolean
includeSelf
private NodeTest
nodeTest
private boolean
setStarted
-
Fields inherited from class org.apache.commons.jxpath.ri.EvalContext
parentContext, position, rootContext
-
-
Constructor Summary
Constructors Constructor Description AncestorContext(EvalContext parentContext, boolean includeSelf, NodeTest nodeTest)
Create a new AncestorContext.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description 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
-
-
-
-
Field Detail
-
nodeTest
private NodeTest nodeTest
-
setStarted
private boolean setStarted
-
currentNodePointer
private NodePointer currentNodePointer
-
includeSelf
private boolean includeSelf
-
-
Constructor Detail
-
AncestorContext
public AncestorContext(EvalContext parentContext, boolean includeSelf, NodeTest nodeTest)
Create a new AncestorContext.- Parameters:
parentContext
- represents the previous step on the pathincludeSelf
- differentiates between "ancestor::" and "ancestor-or-self::" axesnodeTest
- is the name of the element(s) we are looking for
-
-
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 classEvalContext
- Returns:
- NodePoiner
-
getDocumentOrder
public int getDocumentOrder()
Description copied from class:EvalContext
Determines the document order for this context.- Overrides:
getDocumentOrder
in classEvalContext
- 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 classEvalContext
-
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 classEvalContext
- 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 classEvalContext
- Returns:
- boolean
-
-