Определение конкретных результатов Mono при слиянии через Mono.zip
У меня есть задача - получить результаты из нескольких запросов параллельно с помощью WebClient. Количество запросов может варьироваться. После получения результатов мне нужно изменить их в зависимости от источника.
Подскажите пожалуйста, с помощью Mono.zip можно понять какому запросу принадлежат полученные данные. Или может есть другие подходы?
List<Mono<MyDto>> monos = new ArrayList<>();
monos.add(request1);
monos.add(request2);
var Mono = Mono.zip(monos, objects -> {
List<MyDto> list = new ArrayList<>();
for (var object : objects) {
var dto = (MyDto) object;
//here I don't know which request this data refers to
dto.setSource("source1");
list.add(dto);
}
return list;
});