RxJava2 Есть ли какой-нибудь метод вроде flapMap для обработки ошибок? - PullRequest
0 голосов
/ 26 мая 2020

Я использую RxJava2 в своем приложении android.

Я хочу знать, есть ли какой-нибудь метод вроде flapMap, который я могу использовать для обработки ошибок.

Итак, что я хочу знать:

Есть ли какой-либо метод, который возвращает другой наблюдаемый объект при возникновении ошибки?

Пример того, что я хочу

fun getSomething() : Flowable<Something> { //retrun type can be Single or Maybe
    return somethingDB.getData().`method that return new Observable onError` {
        return@`method that return new Observable onError` somethingServer.getData()
    }
}

Что может быть method that return new Observable onError ?

Простите за мой английский sh

Ответы [ 2 ]

1 голос
/ 26 мая 2020

Это мой путь:

fun getSomething() : Flowable<Something> { //retrun type can be Single or Maybe
     var data = somethingDB.getData() : List<Data>  // somethingDB.getData() return List, not return Observable
      if (data==null)
          return somethingDB.getData()
      else return data 
}
1 голос
/ 26 мая 2020
 Flowable.just(1)
            .doOnError((e)->{
                //do something when error
            }).onErrorReturn((it)->{
        // return a value when error
        return 1;
    })

Это ваше желание?

...