Class SynchronousWorkerUnion<T>
- java.lang.Object
-
- org.eclipse.rdf4j.common.iteration.AbstractCloseableIteration<E,X>
-
- org.eclipse.rdf4j.common.iteration.LookAheadIteration<T,QueryEvaluationException>
-
- org.eclipse.rdf4j.federated.evaluation.concurrent.ParallelExecutorBase<T>
-
- org.eclipse.rdf4j.federated.evaluation.union.UnionExecutorBase<T>
-
- org.eclipse.rdf4j.federated.evaluation.union.WorkerUnionBase<T>
-
- org.eclipse.rdf4j.federated.evaluation.union.SynchronousWorkerUnion<T>
-
- All Implemented Interfaces:
AutoCloseable
,Runnable
,CloseableIteration<T,QueryEvaluationException>
,Iteration<T,QueryEvaluationException>
,ParallelExecutor<T>
public class SynchronousWorkerUnion<T> extends WorkerUnionBase<T>
Synchronous execution of union tasks, i.e. one after the other. The union result is contained in this iteration. Note that the union operation is to be executed with theParallelExecutorBase.run()
method- Author:
- Andreas Schwarte
-
-
Field Summary
-
Fields inherited from class org.eclipse.rdf4j.federated.evaluation.union.WorkerUnionBase
tasks
-
Fields inherited from class org.eclipse.rdf4j.federated.evaluation.concurrent.ParallelExecutorBase
evaluationThread, executorId, finished, log, NEXT_EXECUTOR_ID, queryInfo, rightIter, rightQueue, strategy
-
-
Constructor Summary
Constructors Constructor Description SynchronousWorkerUnion(QueryInfo queryInfo)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
union()
Note: this method must block until the union is executed completely.-
Methods inherited from class org.eclipse.rdf4j.federated.evaluation.union.WorkerUnionBase
addTask, handleClose
-
Methods inherited from class org.eclipse.rdf4j.federated.evaluation.union.UnionExecutorBase
getExecutorType, performExecution
-
Methods inherited from class org.eclipse.rdf4j.federated.evaluation.concurrent.ParallelExecutorBase
addResult, checkTimeout, done, getDisplayId, getId, getNextElement, getQueryInfo, isFinished, run, toss, toString
-
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, wait, wait, wait
-
Methods inherited from interface org.eclipse.rdf4j.common.iteration.CloseableIteration
stream
-
-
-
-
Constructor Detail
-
SynchronousWorkerUnion
public SynchronousWorkerUnion(QueryInfo queryInfo)
-
-
Method Detail
-
union
protected void union() throws Exception
Description copied from class:UnionExecutorBase
Note: this method must block until the union is executed completely. Otherwise the result queue is marked as committed while this isn't the case. The blocking behavior in general is no problem: If you need concurrent access to the result (i.e. pipelining) just run the union in a separate thread. Access to the result iteration is synchronized.- Specified by:
union
in classUnionExecutorBase<T>
- Throws:
Exception
-
-