Определение конкретных результатов 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;    
});

0 ответов

Другие вопросы по тегам