Package jadex.future
Class IntermediateExceptionDelegationResultListener<E,T>
java.lang.Object
jadex.future.IntermediateExceptionDelegationResultListener<E,T>
- All Implemented Interfaces:
IFutureCommandResultListener<Collection<E>>
,IIntermediateResultListener<E>
,IResultListener<Collection<E>>
,IUndoneIntermediateResultListener<E>
,IUndoneResultListener<Collection<E>>
public class IntermediateExceptionDelegationResultListener<E,T>
extends Object
implements IIntermediateResultListener<E>, IFutureCommandResultListener<Collection<E>>, IUndoneIntermediateResultListener<E>
Exception delegation listener for intermediate futures.
-
Field Summary
FieldsModifier and TypeFieldDescriptionCustom functional result count listener.protected Runnable
Custom functional finished listenerThe future to which calls are delegated.Custom functional result listenerprotected boolean
The undone flag. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
commandAvailable
(Object command) Called when a command is available.void
customResultAvailable
(Collection<E> result) Called when the result is available.void
exceptionOccurred
(Exception exception) Called when an exception occurred.void
exceptionOccurredIfUndone
(Exception exception) Called when an exception occurred.void
finished()
Declare that the future is finished.void
Declare that the future is finished.void
intermediateResultAvailable
(E result) Called when an intermediate result is available.void
intermediateResultAvailableIfUndone
(E result) Called when an intermediate result is available.boolean
isUndone()
Get the undone.void
maxResultCountAvailable
(int max) Declare that the future result count is available.void
resultAvailable
(Collection<E> result) Called when the result is available.void
resultAvailableIfUndone
(Collection<E> result) Called when the result is available.
-
Field Details
-
future
The future to which calls are delegated. -
undone
protected boolean undoneThe undone flag. -
irlistener
Custom functional result listener -
flistener
Custom functional finished listener -
clistener
Custom functional result count listener.
-
-
Constructor Details
-
IntermediateExceptionDelegationResultListener
public IntermediateExceptionDelegationResultListener(Future<T> future, Consumer<E> irlistener, Runnable flistener, Consumer<Integer> clistener) Create a new listener.- Parameters:
future
- The delegation target.irlistener
- Functional intermediate result Listener. Can benull
.flistener
- Functional finished listener. Can benull
.
-
IntermediateExceptionDelegationResultListener
Create a new listener.
-
-
Method Details
-
resultAvailable
Called when the result is available. This method is only called for non-intermediate futures, i.e. when this method is called it is guaranteed that the intermediateResultAvailable method has not been called.- Specified by:
resultAvailable
in interfaceIResultListener<E>
- Parameters:
result
- The final result.
-
intermediateResultAvailable
Called when an intermediate result is available.- Specified by:
intermediateResultAvailable
in interfaceIIntermediateResultListener<E>
- Parameters:
result
- The result.
-
finished
public void finished()Declare that the future is finished. This method is only called for intermediate futures, i.e. when this method is called it is guaranteed that the intermediateResultAvailable method was called for all intermediate results before.- Specified by:
finished
in interfaceIIntermediateResultListener<E>
-
customResultAvailable
Called when the result is available.- Parameters:
result
- The result.
-
exceptionOccurred
Called when an exception occurred.- Specified by:
exceptionOccurred
in interfaceIResultListener<E>
- Parameters:
exception
- The exception.
-
maxResultCountAvailable
public void maxResultCountAvailable(int max) Description copied from interface:IIntermediateResultListener
Declare that the future result count is available. This method is only called for intermediate futures, i.e. when this method is called it is guaranteed that the intermediateResultAvailable method will be called as often as the result count indicates except an exception occurs.- Specified by:
maxResultCountAvailable
in interfaceIIntermediateResultListener<E>
-
resultAvailableIfUndone
Called when the result is available.- Specified by:
resultAvailableIfUndone
in interfaceIUndoneResultListener<E>
- Parameters:
result
- The result.
-
exceptionOccurredIfUndone
Called when an exception occurred.- Specified by:
exceptionOccurredIfUndone
in interfaceIUndoneResultListener<E>
- Parameters:
exception
- The exception.
-
intermediateResultAvailableIfUndone
Called when an intermediate result is available.- Specified by:
intermediateResultAvailableIfUndone
in interfaceIUndoneIntermediateResultListener<E>
- Parameters:
result
- The result.
-
finishedIfUndone
public void finishedIfUndone()Declare that the future is finished. This method is only called for intermediate futures, i.e. when this method is called it is guaranteed that the intermediateResultAvailable method was called for all intermediate results before.- Specified by:
finishedIfUndone
in interfaceIUndoneIntermediateResultListener<E>
-
commandAvailable
Called when a command is available.- Specified by:
commandAvailable
in interfaceIFutureCommandResultListener<E>
-
isUndone
public boolean isUndone()Get the undone.- Returns:
- The undone.
-