Cześć,
Mam problem z CompletableFuture. Metody są uproszczone dla jasności kodu. Mam następującą operacje, która powiedzmy wyszukuje użytkowników:
CompletableFuture<List<String>> findUsers();
Teraz na podstawie tego CompletableFuture chciałbym wykonać następującą operację (dla każdego użytkownika). Ta operacja jest bardzo kosztowna czasowo. Może zwrócić tylko booleana, wyjątek jest obsłużony wewnątrz tej metody i zwracany jako "false":
CompletableFuture<Boolean> userIsActive(final String username);
I teraz mam problem. Chciałbym wykonać operację userIsActive() na wszystkich użytkownikach asynchronicznie i pierwszy CompletableFuture, który zwróciłby "true" kończył by działanie pozostałych operacji userIsActive().
Próbowałem z CompletableFuture.anyOf() ale tam albo przy exceptionally zwraca exception albo zwraca pierwszy wykonany (czyli też "false").
Podsumowując chciałbym się dowiedzieć jak najszybciej, czy któryś userIsActive() zwraca "true".