Class JoinIterator
java.lang.Object
org.eclipse.rdf4j.common.iteration.AbstractCloseableIteration<E,X>
org.eclipse.rdf4j.common.iteration.LookAheadIteration<BindingSet,QueryEvaluationException>
org.eclipse.rdf4j.query.algebra.evaluation.iterator.JoinIterator
- All Implemented Interfaces:
AutoCloseable
,CloseableIteration<BindingSet,
,QueryEvaluationException> Iteration<BindingSet,
QueryEvaluationException>
Interleaved join iterator.
This join iterator produces results by interleaving results from its left argument into its right argument to speed up bindings and produce fail-fast results. Note that this join strategy is only valid in cases where all bindings from the left argument can be considered in scope for the right argument.
- Author:
- Jeen Broekstra
-
Constructor Summary
ConstructorDescriptionJoinIterator
(EvaluationStrategy strategy, QueryEvaluationStep leftPrepared, QueryEvaluationStep rightPrepared, Join join, BindingSet bindings) JoinIterator
(EvaluationStrategy strategy, Join join, BindingSet bindings, QueryEvaluationContext context) -
Method Summary
Modifier and TypeMethodDescriptionprotected BindingSet
Gets the next element.protected void
Called byAbstractCloseableIteration.close()
when it is called for the first time.Methods inherited from class org.eclipse.rdf4j.common.iteration.LookAheadIteration
hasNext, next, remove
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
-
Constructor Details
-
JoinIterator
public JoinIterator(EvaluationStrategy strategy, QueryEvaluationStep leftPrepared, QueryEvaluationStep rightPrepared, Join join, BindingSet bindings) throws QueryEvaluationException - Throws:
QueryEvaluationException
-
JoinIterator
public JoinIterator(EvaluationStrategy strategy, Join join, BindingSet bindings, QueryEvaluationContext context) throws QueryEvaluationException - Throws:
QueryEvaluationException
-
-
Method Details
-
getNextElement
Description copied from class:LookAheadIteration
Gets the next element. Subclasses should implement this method so that it returns the next element.- Specified by:
getNextElement
in classLookAheadIteration<BindingSet,
QueryEvaluationException> - Returns:
- The next element, or null if no more elements are available.
- Throws:
QueryEvaluationException
-
handleClose
Description copied from class:AbstractCloseableIteration
Called byAbstractCloseableIteration.close()
when it is called for the first time. This method is only called once on each iteration. By default, this method does nothing.- Overrides:
handleClose
in classLookAheadIteration<BindingSet,
QueryEvaluationException> - Throws:
QueryEvaluationException
-