Modelo lleno con respuesta extra usando Rx

Soy nuevo con Rx java y mi tarea actual es tener 2 requestes

@GET(NEWS_LIST) fun getNews(): Observable<NewsResponse> @GET fun getNewsImage(@Url url: String): Observable<NewsImage> 

y me gustaría agregar url de image al model de respuesta 1 desde el segundo. El segundo depende del primero. ¿Cómo es posible fusionarlos en la transmisión Rx?

Así que la primera request me devuelve la list de noticias, luego tengo que llamar a getNewsImage(url) para cada artículo con la url de este model, analizar la url de la image real de la segunda respuesta, agregarla al object de news y get la list final con models completos Gracias por cualquier Consejo

 getNews() .flatMap { Observable.fromIterable(it.getTopicsList()) } //or Observable.from() if you use RxJava1 .flatMap({ getNewsImage(it) }, { topic, imageUrl -> topic.imageUrl = imageUrl return@flatMap topic }) .toList() 

El segundo flatMap combina elementos de la fuente Observable con el Observable activado por esos elementos fuente, y emite estas combinaciones. Más información

si obtuve correctamente: 1.ª respuesta es List<> o alguna Collection . Entonces puedes hacer como:

 getNews().from() .flatmap(new Func1<1stResponseItem, 2dnResponseItem>() { @Override public 2dnResponseItem call(1stResponseItem response) { return getNewsImage(response.getImageUrl()); } }) .tolist() 

PS Docs sobre .from() , sobre toList()