Package jadex.future
Class TerminableDelegationFutureHandler<E>
java.lang.Object
jadex.future.TerminableDelegationFutureHandler<E>
Handler for common code of (non) intermediate terminable delegation future.
Workaround for missing multiple inheritance.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected int
The number of intermediate pulls to be performed, when the source is connected.protected Exception
Exception used for termination.protected ITerminableFuture
<E> The termination source.The list of stored backward commands, to be sent when src is connected.protected boolean
Flag if source has to be terminated.protected boolean
Flag if source has been terminated. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
Pull an intermediate result.void
sendBackwardCommand
(Object info) Send a backward command in direction of the source.void
Set the termination source.void
Terminate the future.void
Terminate the future and supply a custom reason.
-
Field Details
-
src
The termination source. -
terminate
protected boolean terminateFlag if source has to be terminated. -
terminated
protected boolean terminatedFlag if source has been terminated. -
reason
Exception used for termination. -
storedcmds
The list of stored backward commands, to be sent when src is connected. -
pullcnt
protected int pullcntThe number of intermediate pulls to be performed, when the source is connected.
-
-
Constructor Details
-
TerminableDelegationFutureHandler
public TerminableDelegationFutureHandler()Create a new future.
-
-
Method Details
-
setTerminationSource
Set the termination source. -
terminate
public void terminate()Terminate the future. The exception will be set to FutureTerminatedException. -
terminate
Terminate the future and supply a custom reason. -
pullIntermediateResult
public void pullIntermediateResult()Pull an intermediate result. -
sendBackwardCommand
Send a backward command in direction of the source.- Parameters:
info
- The command info.
-