public interface Future<T> extends AsyncResult<T>
Modifier and Type | Method and Description |
---|---|
Throwable |
cause()
A Throwable describing failure.
|
default <U> Future<U> |
compose(java.util.function.Function<T,Future<U>> mapper)
Compose this future with a
mapper function. |
<U> Future<U> |
compose(java.util.function.Function<T,Future<U>> successMapper,
java.util.function.Function<Throwable,Future<U>> failureMapper)
Compose this future with a
successMapper and failureMapper functions. |
<U> Future<T> |
eventually(java.util.function.Function<Void,Future<U>> mapper)
Compose this future with a
mapper that will be always be called. |
boolean |
failed()
Did it fail?
|
static <T> Future<T> |
failedFuture(String failureMessage)
Create a failed future with the specified failure message.
|
static <T> Future<T> |
failedFuture(Throwable t)
Create a failed future with the specified failure cause.
|
default <U> Future<U> |
flatMap(java.util.function.Function<T,Future<U>> mapper)
Alias for
compose(Function) . |
static <T> Future<T> |
fromCompletionStage(CompletionStage<T> completionStage)
Bridges a
CompletionStage object to a Vert.x future instance. |
static <T> Future<T> |
fromCompletionStage(CompletionStage<T> completionStage,
Context context)
Bridges a
CompletionStage object to a Vert.x future instance. |
static <T> Future<T> |
future(Handler<Promise<T>> handler)
Create a future that hasn't completed yet and that is passed to the
handler before it is returned. |
boolean |
isComplete()
Has the future completed?
|
<U> Future<U> |
map(java.util.function.Function<T,U> mapper)
Apply a
mapper function on this future. |
<V> Future<V> |
map(V value)
Map the result of a future to a specific
value . |
default <V> Future<V> |
mapEmpty()
Map the result of a future to
null . |
Future<T> |
onComplete(Handler<AsyncResult<T>> handler)
Add a handler to be notified of the result.
|
default Future<T> |
onFailure(Handler<Throwable> handler)
Add a handler to be notified of the failed result.
|
default Future<T> |
onSuccess(Handler<T> handler)
Add a handler to be notified of the succeeded result.
|
Future<T> |
otherwise(java.util.function.Function<Throwable,T> mapper)
Apply a
mapper function on this future. |
Future<T> |
otherwise(T value)
Map the failure of a future to a specific
value . |
default Future<T> |
otherwiseEmpty()
Map the failure of a future to
null . |
default Future<T> |
recover(java.util.function.Function<Throwable,Future<T>> mapper)
Handles a failure of this Future by returning the result of another Future.
|
T |
result()
The result of the operation.
|
boolean |
succeeded()
Did it succeed?
|
static <T> Future<T> |
succeededFuture()
Create a succeeded future with a null result
|
static <T> Future<T> |
succeededFuture(T result)
Created a succeeded future with the specified result.
|
default CompletionStage<T> |
toCompletionStage()
Bridges this Vert.x future to a
CompletionStage instance. |
<U> Future<U> |
transform(java.util.function.Function<AsyncResult<T>,Future<U>> mapper)
Transform this future with a
mapper functions. |
static <T> Future<T> future(Handler<Promise<T>> handler)
handler
before it is returned.T
- the result typehandler
- the handlerstatic <T> Future<T> succeededFuture()
T
- the result typestatic <T> Future<T> succeededFuture(T result)
T
- the result typeresult
- the resultstatic <T> Future<T> failedFuture(Throwable t)
T
- the result typet
- the failure cause as a Throwablestatic <T> Future<T> failedFuture(String failureMessage)
T
- the result typefailureMessage
- the failure messageboolean isComplete()
It's completed if it's either succeeded or failed.
Future<T> onComplete(Handler<AsyncResult<T>> handler)
handler
- the handler that will be called with the resultdefault Future<T> onSuccess(Handler<T> handler)
handler
- the handler that will be called with the succeeded resultdefault Future<T> onFailure(Handler<Throwable> handler)
handler
- the handler that will be called with the failed resultT result()
result
in interface AsyncResult<T>
Throwable cause()
cause
in interface AsyncResult<T>
boolean succeeded()
succeeded
in interface AsyncResult<T>
boolean failed()
failed
in interface AsyncResult<T>
default <U> Future<U> flatMap(java.util.function.Function<T,Future<U>> mapper)
compose(Function)
.default <U> Future<U> compose(java.util.function.Function<T,Future<U>> mapper)
mapper
function.
When this future (the one on which compose
is called) succeeds, the mapper
will be called with
the completed value and this mapper returns another future object. This returned future completion will complete
the future returned by this method call.
If the mapper
throws an exception, the returned future will be failed with this exception.
When this future fails, the failure will be propagated to the returned future and the mapper
will not be called.
mapper
- the mapper functiondefault Future<T> recover(java.util.function.Function<Throwable,Future<T>> mapper)
mapper
- A function which takes the exception of a failure and returns a new future.<U> Future<U> compose(java.util.function.Function<T,Future<U>> successMapper, java.util.function.Function<Throwable,Future<U>> failureMapper)
successMapper
and failureMapper
functions.
When this future (the one on which compose
is called) succeeds, the successMapper
will be called with
the completed value and this mapper returns another future object. This returned future completion will complete
the future returned by this method call.
When this future (the one on which compose
is called) fails, the failureMapper
will be called with
the failure and this mapper returns another future object. This returned future completion will complete
the future returned by this method call.
If any mapper function throws an exception, the returned future will be failed with this exception.
successMapper
- the function mapping the successfailureMapper
- the function mapping the failure<U> Future<U> transform(java.util.function.Function<AsyncResult<T>,Future<U>> mapper)
mapper
functions.
When this future (the one on which transform
is called) completes, the mapper
will be called with
the async result and this mapper returns another future object. This returned future completion will complete
the future returned by this method call.
If any mapper function throws an exception, the returned future will be failed with this exception.
mapper
- the function mapping the future<U> Future<T> eventually(java.util.function.Function<Void,Future<U>> mapper)
mapper
that will be always be called.
When this future (the one on which eventually
is called) completes, the mapper
will be called
and this mapper returns another future object. This returned future completion will complete the future returned
by this method call with the original result of the future.
The outcome of the future returned by the mapper
will not influence the nature
of the returned future.
mapper
- the function returning the future.<U> Future<U> map(java.util.function.Function<T,U> mapper)
mapper
function on this future.
When this future succeeds, the mapper
will be called with the completed value and this mapper
returns a value. This value will complete the future returned by this method call.
If the mapper
throws an exception, the returned future will be failed with this exception.
When this future fails, the failure will be propagated to the returned future and the mapper
will not be called.
map
in interface AsyncResult<T>
mapper
- the mapper function<V> Future<V> map(V value)
value
.
When this future succeeds, this value
will complete the future returned by this method call.
When this future fails, the failure will be propagated to the returned future.
map
in interface AsyncResult<T>
value
- the value that eventually completes the mapped futuredefault <V> Future<V> mapEmpty()
null
.
This is a conveniency for future.map((T) null)
or future.map((Void) null)
.
When this future succeeds, null
will complete the future returned by this method call.
When this future fails, the failure will be propagated to the returned future.
mapEmpty
in interface AsyncResult<T>
Future<T> otherwise(java.util.function.Function<Throwable,T> mapper)
mapper
function on this future.
When this future fails, the mapper
will be called with the completed value and this mapper
returns a value. This value will complete the future returned by this method call.
If the mapper
throws an exception, the returned future will be failed with this exception.
When this future succeeds, the result will be propagated to the returned future and the mapper
will not be called.
otherwise
in interface AsyncResult<T>
mapper
- the mapper functionFuture<T> otherwise(T value)
value
.
When this future fails, this value
will complete the future returned by this method call.
When this future succeeds, the result will be propagated to the returned future.
otherwise
in interface AsyncResult<T>
value
- the value that eventually completes the mapped futuredefault Future<T> otherwiseEmpty()
null
.
This is a convenience for future.otherwise((T) null)
.
When this future fails, the null
value will complete the future returned by this method call.
When this future succeeds, the result will be propagated to the returned future.
otherwiseEmpty
in interface AsyncResult<T>
default CompletionStage<T> toCompletionStage()
CompletionStage
instance.
The CompletionStage
handling methods will be called from the thread that resolves this future.
CompletionStage
that completes when this future resolvesstatic <T> Future<T> fromCompletionStage(CompletionStage<T> completionStage)
CompletionStage
object to a Vert.x future instance.
The Vert.x future handling methods will be called from the thread that completes completionStage
.
T
- the result typecompletionStage
- a completion stagecompletionStage
resolvesstatic <T> Future<T> fromCompletionStage(CompletionStage<T> completionStage, Context context)
CompletionStage
object to a Vert.x future instance.
The Vert.x future handling methods will be called on the provided context
.
T
- the result typecompletionStage
- a completion stagecontext
- a Vert.x context to dispatch tocompletionStage
resolvesCopyright © 2022 Eclipse. All rights reserved.