public abstract class LimitAdjustingIterator<R> extends Object implements org.apache.tinkerpop.gremlin.structure.util.CloseableIterator<R>
The limit for the wrapped iterator is updated by a factor of 2. When the iterator is updated, the iterator must be iterated through to the point of the last returned element. While this may seem expensive, it is less expensive than retrieving more than needed elements in the first place. However, this still means the initial currentLimit in the constructor should be chosen wisely.
Constructor and Description |
---|
LimitAdjustingIterator(int maxLimit,
int currentLimit)
Initializes this iterator with the current limit and the maximum number of elements that may be retrieved from the
wrapped iterator.
|
Modifier and Type | Method and Description |
---|---|
void |
close() |
abstract Iterator<R> |
getNewIterator(int newLimit)
This returns the wrapped iterator with up to the specified number of elements.
|
boolean |
hasNext() |
R |
next() |
void |
remove() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
asCloseable, closeIterator
forEachRemaining
public LimitAdjustingIterator(int maxLimit, int currentLimit)
maxLimit
- currentLimit
- public abstract Iterator<R> getNewIterator(int newLimit)
newLimit
- public void close()
close
in interface Closeable
close
in interface AutoCloseable
close
in interface org.apache.tinkerpop.gremlin.structure.util.CloseableIterator<R>
Copyright © 2012–2023. All rights reserved.