Class ListenableCompletableFuture<V>

  • All Implemented Interfaces:
    com.google.common.util.concurrent.ListenableFuture<V>, java.util.concurrent.CompletionStage<V>, java.util.concurrent.Future<V>, ListenableCompletionStage<V>

    public class ListenableCompletableFuture<V>
    extends java.util.concurrent.CompletableFuture<V>
    implements ListenableCompletionStage<V>
    A CompletableFuture that is also a ListenableFuture for migration from Guava ListenableFuture to CompletableFuture. This allows clients of bitcoinj to change the type of variables receiving Futures from bitcoinj methods. You must switch from Guava's ListenableFuture (and related types) to Java 8's CompletableFuture. Release 0.18 of bitcoinj will remove this class, and the type of returned futures from bitcoinj, will be changed to CompletableFuture.

    WARNING: This class should be considered Deprecated for Removal, as it will be removed in Release 0.18. See above for details.

    • Nested Class Summary

      • Nested classes/interfaces inherited from class java.util.concurrent.CompletableFuture

        java.util.concurrent.CompletableFuture.AsynchronousCompletionTask
    • Method Summary

      All Methods Static Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      static <T> ListenableCompletableFuture<T> completedFuture​(T value)
      Deprecated.
      Use CompletableFuture.completedFuture(Object)
      static <T> ListenableCompletableFuture<T> failedFuture​(java.lang.Throwable throwable)
      Deprecated.
      Use new CompletableFuture() + CompletableFuture.completeExceptionally() or if JDK 9+ use CompletableFuture.failedFuture()
      static <T> ListenableCompletableFuture<T> of​(java.util.concurrent.CompletableFuture<T> future)
      Deprecated.
      Don't convert to ListenableCompletableFuture, use CompletableFuture directly.
      • Methods inherited from class java.util.concurrent.CompletableFuture

        acceptEither, acceptEitherAsync, acceptEitherAsync, allOf, anyOf, applyToEither, applyToEitherAsync, applyToEitherAsync, cancel, complete, completeAsync, completeAsync, completedStage, completeExceptionally, completeOnTimeout, copy, defaultExecutor, delayedExecutor, delayedExecutor, exceptionally, failedStage, get, get, getNow, getNumberOfDependents, handle, handleAsync, handleAsync, isCancelled, isCompletedExceptionally, isDone, join, minimalCompletionStage, newIncompleteFuture, obtrudeException, obtrudeValue, orTimeout, runAfterBoth, runAfterBothAsync, runAfterBothAsync, runAfterEither, runAfterEitherAsync, runAfterEitherAsync, runAsync, runAsync, supplyAsync, supplyAsync, thenAccept, thenAcceptAsync, thenAcceptAsync, thenAcceptBoth, thenAcceptBothAsync, thenAcceptBothAsync, thenApply, thenApplyAsync, thenApplyAsync, thenCombine, thenCombineAsync, thenCombineAsync, thenCompose, thenComposeAsync, thenComposeAsync, thenRun, thenRunAsync, thenRunAsync, toCompletableFuture, toString, whenComplete, whenCompleteAsync, whenCompleteAsync
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface java.util.concurrent.CompletionStage

        acceptEither, acceptEitherAsync, acceptEitherAsync, applyToEither, applyToEitherAsync, applyToEitherAsync, exceptionally, handle, handleAsync, handleAsync, runAfterBoth, runAfterBothAsync, runAfterBothAsync, runAfterEither, runAfterEitherAsync, runAfterEitherAsync, thenAccept, thenAcceptAsync, thenAcceptAsync, thenAcceptBoth, thenAcceptBothAsync, thenAcceptBothAsync, thenApply, thenApplyAsync, thenApplyAsync, thenCombine, thenCombineAsync, thenCombineAsync, thenCompose, thenComposeAsync, thenComposeAsync, thenRun, thenRunAsync, thenRunAsync, toCompletableFuture, whenComplete, whenCompleteAsync, whenCompleteAsync
      • Methods inherited from interface java.util.concurrent.Future

        cancel, get, get, isCancelled, isDone
    • Constructor Detail

      • ListenableCompletableFuture

        public ListenableCompletableFuture()
    • Method Detail

      • completedFuture

        @Deprecated
        public static <T> ListenableCompletableFuture<T> completedFuture​(T value)
        Deprecated.
        Use CompletableFuture.completedFuture(Object)
        Returns a new CompletableFuture that is already completed with the given value.
        Type Parameters:
        T - the type of the value
        Parameters:
        value - the value
        Returns:
        the completed CompletableFuture
      • failedFuture

        @Deprecated
        public static <T> ListenableCompletableFuture<T> failedFuture​(java.lang.Throwable throwable)
        Deprecated.
        Use new CompletableFuture() + CompletableFuture.completeExceptionally() or if JDK 9+ use CompletableFuture.failedFuture()
        Returns a new ListenableCompletableFuture that is already completed exceptionally with the given throwable.
        Type Parameters:
        T - the type of the expected value
        Parameters:
        throwable - the exceptions
        Returns:
        the completed CompletableFuture
      • of

        @Deprecated
        public static <T> ListenableCompletableFuture<T> of​(java.util.concurrent.CompletableFuture<T> future)
        Deprecated.
        Don't convert to ListenableCompletableFuture, use CompletableFuture directly.
        Converts a generic CompletableFuture to a ListenableCompletableFuture. If the passed in future is already a ListenableCompletableFuture no conversion is performed.
        Type Parameters:
        T - the type of the futures return value
        Parameters:
        future - A CompletableFuture that may need to be converted
        Returns:
        A ListenableCompletableFuture