Interface HippoBeanIterator
A lazy proxied iterator, that only fetches the next bean when asked for it. As we fetch the beans lazily, this iterator is very
efficient. For performance reasons, it is really important to use skip(int skipNum) if you know where you would like to start
iterating from.
-
Method Summary
Methods inherited from interface java.util.Iterator
forEachRemaining, hasNext, next, remove
-
Method Details
-
nextHippoBean
HippoBean nextHippoBean()Returns the nextHippoBean
in the iteration. Note this method is allowed to returnnull
when the backing jcr node cannot be mapped to a HippoBean.- Returns:
- the next
HippoBean
in the iteration ornull
if the jcr node cannot be mapped to aHippoBean
- Throws:
NoSuchElementException
- if iteration has no moreHippoBean
s.
-
skip
void skip(int skipNum) Skip a number of elements in the iterator. Using skip is very efficient when you know you want to have the, say, 100 to 110 beans, as the skip does not need to fetch number 1 to 100.- Parameters:
skipNum
- the non-negative number of elements to skip- Throws:
NoSuchElementException
- if skipped past the last element in the iterator.
-
getSize
long getSize()Returns the number of elements in the iterator. If this information is unavailable, returns -1.- Returns:
- a long
-
getPosition
long getPosition()Returns the current position within the iterator. The number returned is the 0-based index of the next element in the iterator, i.e. the one that will be returned on the subsequentnext
call. Note that this method does not check if there is a next element, i.e. an empty iterator will always return 0.- Returns:
- a long
-