Вызов api.bookings возвращает список заказов в предопределенном порядке. Вызов api.order() возвращает бронирование, но с дополнительной информацией. После применения flatMap() порядок списка заказов перепутался. (bookings.toList() - это просто список, если заказы). Как я могу получить значения в zip-функции в порядке, указанном с помощью .from (bookings.toList()). Примечание. Я не могу использовать toSortedList, поскольку у меня нет возможности сравнить два заказа.Как сохранить порядок списка после применения flatMap() к нему?
bookingsSubscription = api.bookings()
.flatMap(bookings ->
Observable.zip(
Observable
.from(bookings.toList())
.flatMap(booking -> api.order(booking.orderId)),
Observable.from(bookings.toList()),
(newBooking, oldBooking) -> {
// at this point newBooking != oldBooking
}
).toList())
.subscribe(callback);
api.order