Class ChildContext
- java.lang.Object
-
- org.apache.commons.jxpath.ri.EvalContext
-
- org.apache.commons.jxpath.ri.axes.ChildContext
-
- All Implemented Interfaces:
java.util.Iterator,ExpressionContext
public class ChildContext extends EvalContext
EvalContext that can walk the "child::", "following-sibling::" and "preceding-sibling::" axes.- Version:
- $Revision: 652903 $ $Date: 2008-05-02 15:46:32 -0500 (Fri, 02 May 2008) $
-
-
Field Summary
Fields Modifier and Type Field Description private NodeIteratoriteratorprivate NodeTestnodeTestprivate booleanreverseprivate booleanstartFromParentLocation-
Fields inherited from class org.apache.commons.jxpath.ri.EvalContext
parentContext, position, rootContext
-
-
Constructor Summary
Constructors Constructor Description ChildContext(EvalContext parentContext, NodeTest nodeTest, boolean startFromParentLocation, boolean reverse)Create a new ChildContext.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description NodePointergetCurrentNodePointer()Returns the current context node.PointergetSingleNodePointer()This method is called on the last context on the path when only one value is needed.booleannextNode()Returns true if there is another object in the current set.private voidprepare()Allocates a PropertyIterator.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, getDocumentOrder, getJXPathContext, getNodeSet, getPosition, getRootContext, getValue, hasNext, isChildOrderingRequired, next, nextSet, remove, sortPointers, toString
-
-
-
-
Field Detail
-
nodeTest
private NodeTest nodeTest
-
startFromParentLocation
private boolean startFromParentLocation
-
reverse
private boolean reverse
-
iterator
private NodeIterator iterator
-
-
Constructor Detail
-
ChildContext
public ChildContext(EvalContext parentContext, NodeTest nodeTest, boolean startFromParentLocation, boolean reverse)
Create a new ChildContext.- Parameters:
parentContext- parent EvalContextnodeTest- NodeTeststartFromParentLocation- whether to start from parent locationreverse- whether to iterate in reverse
-
-
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
-
getSingleNodePointer
public Pointer getSingleNodePointer()
This method is called on the last context on the path when only one value is needed. Note that this will return the whole property, even if it is a collection. It will not extract the first element of the collection. For example, "books" will return the collection of books rather than the first book from that collection.- Overrides:
getSingleNodePointerin classEvalContext- Returns:
- Pointer
-
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
-
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
-
prepare
private void prepare()
Allocates a PropertyIterator.
-
-