Я новичок в программировании Spring Reactive и разрабатываю конечную точку REST, которая возвращает Flux. Например:
@PostMapping
public Flux<MyResponse> processRequests(@RequestBody List<MyRequest> requests) {
return Flux.merge(Arrays.asList(dataSource.processRequest(requests.get(0)), dataSource2.processRequest(requests.get(0)))).parallel()
.runOn(Schedulers.elastic()).sequential();
}
Каждый источник данных (dataSource и dataSource2) в примере кода реализует интерфейс, который выглядит следующим образом:
public interface MyResponseAdapter {
Flux<MyResponse> processRequest(MyRequest request);
}
Этот код отлично работает, так как возвращает Flux, как и ожидалось, но, как вы можете видеть, код ссылается только на первый элемент в списке MyRequest. Что мне нужно сделать, это создать Flux.merge для каждого элемента в списке MyRequest. Кто-нибудь может направить меня в правильном направлении?