Interface CheckedFuture<V,X extends Exception>

All Superinterfaces:
Future<V>, ListenableFuture<V>
All Known Implementing Classes:
AbstractCheckedFuture, ForwardingCheckedFuture, ForwardingCheckedFuture.SimpleForwardingCheckedFuture

@Beta @Deprecated(since="2022-12-01") public interface CheckedFuture<V,X extends Exception> extends ListenableFuture<V>
Deprecated.
The Google Guava Core Libraries are deprecated and will not be part of the AEM SDK after April 2023
A CheckedFuture is a ListenableFuture that includes versions of the get methods that can throw a checked exception. This makes it easier to create a future that executes logic which can throw an exception.

A common implementation is Futures.immediateCheckedFuture(V).

Implementations of this interface must adapt the exceptions thrown by Future#get(): CancellationException, ExecutionException and InterruptedException into the type specified by the X type parameter.

This interface also extends the ListenableFuture interface to allow listeners to be added. This allows the future to be used as a normal Future or as an asynchronous callback mechanism as needed. This allows multiple callbacks to be registered for a particular task, and the future will guarantee execution of all listeners when the task completes.

For a simpler alternative to CheckedFuture, consider accessing Future values with Futures.get().

Since:
1.0