@Test public void whenFunctionError() { TestSubscriber<Object> ts = new TestSubscriber<>(); Multi.error(new IOException()) .retryWhen((e, n) -> Multi.error(new IllegalArgumentException())) .subscribe(ts); ts.assertFailure(IllegalArgumentException.class); assertEquals(ts.getLastError().getSuppressed().length, 0,"" + ts.getLastError()); }
@Override public void subscribe(Flow.Subscriber<? super T> subscriber) { RetrySubscriber<T, U> parent = new RetrySubscriber<>(subscriber, whenFunction, source); subscriber.onSubscribe(parent); parent.retry(); }
MultiRetry implements Multi<T> { @Override public void subscribe(Flow.Subscriber<? super T> subscriber) { RetrySubscriber<T, U> parent = new RetrySubscriber<>(subscriber, whenFunction, source); subscriber.onSubscribe(parent); parent.retry(); } }
MultiRetry implements Multi<T> { @Override public void subscribe(Flow.Subscriber<? super T> subscriber) { RetrySubscriber<T, U> parent = new RetrySubscriber<>(subscriber, whenFunction, source); subscriber.onSubscribe(parent); parent.retry(); } MultiRetry(Multi<T> source,
               BiFunction<? super Throwable, ? super Long, ? extends Flow.Publisher<U>> whenFunction);   MultiRetry(Multi<T> source, long count);   MultiRetry(Multi<T> source, BiPredicate<? super Throwable, ? super Long> predicate); }
MultiRetry implements Multi<T> { @Override public void subscribe(Flow.Subscriber<? super T> subscriber) { RetrySubscriber<T, U> parent = new RetrySubscriber<>(subscriber, whenFunction, source); subscriber.onSubscribe(parent); parent.retry(); } MultiRetry(Multi<T> source,
               BiFunction<? super Throwable, ? super Long, ? extends Flow.Publisher<U>> whenFunction);   MultiRetry(Multi<T> source, long count);   MultiRetry(Multi<T> source, BiPredicate<? super Throwable, ? super Long> predicate); @Override void subscribe(Flow.Subscriber<? super T> subscriber); }
MultiRetry implements Multi<T> { @Override public void subscribe(Flow.Subscriber<? super T> subscriber) { RetrySubscriber<T, U> parent = new RetrySubscriber<>(subscriber, whenFunction, source); subscriber.onSubscribe(parent); parent.retry(); } MultiRetry(Multi<T> source,
               BiFunction<? super Throwable, ? super Long, ? extends Flow.Publisher<U>> whenFunction);   MultiRetry(Multi<T> source, long count);   MultiRetry(Multi<T> source, BiPredicate<? super Throwable, ? super Long> predicate); @Override void subscribe(Flow.Subscriber<? super T> subscriber);  }