Explorar o código

Rewrite "retry(Predicate)" as "retryWhen()"

This is just a preparatory step to add exponential backoff.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
Daniel Calviño Sánchez %!s(int64=2) %!d(string=hai) anos
pai
achega
52dda57aef

+ 9 - 1
app/src/main/java/com/nextcloud/talk/activities/CallActivity.java

@@ -1480,7 +1480,15 @@ public class CallActivity extends CallBaseActivity {
                                 .observeOn(AndroidSchedulers.mainThread())
                                 .repeatWhen(observable -> observable)
                                 .takeWhile(observable -> isConnectionEstablished())
-                                .retry(observable -> isConnectionEstablished())
+                                .retryWhen(errors -> errors
+                                    .flatMap(error -> {
+                                        if (!isConnectionEstablished()) {
+                                            return Observable.error(error);
+                                        }
+
+                                        return Observable.just(0l);
+                                    })
+                                )
                                 .subscribe(new Observer<SignalingOverall>() {
                                     @Override
                                     public void onSubscribe(@io.reactivex.annotations.NonNull Disposable d) {