Class SPARQLCrossProductIteration
java.lang.Object
org.eclipse.rdf4j.common.iteration.AbstractCloseableIteration<E,X>
org.eclipse.rdf4j.common.iteration.LookAheadIteration<BindingSet,QueryEvaluationException>
org.eclipse.rdf4j.repository.sparql.federation.SPARQLCrossProductIteration
- All Implemented Interfaces:
AutoCloseable
,CloseableIteration<BindingSet,QueryEvaluationException>
,Iteration<BindingSet,QueryEvaluationException>
public class SPARQLCrossProductIteration
extends LookAheadIteration<BindingSet,QueryEvaluationException>
Iteration which forms the cross product of a list of materialized input bindings with each result obtained from the
inner iteration. Example:
Note that this class is a fully equivalent copy of
CrossProductIteration
, and is only included here to avoid
a circular dependency between the algebra-evaluation module and the sparql-repository module.- Author:
- Andreas Schwarte
-
Field Summary
Modifier and TypeFieldDescriptionprotected BindingSet
protected List<BindingSet>
protected Iterator<BindingSet>
protected CloseableIteration<BindingSet,QueryEvaluationException>
-
Constructor Summary
ConstructorDescriptionSPARQLCrossProductIteration(CloseableIteration<BindingSet,QueryEvaluationException> resultIteration, List<BindingSet> inputBindings)
-
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
-
Field Details
-
inputBindings
-
resultIteration
-
inputBindingsIterator
-
currentInputBinding
-
-
Constructor Details
-
SPARQLCrossProductIteration
public SPARQLCrossProductIteration(CloseableIteration<BindingSet,QueryEvaluationException> resultIteration, List<BindingSet> inputBindings)
-
-
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
-