/** * {@inheritDoc} */ @Override public <R> Promise<R> then(Success<? super T, ? extends R> success) { return then(success, null); }
/** * {@inheritDoc} */ @Override public <R> Promise<R> then(Success<? super T, ? extends R> success) { return then(success, null); }
/** * {@inheritDoc} */ @Override public <R> Promise<R> then(Success<? super T, ? extends R> success) { return then(success, null); }
/** * {@inheritDoc} */ @Override public <R> Promise<R> then(Success<? super T, ? extends R> success) { return then(success, null); }
/** * {@inheritDoc} */ public <R> Promise<R> then(Success<? super T, ? extends R> success) { return then(success, null); }
/** * {@inheritDoc} */ @Override public <R> Promise<R> then(Success<? super T, ? extends R> success) { return then(success, null); }
/** * {@inheritDoc} */ @Override public <R> Promise<R> then(Success<? super T, ? extends R> success) { return then(success, null); }
/** * {@inheritDoc} */ @Override public <R> Promise<R> then(Success< ? super T, ? extends R> success, Failure failure) { if (failure == null) { return coerce(); } return super.then(success, failure); }
/** * {@inheritDoc} */ @Override public <R> Promise<R> then(Success< ? super T, ? extends R> success, Failure failure) { if (success == null) { return resolved(null); } return super.then(success, failure); }
/** * {@inheritDoc} */ @Override public <R> Promise<R> then(Success< ? super T, ? extends R> success, Failure failure) { if (failure == null) { return coerce(); } return super.then(success, failure); }
/** * {@inheritDoc} */ @Override public <R> Promise<R> then(Success< ? super T, ? extends R> success, Failure failure) { if (success == null) { return resolved(null); } return super.then(success, failure); }
/** * {@inheritDoc} */ @Override public <R> Promise<R> then(Success< ? super T, ? extends R> success, Failure failure) { if (failure == null) { return coerce(); } return super.then(success, failure); }
/** * {@inheritDoc} */ @Override public <R> Promise<R> then(Success< ? super T, ? extends R> success, Failure failure) { if (failure == null) { return coerce(); } return super.then(success, failure); }
/** * {@inheritDoc} */ @Override public <R> Promise<R> then(Success< ? super T, ? extends R> success, Failure failure) { if (failure == null) { return coerce(); } return super.then(success, failure); }
/** * {@inheritDoc} */ @Override public <R> Promise<R> then(Success< ? super T, ? extends R> success, Failure failure) { if (success == null) { return resolved(null); } return super.then(success, failure); }
/** * {@inheritDoc} */ @Override public <R> Promise<R> then(Success< ? super T, ? extends R> success, Failure failure) { if (failure == null) { return coerce(); } return super.then(success, failure); }
/** * {@inheritDoc} */ @Override public <R> Promise<R> then(Success< ? super T, ? extends R> success, Failure failure) { if (success == null) { return resolved(null); } return super.then(success, failure); }
/** * {@inheritDoc} */ public Promise<T> filter(Predicate<? super T> predicate) { return then(new Filter<T>(predicate)); }
/** * {@inheritDoc} */ public Promise<T> recover(Function<Promise<?>, ? extends T> recovery) { PromiseImpl<T> chained = new PromiseImpl<T>(); Recover<T> recover = new Recover<T>(chained, recovery); then(recover, recover); return chained; }
/** * {@inheritDoc} */ public Promise<T> fallbackTo(Promise<? extends T> fallback) { PromiseImpl<T> chained = new PromiseImpl<T>(); FallbackTo<T> fallbackTo = new FallbackTo<T>(chained, fallback); then(fallbackTo, fallbackTo); return chained; }