Class FutureHelper
java.lang.Object
com.google.appengine.api.datastore.FutureHelper
Utilities for working with
Futures
in the synchronous datastore api.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic <T> T
Return the result of the providedFuture
, converting all checked exceptions to unchecked exceptions so the caller doesn't have to handle them.static <T,
E extends Exception>
TReturn the result of the providedFuture
, converting all checked exceptions except those of the provided type to unchecked exceptions so the caller doesn't have to handle them.
-
Constructor Details
-
FutureHelper
public FutureHelper()
-
-
Method Details
-
quietGet
Return the result of the providedFuture
, converting all checked exceptions to unchecked exceptions so the caller doesn't have to handle them. If anExecutionException
is thrown the cause is wrapped in aRuntimeException
. If anInterruptedException
is thrown it is wrapped in aDatastoreFailureException
.- Type Parameters:
T
- The type of the provided Future.- Parameters:
future
- The Future whose result we want to return.- Returns:
- The result of the provided Future.
-
quietGet
public static <T,E extends Exception> T quietGet(Future<T> future, Class<E> exceptionClass) throws E Return the result of the providedFuture
, converting all checked exceptions except those of the provided type to unchecked exceptions so the caller doesn't have to handle them. If anExecutionException
is thrown and the type of the cause does not equalexceptionClass
the cause is wrapped in aRuntimeException
. If the type of the cause does equalexceptionClass
the cause itself is thrown. If anInterruptedException
is thrown it is wrapped in aDatastoreFailureException
.- Type Parameters:
T
- The type of the provided Future.- Parameters:
future
- The Future whose result we want to return.exceptionClass
- Exceptions of this type will be rethrown.- Returns:
- The result of the provided Future.
- Throws:
E
- Thrown If an ExecutionException with a cause of the appropriate type is caught.
-