FutureHelper (Google App Engine API for Java)

com.google.appengine.api.datastore

Class FutureHelper

  • java.lang.Object
    • com.google.appengine.api.datastore.FutureHelper


  • public final class FutureHelper
    extends java.lang.Object
    Utilities for working with Futures in the synchronous datastore api.
    • Constructor Summary

      Constructors 
      Constructor and Description
      FutureHelper() 
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method and Description
      static <T> T quietGet(java.util.concurrent.Future<T> future)
      Return the result of the provided Future, converting all checked exceptions to unchecked exceptions so the caller doesn't have to handle them.
      static <T,E extends java.lang.Exception>
      T
      quietGet(java.util.concurrent.Future<T> future, java.lang.Class<E> exceptionClass)
      Return the result of the provided Future, converting all checked exceptions except those of the provided type to unchecked exceptions so the caller doesn't have to handle them.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • FutureHelper

        public FutureHelper()
    • Method Detail

      • quietGet

        public static <T> T quietGet(java.util.concurrent.Future<T> future)
        Return the result of the provided Future, converting all checked exceptions to unchecked exceptions so the caller doesn't have to handle them. If an ExecutionException is thrown the cause is wrapped in a RuntimeException. If an InterruptedException is thrown it is wrapped in a DatastoreFailureException.
        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 java.lang.Exception> T quietGet(java.util.concurrent.Future<T> future,
                                                                   java.lang.Class<E> exceptionClass)
                                                            throws E extends java.lang.Exception
        Return the result of the provided Future, converting all checked exceptions except those of the provided type to unchecked exceptions so the caller doesn't have to handle them. If an ExecutionException is thrown and the type of the cause does not equal exceptionClass the cause is wrapped in a RuntimeException. If the type of the cause does equal exceptionClass the cause itself is thrown. If an InterruptedException is thrown it is wrapped in a DatastoreFailureException.
        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.
        E extends java.lang.Exception