Class DelayedCompletableFuture<T>
java.lang.Object
java.util.concurrent.CompletableFuture<T>
net.dv8tion.jda.api.utils.concurrent.DelayedCompletableFuture<T>
- Type Parameters:
T- The result type
- All Implemented Interfaces:
Comparable<Delayed>, CompletionStage<T>, Delayed, Future<T>, ScheduledFuture<T>
Specialized
CompletableFuture used in combination with a scheduler.- Since:
- 4.0.0
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class CompletableFuture
CompletableFuture.AsynchronousCompletionTask -
Method Summary
Modifier and TypeMethodDescriptionbooleancancel(boolean mayInterruptIfRunning) intlongstatic <E> DelayedCompletableFuture<E> make(ScheduledExecutorService executor, long delay, TimeUnit unit, Function<? super DelayedCompletableFuture<E>, ? extends Runnable> mapping) Creates a new DelayedCompletableFuture scheduled on the supplied executor.Methods inherited from class CompletableFuture
acceptEither, acceptEitherAsync, acceptEitherAsync, allOf, anyOf, applyToEither, applyToEitherAsync, applyToEitherAsync, complete, completedFuture, completeExceptionally, exceptionally, get, get, getNow, getNumberOfDependents, handle, handleAsync, handleAsync, isCancelled, isCompletedExceptionally, isDone, join, obtrudeException, obtrudeValue, 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, whenCompleteAsyncMethods inherited from interface Future
get, get, isCancelled, isDone
-
Method Details
-
make
@Nonnull @CheckReturnValue public static <E> DelayedCompletableFuture<E> make(@Nonnull ScheduledExecutorService executor, long delay, @Nonnull TimeUnit unit, @Nonnull Function<? super DelayedCompletableFuture<E>, ? extends Runnable> mapping) Creates a new DelayedCompletableFuture scheduled on the supplied executor.- Type Parameters:
E- The result type of the scheduled task- Parameters:
executor- TheScheduledExecutorServiceto use for schedulingdelay- The delay of the taskunit- ConversionTimeUnitfor the delaymapping- Conversion function which callsCompletableFuture.complete(Object)of the future it receives- Returns:
- DelayedCompletableFuture for the specified runnable
-
cancel
-
getDelay
-
compareTo
- Specified by:
compareToin interfaceComparable<T>
-