Class DefaultEvaluationStrategy.ResultSizeCountingIterator
java.lang.Object
org.eclipse.rdf4j.common.iteration.AbstractCloseableIteration<BindingSet, QueryEvaluationException>
org.eclipse.rdf4j.common.iteration.IterationWrapper<BindingSet, QueryEvaluationException>
org.eclipse.rdf4j.query.algebra.evaluation.impl.DefaultEvaluationStrategy.ResultSizeCountingIterator
- All Implemented Interfaces:
AutoCloseable, CloseableIteration<BindingSet, QueryEvaluationException>, Iteration<BindingSet, QueryEvaluationException>
- Enclosing class:
DefaultEvaluationStrategy
private static class DefaultEvaluationStrategy.ResultSizeCountingIterator
extends IterationWrapper<BindingSet, QueryEvaluationException>
This class wraps an iterator and increments the "resultSizeActual" of the query model node that the iterator
represents. This means we can track the number of tuples that have been retrieved from this node.
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) CloseableIteration<BindingSet, QueryEvaluationException> (package private) QueryModelNodeFields inherited from class IterationWrapper
wrappedIter -
Constructor Summary
ConstructorsConstructorDescriptionResultSizeCountingIterator(CloseableIteration<BindingSet, QueryEvaluationException> iterator, QueryModelNode queryModelNode) -
Method Summary
Methods inherited from class IterationWrapper
handleClose, removeMethods inherited from class AbstractCloseableIteration
close, isClosedMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface CloseableIteration
stream
-
Field Details
-
iterator
CloseableIteration<BindingSet, QueryEvaluationException> iterator -
queryModelNode
QueryModelNode queryModelNode
-
-
Constructor Details
-
ResultSizeCountingIterator
public ResultSizeCountingIterator(CloseableIteration<BindingSet, QueryEvaluationException> iterator, QueryModelNode queryModelNode)
-
-
Method Details
-
hasNext
Description copied from class:IterationWrapperChecks whether the wrapped Iteration contains more elements, closing this Iteration when this is not the case.- Specified by:
hasNextin interfaceIteration<BindingSet, QueryEvaluationException>- Overrides:
hasNextin classIterationWrapper<BindingSet, QueryEvaluationException>- Returns:
- true if the wrapped Iteration contains more elements, false otherwise.
- Throws:
QueryEvaluationException
-
next
Description copied from class:IterationWrapperReturns the next element from the wrapped Iteration.- Specified by:
nextin interfaceIteration<BindingSet, QueryEvaluationException>- Overrides:
nextin classIterationWrapper<BindingSet, QueryEvaluationException>- Returns:
- the next element in the iteration.
- Throws:
QueryEvaluationException
-