Package org.apache.xml.dtm.ref
Class DTMDefaultBaseIterators.AncestorIterator
java.lang.Object
org.apache.xml.dtm.ref.DTMAxisIteratorBase
org.apache.xml.dtm.ref.DTMDefaultBaseIterators.InternalAxisIteratorBase
org.apache.xml.dtm.ref.DTMDefaultBaseIterators.AncestorIterator
- All Implemented Interfaces:
Cloneable,DTMAxisIterator
- Direct Known Subclasses:
DTMDefaultBaseIterators.TypedAncestorIterator
- Enclosing class:
- DTMDefaultBaseIterators
public class DTMDefaultBaseIterators.AncestorIterator extends DTMDefaultBaseIterators.InternalAxisIteratorBase
Iterator that returns the ancestors of a given node in document
order. (NOTE! This was changed from the XSLTC code!)
-
Field Summary
Fields inherited from class org.apache.xml.dtm.ref.DTMDefaultBaseIterators.InternalAxisIteratorBase
_currentNodeFields inherited from class org.apache.xml.dtm.ref.DTMAxisIteratorBase
_includeSelf, _isRestartable, _last, _markedNode, _position, _startNodeFields inherited from interface org.apache.xml.dtm.DTMAxisIterator
END -
Constructor Summary
Constructors Constructor Description AncestorIterator() -
Method Summary
Modifier and Type Method Description DTMAxisIteratorcloneIterator()Returns a deep copy of this iterator.intgetStartNode()Get start to END should 'close' the iterator, i.e.voidgotoMark()Restores the current node remembered by setMark().booleanisReverse()True if this iterator has a reversed axis.intnext()Get the next node in the iteration.DTMAxisIteratorreset()Resets the iterator to the last start node.voidsetMark()Remembers the current node for the next call to gotoMark().DTMAxisIteratorsetStartNode(int node)Set start to END should 'close' the iterator, i.e.Methods inherited from class org.apache.xml.dtm.ref.DTMAxisIteratorBase
getAxis, getLast, getNodeByPosition, getPosition, includeSelf, isDocOrdered, resetPosition, returnNode, setRestartable
-
Constructor Details
-
AncestorIterator
public AncestorIterator()
-
-
Method Details
-
getStartNode
public int getStartNode()Get start to END should 'close' the iterator, i.e. subsequent call to next() should return END.- Specified by:
getStartNodein interfaceDTMAxisIterator- Overrides:
getStartNodein classDTMAxisIteratorBase- Returns:
- The root node of the iteration.
-
isReverse
public final boolean isReverse()True if this iterator has a reversed axis.- Specified by:
isReversein interfaceDTMAxisIterator- Overrides:
isReversein classDTMAxisIteratorBase- Returns:
- true since this iterator is a reversed axis.
-
cloneIterator
Returns a deep copy of this iterator. The cloned iterator is not reset.- Specified by:
cloneIteratorin interfaceDTMAxisIterator- Overrides:
cloneIteratorin classDTMAxisIteratorBase- Returns:
- a deep copy of this iterator.
-
setStartNode
Set start to END should 'close' the iterator, i.e. subsequent call to next() should return END.- Parameters:
node- Sets the root of the iteration.- Returns:
- A DTMAxisIterator set to the start of the iteration.
-
reset
Resets the iterator to the last start node.- Specified by:
resetin interfaceDTMAxisIterator- Overrides:
resetin classDTMAxisIteratorBase- Returns:
- A DTMAxisIterator, which may or may not be the same as this iterator.
-
next
public int next()Get the next node in the iteration.- Returns:
- The next node handle in the iteration, or END.
-
setMark
public void setMark()Description copied from class:DTMDefaultBaseIterators.InternalAxisIteratorBaseRemembers the current node for the next call to gotoMark(). %REVIEW% Should this save _position too?- Specified by:
setMarkin interfaceDTMAxisIterator- Overrides:
setMarkin classDTMDefaultBaseIterators.InternalAxisIteratorBase
-
gotoMark
public void gotoMark()Description copied from class:DTMDefaultBaseIterators.InternalAxisIteratorBaseRestores the current node remembered by setMark(). %REVEIW% Should this restore _position too?- Specified by:
gotoMarkin interfaceDTMAxisIterator- Overrides:
gotoMarkin classDTMDefaultBaseIterators.InternalAxisIteratorBase
-