Class IntermediateExceptionDelegationResultListener<E,​T>

    • Field Detail

      • future

        protected Future<T> future
        The future to which calls are delegated.
      • 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 be null.
        flistener - Functional finished listener. Can be null.
      • IntermediateExceptionDelegationResultListener

        public IntermediateExceptionDelegationResultListener​(Future<T> future)
        Create a new listener.
    • 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:
        resultAvailable in interface IResultListener<E>
        Parameters:
        result - The final 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 interface IIntermediateResultListener<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:
        exceptionOccurred in interface IResultListener<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 interface IIntermediateResultListener<E>
      • resultAvailableIfUndone

        public void resultAvailableIfUndone​(java.util.Collection<E> result)
        Called when the result is available.
        Specified by:
        resultAvailableIfUndone in interface IUndoneResultListener<E>
        Parameters:
        result - The result.
      • exceptionOccurredIfUndone

        public void exceptionOccurredIfUndone​(java.lang.Exception exception)
        Called when an exception occurred.
        Specified by:
        exceptionOccurredIfUndone in interface IUndoneResultListener<E>
        Parameters:
        exception - The exception.
      • 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 interface IUndoneIntermediateResultListener<E>
      • isUndone

        public boolean isUndone()
        Get the undone.
        Returns:
        The undone.