Я пытаюсь создать серверный вызов, используя библиотеку RxJava2, которая попытается опросить сервер на предмет ответа, и если 3 раза подряд получает исключение, чтобы вернуть это исключение
Я установил базовый вызовкоторый получает ответ от сервера
final Observable<ResponseValue> responseValueObservable = Observable
.fromCallable((Callable) (c) -> return getDispatcher().performSubmit(submitValue);
}
});
return responseValueObservable
.retry(3)
.subscribeOn(Schedulers.io()
.onError((t) -> { log.error(t); Observable.timer(2, SECONDS);}
.retryUntil(() -> { return retryIsEnabled }
, поэтому getDispatcher().performSubmit(submitValue)
возвращает либо SubmitException
, либо ResponseValue
объект.
Мне нужен код, чтобы повторить 3 раза, делая паузу после каждого исключения на 2 секунды и возвращая либо ResponseValue
, либо последний SubmitException