Class TriggerSuccessFuture<T>

  • All Implemented Interfaces:
    Future<T>

    public abstract class TriggerSuccessFuture<T>
    extends TriggerFuture<T>

    Extends TriggerFuture so that it only gets triggered on successful (no exception) completion of the Future. This prevents, for example, cache put()s from firing when concurrency exceptions are thrown.

    Author:
    Jeff Schnitzer
    • Constructor Detail

      • TriggerSuccessFuture

        public TriggerSuccessFuture​(Future<T> raw)
        Wrap a normal Future
    • Method Detail

      • success

        protected abstract void success​(T result)
        This method will be called ONCE upon successful completion of the future.
      • trigger

        protected final void trigger()
        Description copied from class: TriggerFuture
        This method will be called ONCE upon completion of the future, successful or not. Beware that this.get() may throw an exception.
        Specified by:
        trigger in class TriggerFuture<T>