Reactor Flux<MyObject> to Mono<List<MyObject>>

Dariusz Bacinski picture Dariusz Bacinski · May 18, 2017 · Viewed 7.8k times · Source

How can I convert Flux<MyObject> directly to Mono<List<MyObject>> ?

I am looking for equivalent of Single<List<MyObject>> single = observable.toList() from RxJava.

With blocking operator I can do it like this:

val just: Mono<List<MyObject>> = Mono.just(flux.toIterable().toList())

But it is executed at the time of declaration which doesn't seam to be right.

Answer

tynn picture tynn · May 18, 2017

Flux has the method collectList() doing just the same like toList() in Rx.

val just: Mono<List<MyObject>> = flux.collectList()