/** * {@inheritDoc} */ @Override public <R> Promise<R> then(Success<? super T, ? extends R> success, Failure failure) { DeferredPromiseImpl<R> chained = deferred(); onResolve(chained.new Then<>(this, success, failure)); return chained.orDone(); }
/** * {@inheritDoc} */ @Override public <R> Promise<R> then(Success<? super T, ? extends R> success, Failure failure) { DeferredPromiseImpl<R> chained = deferred(); chain(this, chained.new Then<>(this, success, failure)); return chained.orDone(); }
/** * {@inheritDoc} */ @Override public Promise<T> recover(Function<Promise<?>, ? extends T> recovery) { DeferredPromiseImpl<T> chained = deferred(); onResolve(chained.new Recover(this, recovery)); return chained.orDone(); }
/** * {@inheritDoc} */ @Override public Promise<T> timeout(long millis) { DeferredPromiseImpl<T> chained = deferred(); onResolve(chained.new Timeout(this, millis)); return chained.orDone(); }
/** * {@inheritDoc} */ @Override public Promise<T> delay(long millis) { DeferredPromiseImpl<T> chained = deferred(); onResolve(chained.new Delay(this, millis)); return chained.orDone(); }
/** * {@inheritDoc} */ @Override public Promise<T> recover(Function<Promise<?>, ? extends T> recovery) { DeferredPromiseImpl<T> chained = deferred(); chain(this, chained.new Recover(this, recovery)); return chained.orDone(); }
/** * {@inheritDoc} */ @Override public Promise<T> delay(long millis) { DeferredPromiseImpl<T> chained = deferred(); chain(this, chained.new Delay(this, millis)); return chained.orDone(); }
/** * {@inheritDoc} */ @Override public Promise<T> filter(Predicate<? super T> predicate) { DeferredPromiseImpl<T> chained = deferred(); onResolve(chained.new Filter(this, predicate)); return chained.orDone(); }
/** * {@inheritDoc} */ @Override public <R> Promise<R> flatMap(Function<? super T, Promise<? extends R>> mapper) { DeferredPromiseImpl<R> chained = deferred(); onResolve(chained.new FlatMap<>(this, mapper)); return chained.orDone(); }
/** * {@inheritDoc} */ @Override public Promise<T> recoverWith(Function<Promise<?>, Promise<? extends T>> recovery) { DeferredPromiseImpl<T> chained = deferred(); onResolve(chained.new RecoverWith(this, recovery)); return chained.orDone(); }
/** * {@inheritDoc} */ @Override public Promise<T> fallbackTo(Promise<? extends T> fallback) { DeferredPromiseImpl<T> chained = deferred(); onResolve(chained.new FallbackTo(this, fallback)); return chained.orDone(); }
/** * {@inheritDoc} */ @Override public <R> Promise<R> map(Function<? super T, ? extends R> mapper) { DeferredPromiseImpl<R> chained = deferred(); chain(this, chained.new Map<>(this, mapper)); return chained.orDone(); }
/** * {@inheritDoc} */ @Override public <R> Promise<R> flatMap(Function<? super T, Promise<? extends R>> mapper) { DeferredPromiseImpl<R> chained = deferred(); chain(this, chained.new FlatMap<>(this, mapper)); return chained.orDone(); }
/** * {@inheritDoc} */ @Override public Promise<T> recoverWith(Function<Promise<?>, Promise<? extends T>> recovery) { DeferredPromiseImpl<T> chained = deferred(); chain(this, chained.new RecoverWith(this, recovery)); return chained.orDone(); }
/** * {@inheritDoc} */ @Override public <R> Promise<R> then(Success<? super T, ? extends R> success, Failure failure) { DeferredPromiseImpl<R> chained = deferred(); onResolve(chained.new Then<>(this, success, failure)); return chained.orDone(); }
/** * {@inheritDoc} */ @Override public Promise<T> recoverWith(Function<Promise<?>, Promise<? extends T>> recovery) { DeferredPromiseImpl<T> chained = deferred(); onResolve(chained.new RecoverWith(this, recovery)); return chained.orDone(); }
/** * {@inheritDoc} */ @Override public Promise<T> delay(long millis) { DeferredPromiseImpl<T> chained = deferred(); onResolve(chained.new Delay(this, millis)); return chained.orDone(); }
/** * {@inheritDoc} */ @Override public Promise<T> thenAccept(Consumer< ? super T> consumer) { DeferredPromiseImpl<T> chained = deferred(); onResolve(chained.new ThenAccept(this, consumer)); return chained.orDone(); }
/** * {@inheritDoc} */ @Override public <R> Promise<R> map(Function<? super T, ? extends R> mapper) { DeferredPromiseImpl<R> chained = deferred(); onResolve(chained.new Map<>(this, mapper)); return chained.orDone(); }
/** * {@inheritDoc} */ @Override public Promise<T> thenAccept(Consumer< ? super T> consumer) { DeferredPromiseImpl<T> chained = deferred(); onResolve(chained.new ThenAccept(this, consumer)); return chained.orDone(); }