//Observable<List<System>>
var temp = apiService.getSystems(accessToken = ACCESS_TOKEN, id = LOCATION_ID)
temp.flatMapIterable { //it:List<System>
it
}.flatMap ({ t: System ->
apiService.getEquipments(ACCESS_TOKEN, t.id)
}, {
t1: System, t2: ListResponse<Equipment> ->
mutableMapOf(Pair(t1, t2))
})
.toList()
.subscribe {
t: MutableList<MutableMap<System,
ListResponse<Equipment>>>? -> {
}
}
Я хотел бы добиться вложенных вызовов API в rxjava.Мой первый вызов получит список систем, затем из списка систем захочется зациклить и вызвать API оборудования, чтобы получить список оборудования.Затем объедините их в пару, получив в результате List<Pair<System, List<Equipments>>>
Допустим, у меня есть список из 3 систем.Когда я запускаю этот код, только первая система выполнит бифункцию, а остальные 4 пропустят бифункцию.
Есть ли обходной путь?Может ли кто-нибудь помочь мне, как достичь ожидаемого результата.
Источник: RxJava 2 вложенных сетевых запроса