Package jadex.commons.future
Class IntermediateExceptionDelegationResultListener<E,T>
- java.lang.Object
-
- jadex.commons.future.IntermediateExceptionDelegationResultListener<E,T>
-
- All Implemented Interfaces:
IFutureCommandResultListener<java.util.Collection<E>>,IIntermediateResultListener<E>,IResultListener<java.util.Collection<E>>,IUndoneIntermediateResultListener<E>,IUndoneResultListener<java.util.Collection<E>>
public class IntermediateExceptionDelegationResultListener<E,T> extends java.lang.Object implements IIntermediateResultListener<E>, IFutureCommandResultListener<java.util.Collection<E>>, IUndoneIntermediateResultListener<E>
Exception delegation listener for intermediate futures.
-
-
Field Summary
Fields Modifier and Type Field Description protected java.util.function.Consumer<java.lang.Integer>clistenerCustom functional result count listener.protected java.lang.RunnableflistenerCustom functional finished listenerprotected Future<T>futureThe future to which calls are delegated.protected java.util.function.Consumer<E>irlistenerCustom functional result listenerprotected booleanundoneThe undone flag.
-
Constructor Summary
Constructors Constructor Description IntermediateExceptionDelegationResultListener(Future<T> future)Create a new listener.IntermediateExceptionDelegationResultListener(Future<T> future, java.util.function.Consumer<E> irlistener, java.lang.Runnable flistener, java.util.function.Consumer<java.lang.Integer> clistener)Create a new listener.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcommandAvailable(java.lang.Object command)Called when a command is available.voidcustomResultAvailable(java.util.Collection<E> result)Called when the result is available.voidexceptionOccurred(java.lang.Exception exception)Called when an exception occurred.voidexceptionOccurredIfUndone(java.lang.Exception exception)Called when an exception occurred.voidfinished()Declare that the future is finished.voidfinishedIfUndone()Declare that the future is finished.voidintermediateResultAvailable(E result)Called when an intermediate result is available.voidintermediateResultAvailableIfUndone(E result)Called when an intermediate result is available.booleanisUndone()Get the undone.voidmaxResultCountAvailable(int max)Declare that the future result count is available.voidresultAvailable(java.util.Collection<E> result)Called when the result is available.voidresultAvailableIfUndone(java.util.Collection<E> result)Called when the result is available.
-
-
-
Field Detail
-
undone
protected boolean undone
The undone flag.
-
irlistener
protected java.util.function.Consumer<E> irlistener
Custom functional result listener
-
flistener
protected java.lang.Runnable flistener
Custom functional finished listener
-
clistener
protected java.util.function.Consumer<java.lang.Integer> clistener
Custom functional result count listener.
-
-
Constructor Detail
-
IntermediateExceptionDelegationResultListener
public IntermediateExceptionDelegationResultListener(Future<T> future, java.util.function.Consumer<E> irlistener, java.lang.Runnable flistener, java.util.function.Consumer<java.lang.Integer> clistener)
Create a new listener.- Parameters:
future- The delegation target.irlistener- Functional intermediate result Listener. Can benull.flistener- Functional finished listener. Can benull.
-
-
Method Detail
-
resultAvailable
public void resultAvailable(java.util.Collection<E> result)
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:
resultAvailablein interfaceIResultListener<E>- Parameters:
result- The final result.
-
intermediateResultAvailable
public void intermediateResultAvailable(E result)
Called when an intermediate result is available.- Specified by:
intermediateResultAvailablein 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:
finishedin interfaceIIntermediateResultListener<E>
-
customResultAvailable
public void customResultAvailable(java.util.Collection<E> result)
Called when the result is available.- Parameters:
result- The result.
-
exceptionOccurred
public void exceptionOccurred(java.lang.Exception exception)
Called when an exception occurred.- Specified by:
exceptionOccurredin interfaceIResultListener<E>- Parameters:
exception- The exception.
-
maxResultCountAvailable
public void maxResultCountAvailable(int max)
Description copied from interface:IIntermediateResultListenerDeclare 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:
maxResultCountAvailablein interfaceIIntermediateResultListener<E>
-
resultAvailableIfUndone
public void resultAvailableIfUndone(java.util.Collection<E> result)
Called when the result is available.- Specified by:
resultAvailableIfUndonein interfaceIUndoneResultListener<E>- Parameters:
result- The result.
-
exceptionOccurredIfUndone
public void exceptionOccurredIfUndone(java.lang.Exception exception)
Called when an exception occurred.- Specified by:
exceptionOccurredIfUndonein interfaceIUndoneResultListener<E>- Parameters:
exception- The exception.
-
intermediateResultAvailableIfUndone
public void intermediateResultAvailableIfUndone(E result)
Called when an intermediate result is available.- Specified by:
intermediateResultAvailableIfUndonein 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:
finishedIfUndonein interfaceIUndoneIntermediateResultListener<E>
-
commandAvailable
public void commandAvailable(java.lang.Object command)
Called when a command is available.- Specified by:
commandAvailablein interfaceIFutureCommandResultListener<E>
-
isUndone
public boolean isUndone()
Get the undone.- Returns:
- The undone.
-
-