Class OrderIterator
- java.lang.Object
-
- org.eclipse.rdf4j.common.iteration.AbstractCloseableIteration<E>
-
- org.eclipse.rdf4j.common.iteration.DelayedIteration<BindingSet>
-
- org.eclipse.rdf4j.query.algebra.evaluation.iterator.OrderIterator
-
- All Implemented Interfaces:
AutoCloseable
,Iterator<BindingSet>
,CloseableIteration<BindingSet>
public class OrderIterator extends DelayedIteration<BindingSet>
Sorts the input and optionally applies limit and distinct.- Author:
- James Leigh, Arjohn Kampman
-
-
Constructor Summary
Constructors Constructor Description OrderIterator(CloseableIteration<BindingSet> iter, Comparator<BindingSet> comparator)
OrderIterator(CloseableIteration<BindingSet> iter, Comparator<BindingSet> comparator, long limit, boolean distinct)
OrderIterator(CloseableIteration<BindingSet> iter, Comparator<BindingSet> comparator, long limit, boolean distinct, long iterationSyncThreshold)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected CloseableIteration<BindingSet>
createIteration()
Creates the iteration that should be iterated over.protected void
decrement(int amount)
protected void
handleClose()
Closes this iteration as well as the underlying iteration if it has already been created and happens to be aCloseableIteration
.protected void
increment()
void
remove()
Calls the remove method of the underlying iteration.-
Methods inherited from class org.eclipse.rdf4j.common.iteration.DelayedIteration
hasNext, next
-
Methods inherited from class org.eclipse.rdf4j.common.iteration.AbstractCloseableIteration
close, isClosed
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.eclipse.rdf4j.common.iteration.CloseableIteration
stream
-
Methods inherited from interface java.util.Iterator
forEachRemaining
-
-
-
-
Constructor Detail
-
OrderIterator
public OrderIterator(CloseableIteration<BindingSet> iter, Comparator<BindingSet> comparator)
-
OrderIterator
public OrderIterator(CloseableIteration<BindingSet> iter, Comparator<BindingSet> comparator, long limit, boolean distinct)
-
OrderIterator
public OrderIterator(CloseableIteration<BindingSet> iter, Comparator<BindingSet> comparator, long limit, boolean distinct, long iterationSyncThreshold)
-
-
Method Detail
-
createIteration
protected CloseableIteration<BindingSet> createIteration() throws QueryEvaluationException
Description copied from class:DelayedIteration
Creates the iteration that should be iterated over. This method is called only once, when the iteration is first needed.- Specified by:
createIteration
in classDelayedIteration<BindingSet>
- Throws:
QueryEvaluationException
-
increment
protected void increment() throws QueryEvaluationException
- Throws:
QueryEvaluationException
-
decrement
protected void decrement(int amount) throws QueryEvaluationException
- Throws:
QueryEvaluationException
-
remove
public void remove() throws QueryEvaluationException
Description copied from class:DelayedIteration
Calls the remove method of the underlying iteration.- Specified by:
remove
in interfaceIterator<BindingSet>
- Overrides:
remove
in classDelayedIteration<BindingSet>
- Throws:
QueryEvaluationException
-
handleClose
protected void handleClose() throws QueryEvaluationException
Description copied from class:DelayedIteration
Closes this iteration as well as the underlying iteration if it has already been created and happens to be aCloseableIteration
.- Overrides:
handleClose
in classDelayedIteration<BindingSet>
- Throws:
QueryEvaluationException
-
-