Я использую Spring, и мой метод контроллера возвращает объект, например:
Class WrapperObject{
public TypeA typeA;
public TypeB typeB;
public TypeC typeC;
public TypeD typeD;
public TypeE typeE;
public List<String> errors;
}
У меня есть классы обслуживания, которые возвращают
@Async
CompletableFuture<TypeA> getTypeA() throws ExceptionA{
// Webservice call :: 4-5 seconds
}
@Async
CompletableFuture<TypeB> getTypeB() throws ExceptionB{
// Webservice call :: 2-3 seconds
}
@Async
CompletableFuture<TypeC> getTypeC() throws ExceptionC{
// Webservice call :: 4-5 seconds
}
@Async
CompletableFuture<TypeD> getTypeD() throws ExceptionD{
// Webservice call :: 1-2 seconds
}
@Async
CompletableFuture<TypeE> getTypeE() throws ExceptionE{
// Webservice call :: 7-8 seconds
}
Я хочу вызвать все вышеперечисленные методы параллельно и установите результат каждого метода в объекте Wrapper, как только они вернутся, и если для какой-либо службы возникнет исключение, добавьте сообщение об исключении в список ошибок и продолжите с другими Futueres. для обработки исключений. Пожалуйста помоги. Меня смущает, .thenAccept (), .get (), .handle (result, exp)