Итак, у меня есть функция, которая выполняет вызов с использованием Rx Java, а затем эта функция должна вставить элемент, возвращенный в список.
Так что код работает нормально. Я могу получить и все элементы в списке корзины. Однако, если появляется код ошибки, сгенерированный getItem (getItem выполняет вызов API), такой как 401 или 404 ..., я хочу продолжить в итерации и просто обойти вставку. Я не могу использовать onErrorReturnItem с нулевым значением и фильтровать нулевое значение после.
return Observable.just(itemResponses)
.flatMapIterable { it }
.flatMapSingle { itemResponse ->
itemWarehouse.getItem(itemResponse.id)
.map { item ->
itemData(
itemResponse.id,
item,
itemResponse.info,
false,
itemResponse.result)
}
}
.map { itemData -> cartMap[itemData.id]?.insert(itemData) }
.toList()
.map { cartMap.values.toList() }
}
Есть идеи?