Class StopRemainingExecutionsOnCloseIteration
- java.lang.Object
-
- org.eclipse.rdf4j.common.iteration.AbstractCloseableIteration<BindingSet,QueryEvaluationException>
-
- org.eclipse.rdf4j.federated.evaluation.iterator.StopRemainingExecutionsOnCloseIteration
-
- All Implemented Interfaces:
AutoCloseable
,CloseableIteration<BindingSet,QueryEvaluationException>
,Iteration<BindingSet,QueryEvaluationException>
public class StopRemainingExecutionsOnCloseIteration extends AbstractCloseableIteration<BindingSet,QueryEvaluationException>
A wrapping iteration that attempts to close all running scheduledFuture
s for the given query evaluation.This is required for instance if the resulting iteration is not fully consumed.
- Author:
- Andreas Schwarte
- See Also:
QueryInfo.close()
,ParallelTask.cancel()
-
-
Field Summary
Fields Modifier and Type Field Description protected CloseableIteration<? extends BindingSet,QueryEvaluationException>
inner
protected QueryInfo
queryInfo
-
Constructor Summary
Constructors Constructor Description StopRemainingExecutionsOnCloseIteration(CloseableIteration<? extends BindingSet,QueryEvaluationException> inner, QueryInfo queryInfo)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
handleClose()
Called byAbstractCloseableIteration.close()
when it is called for the first time.boolean
hasNext()
Returns true if the iteration has more elements.BindingSet
next()
Returns the next element in the iteration.void
remove()
Removes from the underlying collection the last element returned by the iteration (optional operation).-
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 Detail
-
inner
protected final CloseableIteration<? extends BindingSet,QueryEvaluationException> inner
-
queryInfo
protected final QueryInfo queryInfo
-
-
Constructor Detail
-
StopRemainingExecutionsOnCloseIteration
public StopRemainingExecutionsOnCloseIteration(CloseableIteration<? extends BindingSet,QueryEvaluationException> inner, QueryInfo queryInfo)
-
-
Method Detail
-
hasNext
public boolean hasNext() throws QueryEvaluationException
Description copied from interface:Iteration
Returns true if the iteration has more elements. (In other words, returns true ifIteration.next()
would return an element rather than throwing a NoSuchElementException.)- Returns:
- true if the iteration has more elements.
- Throws:
QueryEvaluationException
-
next
public BindingSet next() throws QueryEvaluationException
Description copied from interface:Iteration
Returns the next element in the iteration.- Returns:
- the next element in the iteration.
- Throws:
QueryEvaluationException
-
remove
public void remove() throws QueryEvaluationException
Description copied from interface:Iteration
Removes from the underlying collection the last element returned by the iteration (optional operation). This method can be called only once per call to next.- Throws:
QueryEvaluationException
-
handleClose
protected void handleClose() throws QueryEvaluationException
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 classAbstractCloseableIteration<BindingSet,QueryEvaluationException>
- Throws:
QueryEvaluationException
-
-