Interface Promise<C>
- Type Parameters:
C
- the type of the result value
- All Known Implementing Classes:
AbstractHttpTransport.Writer
,Promise.Completable
,Promise.Wrapper
public interface Promise<C>
The future result of an operation, either a value if the operation succeeded, or a failure if the operation failed.
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic class
A CompletableFuture that is also a Promise.static class
A wrapper forPromise
instances. -
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptiondefault BiConsumer
<C, Throwable> complete()
Returns aBiConsumer
that, when invoked, completes this Promise.static <T> Promise
<T> complete
(BiConsumer<T, Throwable> fn) Returns a Promise that, when completed, invokes the givenBiConsumer
function.default void
Callback to invoke when the operation fails.static <T> Promise
<T> static <T> Promise
<T> noop()
default void
Callback to invoke when the operation succeeds.
-
Field Details
-
NOOP
-
-
Method Details
-
succeed
Callback to invoke when the operation succeeds.
- Parameters:
result
- the result- See Also:
-
fail
Callback to invoke when the operation fails.
- Parameters:
failure
- the operation failure
-
complete
Returns a
BiConsumer
that, when invoked, completes this Promise.Typical usage is with
CompletableFuture
:public void process(ServerMessage message, Promise<Boolean> promise) { CompletableFuture.supplyAsync(() -> asyncOperation(message)) .whenComplete(promise.complete()); }
- Returns:
- a BiConsumer that completes this Promise
- See Also:
-
noop
- Type Parameters:
T
- the type of the empty result- Returns:
- a Promise whose methods are implemented empty.
-
from
- Type Parameters:
T
- the type of the result value- Parameters:
succeed
- the Consumer to call in case of successful completionfail
- the Consumer to call in case of failed completion- Returns:
- a Promise from the given consumers
-
complete
Returns a Promise that, when completed, invokes the given
BiConsumer
function.- Type Parameters:
T
- the type of the result value- Parameters:
fn
- the function to invoke when the Promise is completed- Returns:
- a Promise that invokes the BiConsumer function
-