У меня есть список наблюдаемых. Размер этого динамичен. Каждая наблюдаемая представляет вызов API, сделанный с помощью Retrofit. Поэтому мне нужно сжать все эти вызовы, чтобы получить список ответов того же типа.
Вот посмотрите, что я пробовал:
//The method that perfoms the api call
private fun iterateObservable(params: AssignSeatStatusResponse): List<Observable<SeatSelectionResponse>> {
val seatsMatrix = mutableListOf<Observable<SeatSelectionResponse>>()
params.seatJourneys.forEach { seatJourneysItem ->
seatJourneysItem.seatSegments.forEach { seatSegmentsItem ->
seatsMatrix.add(
this.getSeatMapFromServiceUseCase.createObservable(buildSeatSelectionRequest(seatSegmentsItem))
.subscribeOn(Schedulers.newThread())
)
}
}
return seatsMatrix
//The method I need to return the list of observables
override fun createObservable(params: AssignSeatStatusResponse): Observable<List<SeatSelectionResponse>> {
return Observable.zip(iterateObservable(params), FuncN {
})
}
Моя проблема заключается в том, что почтовый индекс отображает ошибку, говоря, что ни одна из следующих функций не может быть вызвана с предоставленными аргументами.
Что я делаю не так? Любая помощь будет оценена. Заранее спасибо.