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>
public class JoinIterator extends LookAheadIteration<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
Constructors Constructor Description JoinIterator(EvaluationStrategy strategy, QueryEvaluationStep leftPrepared, QueryEvaluationStep rightPrepared, Join join, BindingSet bindings)JoinIterator(EvaluationStrategy strategy, Join join, BindingSet bindings, QueryEvaluationContext context)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected BindingSetgetNextElement()Gets the next element.protected voidhandleClose()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 Detail
-
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 Detail
-
getNextElement
protected BindingSet getNextElement() throws QueryEvaluationException
Description copied from class:LookAheadIterationGets the next element. Subclasses should implement this method so that it returns the next element.- Specified by:
getNextElementin classLookAheadIteration<BindingSet,QueryEvaluationException>- Returns:
- The next element, or null if no more elements are available.
- Throws:
QueryEvaluationException
-
handleClose
protected void handleClose() throws QueryEvaluationExceptionDescription copied from class:AbstractCloseableIterationCalled 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:
handleClosein classLookAheadIteration<BindingSet,QueryEvaluationException>- Throws:
QueryEvaluationException
-
-