У меня есть несколько наблюдаемых, выполняющих сетевые вызовы, и мне нужно выдавать ошибку из наблюдаемой объединителя, только когда все наблюдаемые излучают ошибку. Если хотя бы одна наблюдаемая завершена, то результат должен быть передан.
Мой текущий поток работает следующим образом:
Observable.fromIterable(list)
.flatMap{networkObservable}
.reduce{combine result of all network observables to same list}
Я мог бы просто сделать:
Observable.fromIterable(list)
.flatMap{networkObservable.onErrorReturnItem(errorItem)}
.reduce{check if all items are error items and return error item otherwise combine result of
all network observables to same list}
Но Я хотел знать, есть ли лучший способ справиться с этим делом.