Class AbstractCheckedFuture<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.ForwardingListenableFuture.SimpleForwardingListenableFuture<V>
-
- com.google.common.util.concurrent.AbstractCheckedFuture<V,X>
-
- All Implemented Interfaces:
CheckedFuture<V,X>,ListenableFuture<V>,java.util.concurrent.Future<V>
@Beta public abstract class AbstractCheckedFuture<V,X extends java.lang.Exception> extends ForwardingListenableFuture.SimpleForwardingListenableFuture<V> implements CheckedFuture<V,X>
A delegating wrapper around aListenableFuturethat adds support for thecheckedGet()andcheckedGet(long, TimeUnit)methods.- Since:
- 1.0
-
-
Nested Class Summary
-
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>
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description VcheckedGet()Exception checking version ofFuture.get()that will translateInterruptedException,CancellationExceptionandExecutionExceptioninto application-specific exceptions.VcheckedGet(long timeout, java.util.concurrent.TimeUnit unit)Exception checking version ofFuture.get(long, TimeUnit)that will translateInterruptedException,CancellationExceptionandExecutionExceptioninto 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
Exception checking version ofFuture.get()that will translateInterruptedException,CancellationExceptionandExecutionExceptioninto application-specific exceptions.This implementation calls
ForwardingFuture.get()and maps that method's standard exceptions to instances of typeXusingmapException(java.lang.Exception).In addition, if
getthrows anInterruptedException, this implementation will set the current thread's interrupt status before callingmapException.- Specified by:
checkedGetin interfaceCheckedFuture<V,X extends java.lang.Exception>- Returns:
- the result of executing the future.
- Throws:
X- ifForwardingFuture.get()throws anInterruptedException,CancellationException, orExecutionExceptionX 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
Exception checking version ofFuture.get(long, TimeUnit)that will translateInterruptedException,CancellationExceptionandExecutionExceptioninto application-specific exceptions. On timeout this method throws a normalTimeoutException.This implementation calls
ForwardingFuture.get(long, TimeUnit)and maps that method's standard exceptions (excludingTimeoutException, which is propagated) to instances of typeXusingmapException(java.lang.Exception).In addition, if
getthrows anInterruptedException, this implementation will set the current thread's interrupt status before callingmapException.- Specified by:
checkedGetin interfaceCheckedFuture<V,X extends java.lang.Exception>- Returns:
- the result of executing the future.
- Throws:
X- ifForwardingFuture.get()throws anInterruptedException,CancellationException, orExecutionExceptionjava.util.concurrent.TimeoutException- if retrieving the result timed out.X extends java.lang.Exception
-
-