Может быть, после завершения в цепи - PullRequest
0 голосов
/ 09 января 2020

Как правильно создать цепочку в следующем случае? Теперь у меня есть:

someSingle()
.filter{...}
.flatMapSingleElement { Single.create {...} }
.doOnError(...)
.onErrorReturnItem(...)
.switchIfEmpty(...)

Но мне нужно вставить в цепочку anotherSingle () и someCompletable () после someSingle () и не разрывать эту цепочку. Поэтому я пробую следующее:

someSingle()
.filter{...}
.flatMapSingle { anotherSingle() }
.flatMapCompletable { someCompletable() }

и что я могу сделать дальше, чтобы продолжить цепочку с

.flatMapSingleElement { Single.create {...} }
.doOnError(...)
.onErrorReturnItem(...)
.switchIfEmpty(...)

?

1 Ответ

0 голосов
/ 09 января 2020

Вы можете использовать andThen оператор.

 someSingle()
.filter{...}
.flatMapSingle { anotherSingle() }
.flatMapCompletable { someCompletable() }
.andThen(Maybe.just())

или в качестве примера

  Single.just("Hello")
        .flatMapCompletable {
            Completable.complete()
        }
        .andThen(Maybe.just("Maybe"))
        .subscribe {
            println("Result $it")
        }
...