Class ForwardingCheckedFuture<V,X extends java.lang.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>
,java.util.concurrent.Future<V>
- Direct Known Subclasses:
ForwardingCheckedFuture.SimpleForwardingCheckedFuture
@Beta public abstract class ForwardingCheckedFuture<V,X extends java.lang.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 Classes Modifier and Type Class Description static class
ForwardingCheckedFuture.SimpleForwardingCheckedFuture<V,X extends java.lang.Exception>
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>
-
-
Constructor Summary
Constructors Constructor Description ForwardingCheckedFuture()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description V
checkedGet()
Exception checking version ofFuture.get()
that will translateInterruptedException
,CancellationException
andExecutionException
into application-specific exceptions.V
checkedGet(long timeout, java.util.concurrent.TimeUnit unit)
Exception checking version ofFuture.get(long, TimeUnit)
that will translateInterruptedException
,CancellationException
andExecutionException
into application-specific exceptions.-
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
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.google.common.util.concurrent.ListenableFuture
addListener
-
-
-
-
Method Detail
-
checkedGet
public V checkedGet() throws X extends java.lang.Exception
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 java.lang.Exception>
- Returns:
- the result of executing the future.
- Throws:
X
- on interruption, cancellation or execution exceptions.X extends java.lang.Exception
-
checkedGet
public V checkedGet(long timeout, java.util.concurrent.TimeUnit unit) throws java.util.concurrent.TimeoutException, X extends java.lang.Exception
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 java.lang.Exception>
- Returns:
- the result of executing the future.
- Throws:
java.util.concurrent.TimeoutException
- if retrieving the result timed out.X
- on interruption, cancellation or execution exceptions.X extends java.lang.Exception
-
-