Class SettableListenableFuture<T>

java.lang.Object
org.springframework.util.concurrent.SettableListenableFuture<T>
Type Parameters:
T - the result type returned by this Future's get method
All Implemented Interfaces:
Future<T>, ListenableFuture<T>

@Deprecated(since="6.0", forRemoval=true) public class SettableListenableFuture<T> extends Object implements ListenableFuture<T>
Deprecated, for removal: This API element is subject to removal in a future version.
as of 6.0, in favor of CompletableFuture
A ListenableFuture whose value can be set via set(Object) or setException(Throwable). It may also get cancelled.

Inspired by com.google.common.util.concurrent.SettableFuture.

Since:
4.1
Author:
Mattias Severson, Rossen Stoyanchev, Juergen Hoeller
  • Constructor Summary

    Constructors
    Constructor
    Description
    Deprecated, for removal: This API element is subject to removal in a future version.
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Deprecated, for removal: This API element is subject to removal in a future version.
    Register the given ListenableFutureCallback.
    void
    addCallback(SuccessCallback<? super T> successCallback, FailureCallback failureCallback)
    Deprecated, for removal: This API element is subject to removal in a future version.
    Java 8 lambda-friendly alternative with success and failure callbacks.
    boolean
    cancel(boolean mayInterruptIfRunning)
    Deprecated, for removal: This API element is subject to removal in a future version.
     
    Deprecated, for removal: This API element is subject to removal in a future version.
    Expose this ListenableFuture as a JDK CompletableFuture.
    get()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Retrieve the value.
    get(long timeout, TimeUnit unit)
    Deprecated, for removal: This API element is subject to removal in a future version.
    Retrieve the value.
    protected void
    Deprecated, for removal: This API element is subject to removal in a future version.
    Subclasses can override this method to implement interruption of the future's computation.
    boolean
    Deprecated, for removal: This API element is subject to removal in a future version.
     
    boolean
    Deprecated, for removal: This API element is subject to removal in a future version.
     
    boolean
    set(T value)
    Deprecated, for removal: This API element is subject to removal in a future version.
    Set the value of this future.
    boolean
    Deprecated, for removal: This API element is subject to removal in a future version.
    Set the exception of this future.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • SettableListenableFuture

      public SettableListenableFuture()
      Deprecated, for removal: This API element is subject to removal in a future version.
  • Method Details

    • set

      public boolean set(@Nullable T value)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Set the value of this future. This method will return true if the value was set successfully, or false if the future has already been set or cancelled.
      Parameters:
      value - the value that will be set
      Returns:
      true if the value was successfully set, else false
    • setException

      public boolean setException(Throwable exception)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Set the exception of this future. This method will return true if the exception was set successfully, or false if the future has already been set or cancelled.
      Parameters:
      exception - the value that will be set
      Returns:
      true if the exception was successfully set, else false
    • addCallback

      public void addCallback(ListenableFutureCallback<? super T> callback)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Description copied from interface: ListenableFuture
      Register the given ListenableFutureCallback.
      Specified by:
      addCallback in interface ListenableFuture<T>
      Parameters:
      callback - the callback to register
    • addCallback

      public void addCallback(SuccessCallback<? super T> successCallback, FailureCallback failureCallback)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Description copied from interface: ListenableFuture
      Java 8 lambda-friendly alternative with success and failure callbacks.
      Specified by:
      addCallback in interface ListenableFuture<T>
      Parameters:
      successCallback - the success callback
      failureCallback - the failure callback
    • completable

      public CompletableFuture<T> completable()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Description copied from interface: ListenableFuture
      Expose this ListenableFuture as a JDK CompletableFuture.
      Specified by:
      completable in interface ListenableFuture<T>
    • cancel

      public boolean cancel(boolean mayInterruptIfRunning)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Specified by:
      cancel in interface Future<T>
    • isCancelled

      public boolean isCancelled()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Specified by:
      isCancelled in interface Future<T>
    • isDone

      public boolean isDone()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Specified by:
      isDone in interface Future<T>
    • get

      Deprecated, for removal: This API element is subject to removal in a future version.
      Retrieve the value.

      This method returns the value if it has been set via set(Object), throws an ExecutionException if an exception has been set via setException(Throwable), or throws a CancellationException if the future has been cancelled.

      Specified by:
      get in interface Future<T>
      Returns:
      the value associated with this future
      Throws:
      InterruptedException
      ExecutionException
    • get

      @Nullable public T get(long timeout, TimeUnit unit) throws InterruptedException, ExecutionException, TimeoutException
      Deprecated, for removal: This API element is subject to removal in a future version.
      Retrieve the value.

      This method returns the value if it has been set via set(Object), throws an ExecutionException if an exception has been set via setException(Throwable), or throws a CancellationException if the future has been cancelled.

      Specified by:
      get in interface Future<T>
      Parameters:
      timeout - the maximum time to wait
      unit - the unit of the timeout argument
      Returns:
      the value associated with this future
      Throws:
      InterruptedException
      ExecutionException
      TimeoutException
    • interruptTask

      protected void interruptTask()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Subclasses can override this method to implement interruption of the future's computation. The method is invoked automatically by a successful call to cancel(true).

      The default implementation is empty.