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 QueryValueEvaluationStepprivate final CloseableIteration<BindingSet, QueryEvaluationException> private final QueryEvaluationStepThe 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 BindingSetGets the next element.protected voidCalled byAbstractCloseableIteration.close()when it is called for the first time.private booleanisTrue(QueryValueEvaluationStep expr, QueryBindingSet bindings) Methods inherited from class org.eclipse.rdf4j.common.iteration.LookAheadIteration
hasNext, next, removeMethods inherited from class org.eclipse.rdf4j.common.iteration.AbstractCloseableIteration
close, isClosedMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods 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: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
-
isTrue
-
handleClose
Description 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
-