Я использую Retrofit + RxJava в приложении для Android и задаю себе вопрос о том, как обрабатывать разбиение на страницы API на цепочку вызовов до тех пор, пока все данные не будут восстановлены. Что-то вроде этого:
Observable<ApiResponse> getResults(@Query("page") int page);
Объект ApiResponse имеет простую структуру:
class ApiResponse {
int current;
Integer next;
List<ResponseObject> results;
}
API вернет значение next до последней страницы.
Есть ли хороший способ достичь этого? Попробовал объединить некоторые flatMaps(), но не имел успеха.