Package jadex.commons.future
Class PullIntermediateFuture<E>
- java.lang.Object
-
- jadex.commons.future.Future<java.util.Collection<E>>
-
- jadex.commons.future.IntermediateFuture<E>
-
- jadex.commons.future.TerminableIntermediateFuture<E>
-
- jadex.commons.future.PullIntermediateFuture<E>
-
- All Implemented Interfaces:
IBackwardCommandFuture
,IForwardCommandFuture
,IFuture<java.util.Collection<E>>
,IIntermediateFuture<E>
,IPullIntermediateFuture<E>
,ITerminableFuture<java.util.Collection<E>>
,ITerminableIntermediateFuture<E>
public class PullIntermediateFuture<E> extends TerminableIntermediateFuture<E> implements IPullIntermediateFuture<E>
Intermediate future with pull mechanism. Allows for pulling results by the caller. In this way a pull intermediate future is similar to an iterator.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface jadex.commons.future.IForwardCommandFuture
IForwardCommandFuture.Type
-
-
Field Summary
Fields Modifier and Type Field Description protected ICommand<PullIntermediateFuture<E>>
pullcmd
The pull command.-
Fields inherited from class jadex.commons.future.TerminableIntermediateFuture
bcommands, terminate
-
Fields inherited from class jadex.commons.future.IntermediateFuture
icallers, indices, intermediate, maxresultcnt, notcommand, results
-
Fields inherited from class jadex.commons.future.Future
CALLER_QUEUED, CALLER_RESUMED, CALLER_SUSPENDED, callers, creation, DEBUG, exception, first, listeners, NO_STACK_COMPACTION, NONE, NOTIFICATIONS, notificount, result, resultavailable, undone, UNSET
-
Fields inherited from interface jadex.commons.future.IIntermediateFuture
DONE
-
-
Constructor Summary
Constructors Constructor Description PullIntermediateFuture()
Create a new future.PullIntermediateFuture(ICommand<PullIntermediateFuture<E>> pullcmd)
Create a new future.PullIntermediateFuture(ICommand<PullIntermediateFuture<E>> pullcmd, ITerminationCommand termcom)
Create a new future.PullIntermediateFuture(java.lang.Exception exception)
Create a future that is already done (failed).
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
pullIntermediateResult()
Pull an intermediate result.-
Methods inherited from class jadex.commons.future.TerminableIntermediateFuture
addBackwardCommand, getTerminationCommand, removeBackwardCommand, sendBackwardCommand, setTerminationCommand, terminate, terminate
-
Methods inherited from class jadex.commons.future.IntermediateFuture
addIntermediateResult, addIntermediateResultIfUndone, addResultListener, asStream, asStream, catchEx, delegateEx, doAddIntermediateResult, doGetNextIntermediateResult, done, doSetException, doSetFinished, doSetResult, finished, getIntermediateResults, getNextIntermediateResult, getNextIntermediateResult, getNextIntermediateResult, getNotificationCommand, getResultCount, hasNextIntermediateResult, hasNextIntermediateResult, max, next, notifyIntermediateResult, resume, resumeIntermediate, scheduleMaxNotification, setFinished, setFinishedIfUndone, setMaxResultCount, storeResult, then
-
Methods inherited from class jadex.commons.future.Future
abortGet, catchEx, catchEx, delegate, doAddResultListener, doStartScheduledNotifications, executeNotification, get, get, get, get, get, getEmptyFuture, getException, getFuture, hasResultListener, isDone, scheduleNotification, scheduleNotification, sendForwardCommand, setException, setExceptionIfUndone, setResult, setResultIfUndone, startScheduledNotifications, thenAccept, thenAccept, thenApply, thenApply, thenCombine, thenCompose, thenCompose
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface jadex.commons.future.IBackwardCommandFuture
sendBackwardCommand
-
Methods inherited from interface jadex.commons.future.IFuture
addResultListener, catchEx, catchEx, catchEx, delegate, get, get, get, get, get, getException, isDone, then, thenApply, thenApply, thenCompose, thenCompose
-
Methods inherited from interface jadex.commons.future.IIntermediateFuture
asStream, asStream, done, finished, getIntermediateResults, getNextIntermediateResult, getNextIntermediateResult, hasNextIntermediateResult, hasNextIntermediateResult, max, next
-
Methods inherited from interface jadex.commons.future.ITerminableFuture
terminate, terminate
-
-
-
-
Field Detail
-
pullcmd
protected ICommand<PullIntermediateFuture<E>> pullcmd
The pull command.
-
-
Constructor Detail
-
PullIntermediateFuture
public PullIntermediateFuture()
Create a new future.
-
PullIntermediateFuture
public PullIntermediateFuture(java.lang.Exception exception)
Create a future that is already done (failed).- Parameters:
exception
- The exception.
-
PullIntermediateFuture
public PullIntermediateFuture(ICommand<PullIntermediateFuture<E>> pullcmd)
Create a new future.- Parameters:
terminate
- The runnable to be executed in case of termination.
-
PullIntermediateFuture
public PullIntermediateFuture(ICommand<PullIntermediateFuture<E>> pullcmd, ITerminationCommand termcom)
Create a new future.- Parameters:
terminate
- The runnable to be executed in case of termination.
-
-
Method Detail
-
pullIntermediateResult
public void pullIntermediateResult()
Pull an intermediate result.- Specified by:
pullIntermediateResult
in interfaceIPullIntermediateFuture<E>
-
-