Package org.cometd.bayeux
Interface Promise<C>
- Type Parameters:
C- the type of the result value
- All Known Implementing Classes:
Promise.Completable
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
Nested Classes Modifier and Type Interface Description static classPromise.Completable<S>A CompletableFuture that is also a Promise. -
Field Summary
-
Method Summary
Modifier and Type Method Description default BiConsumer<C,Throwable>complete()Returns aBiConsumerthat, when invoked, completes this Promise.static <T> Promise<T>complete(BiConsumer<T,Throwable> fn)Returns a Promise that, when completed, invokes the givenBiConsumerfunction.default voidfail(Throwable failure)Callback to invoke when the operation fails.static <T> Promise<T>from(Consumer<T> succeed, Consumer<Throwable> fail)static <T> Promise<T>noop()default voidsucceed(C result)Callback to invoke when the operation succeeds.
-
Field Details
-
Method Details
-
succeed
Callback to invoke when the operation succeeds.
- Parameters:
result- the result- See Also:
fail(Throwable)
-
fail
Callback to invoke when the operation fails.
- Parameters:
failure- the operation failure
-
complete
Returns a
BiConsumerthat, 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:
Promise.Completable
-
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
BiConsumerfunction.- 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
-