Является ли целесообразным объединение в цепочку нескольких вызовов CompletableFuture, каждый со своей собственной логикой исключений?
В моем проекте есть поток, который асинхронно загружает ресурс, затем выполняет над ним операцию и использует опрос заданий, чтобы получить новый ресурс со всеми выполненными операциями. Я написал каждую из этих вещей в завершаемом будущем, создав цепочку из 4 будущих объектов. Каждый вызов имеет свою собственную логику анализа и исключения, которую я также добавил в цепочку. Это создает что-то вроде
CompletableFuture.supplyAsync(() -> mysupplier1).exceptionally(exceptionlogic).thenApplyAsync(() -> mysupplier2).exceptionally(exceptionlogic).thenApplyAsync(() ->mysupplier3).exceptionally(exceptionlogic)
Я хотел бы знать, является ли этот способ использования CompletableFuture хорошей практикой в целом. Это не особенно трудно читать, но я чувствую, что это может быть трудно отладить.