У меня есть коллекция объектов. Мне нужно вызвать метод в этих коллекциях объектов, который возвращает «Будущее». Прямо сейчас я использую get()
в Будущем, чтобы он делал операцию синхронной. Как преобразовать его в Async?Вызов операции Async для коллекции
for (Summary summary : summaries) {
acmResponseFuture(summary.getClassification()));
String classification = summary.getClassification();
// this is a call which return Future and which is a sync call now
AcmResponse acmResponse = acmResponseFuture(classification).get();
if (acmResponse != null && acmResponse.getAcmInfo() != null) {
summary.setAcm(mapper.readValue(acmResponse.getAcmInfo().getAcm(), Object.class));
}
summary.setDataType(DATA_TYPE);
summary.setApplication(NAME);
summary.setId(summary.getEntityId());
summary.setApiRef(federatorConfig.getqApiRefUrl() + summary.getEntityId());
}
Почему это будущее? –
его внешний API мы его не контролируем. Обычно нам нужно передать только одну запись, но в этом случае мы можем передать коллекцию – allthenutsandbolts