Class ForwardingCheckedFuture<V,X extends Exception>
java.lang.Object
com.google.common.collect.ForwardingObject
com.google.common.util.concurrent.ForwardingFuture<V>
com.google.common.util.concurrent.ForwardingListenableFuture<V>
com.google.common.util.concurrent.ForwardingCheckedFuture<V,X>
- Type Parameters:
V
- The result type returned by this Future'sget
methodX
- The type of the Exception thrown by the Future'scheckedGet
method
- All Implemented Interfaces:
CheckedFuture<V,
,X> ListenableFuture<V>
,Future<V>
- Direct Known Subclasses:
ForwardingCheckedFuture.SimpleForwardingCheckedFuture
@Beta
@GwtIncompatible
public abstract class ForwardingCheckedFuture<V,X extends Exception>
extends ForwardingListenableFuture<V>
implements CheckedFuture<V,X>
A future which forwards all its method calls to another future. Subclasses should override one or
more methods to modify the behavior of the backing future as desired per the decorator pattern.
Most subclasses can simply extend ForwardingCheckedFuture.SimpleForwardingCheckedFuture
.
- Since:
- 9.0
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
A simplified version ofForwardingCheckedFuture
where subclasses can pass in an already constructedCheckedFuture
as the delegate.Nested classes/interfaces inherited from class com.google.common.util.concurrent.ForwardingListenableFuture
ForwardingListenableFuture.SimpleForwardingListenableFuture<V>
Nested classes/interfaces inherited from class com.google.common.util.concurrent.ForwardingFuture
ForwardingFuture.SimpleForwardingFuture<V>
Nested classes/interfaces inherited from interface java.util.concurrent.Future
Future.State
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionException checking version ofFuture.get()
that will translateInterruptedException
,CancellationException
andExecutionException
into application-specific exceptions.checkedGet
(long timeout, TimeUnit unit) Exception checking version ofFuture.get(long, TimeUnit)
that will translateInterruptedException
,CancellationException
andExecutionException
into application-specific exceptions.protected abstract CheckedFuture
<V, X> delegate()
Returns the backing delegate instance that methods are forwarded to.Methods inherited from class com.google.common.util.concurrent.ForwardingListenableFuture
addListener
Methods inherited from class com.google.common.util.concurrent.ForwardingFuture
cancel, get, get, isCancelled, isDone
Methods inherited from class com.google.common.collect.ForwardingObject
toString
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.util.concurrent.Future
cancel, exceptionNow, get, get, isCancelled, isDone, resultNow, state
Methods inherited from interface com.google.common.util.concurrent.ListenableFuture
addListener
-
Constructor Details
-
ForwardingCheckedFuture
public ForwardingCheckedFuture()
-
-
Method Details
-
checkedGet
Description copied from interface:CheckedFuture
Exception checking version ofFuture.get()
that will translateInterruptedException
,CancellationException
andExecutionException
into application-specific exceptions.- Specified by:
checkedGet
in interfaceCheckedFuture<V,
X extends Exception> - Returns:
- the result of executing the future.
- Throws:
X
-
checkedGet
Description copied from interface:CheckedFuture
Exception checking version ofFuture.get(long, TimeUnit)
that will translateInterruptedException
,CancellationException
andExecutionException
into application-specific exceptions. On timeout this method throws a normalTimeoutException
.- Specified by:
checkedGet
in interfaceCheckedFuture<V,
X extends Exception> - Returns:
- the result of executing the future.
- Throws:
TimeoutException
- if retrieving the result timed out.X
-
delegate
Description copied from class:ForwardingObject
Returns the backing delegate instance that methods are forwarded to. Abstract subclasses generally override this method with an abstract method that has a more specific return type, such asForwardingSet.delegate()
. Concrete subclasses override this method to supply the instance being decorated.- Specified by:
delegate
in classForwardingListenableFuture<V>
-