Class LeftJoinIterator
java.lang.Object
org.eclipse.rdf4j.common.iteration.AbstractCloseableIteration<BindingSet,QueryEvaluationException>
org.eclipse.rdf4j.common.iteration.LookAheadIteration<BindingSet,QueryEvaluationException>
org.eclipse.rdf4j.query.algebra.evaluation.iterator.LeftJoinIterator
- All Implemented Interfaces:
AutoCloseable
,CloseableIteration<BindingSet,
,QueryEvaluationException> Iteration<BindingSet,
QueryEvaluationException>
- Direct Known Subclasses:
BadlyDesignedLeftJoinIterator
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final QueryValueEvaluationStep
private final CloseableIteration
<BindingSet, QueryEvaluationException> private final QueryEvaluationStep
The set of binding names that are "in scope" for the filter. -
Constructor Summary
ConstructorsConstructorDescriptionLeftJoinIterator
(EvaluationStrategy strategy, LeftJoin join, BindingSet bindings, QueryEvaluationContext context) LeftJoinIterator
(QueryEvaluationStep left, QueryEvaluationStep right, QueryValueEvaluationStep joinCondition, BindingSet bindings, Set<String> scopeBindingNamse) -
Method Summary
Modifier and TypeMethodDescriptionprotected BindingSet
Gets the next element.protected void
Called byAbstractCloseableIteration.close()
when it is called for the first time.private boolean
isTrue
(QueryValueEvaluationStep expr, QueryBindingSet bindings) 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
-
Field Details
-
scopeBindingNames
The set of binding names that are "in scope" for the filter. The filter must not include bindings that are (only) included because of the depth-first evaluation strategy in the evaluation of the constraint. -
leftIter
-
rightIter
-
prepareRightArg
-
joinCondition
-
-
Constructor Details
-
LeftJoinIterator
public LeftJoinIterator(EvaluationStrategy strategy, LeftJoin join, BindingSet bindings, QueryEvaluationContext context) throws QueryEvaluationException - Throws:
QueryEvaluationException
-
LeftJoinIterator
public LeftJoinIterator(QueryEvaluationStep left, QueryEvaluationStep right, QueryValueEvaluationStep joinCondition, BindingSet bindings, Set<String> scopeBindingNamse) 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
-
isTrue
-
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
-