Interface Callback
- All Superinterfaces:
Invocable
- All Known Subinterfaces:
Blocker.Callback
,Callback.Completing
,HttpStream
- All Known Implementing Classes:
AsyncMiddleManServlet.ProxyReader
,AsyncMiddleManServlet.ProxyResponseListener
,AsyncProxyServlet.StreamReader
,Callback.Completable
,Callback.Nested
,CompletionStreamWrapper
,ContentCopier
,ControlFlusher
,CountingCallback
,DemandingFlusher
,FragmentExtension.FragmentingDemandingFlusher
,FrameFlusher
,FutureCallback
,GzipResponseAndCallback
,HTTP2Flusher
,HTTP2Session.Entry
,HTTP2Stream
,HttpChannelState.ChannelResponse
,HttpConnection.HttpStreamOverHTTP1
,HttpDestination
,HttpStream.Wrapper
,HttpStreamOverFCGI
,HttpStreamOverHTTP2
,InstructionFlusher
,IteratingCallback
,IteratingNestedCallback
,MessageFlusher
,ProxyHandler.ProxyResponseListener
,ProxyProtocolClientConnectionFactory.ProxyProtocolConnection
,SendHandlerCallback
,SharedBlockingCallback.Blocker
A callback abstraction that handles completed/failed events of asynchronous operations.
Semantically this is equivalent to an optimise Promise<Void>, but callback is a more meaningful name than EmptyPromise
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic class
ACompletableFuture
that is also aCallback
.static interface
A Callback implementation that calls theCallback.Completing.completed()
method when it either succeeds or fails.static class
Nested Completing Callback that completes after completing the nested callbackNested classes/interfaces inherited from interface org.eclipse.jetty.util.thread.Invocable
Invocable.Callable, Invocable.InvocationType, Invocable.ReadyTask, Invocable.Task
-
Field Summary
Modifier and TypeFieldDescriptionstatic final Callback
Instance of Adapter that can be used when the callback methods need an empty implementation without incurring in the cost of allocating a new Adapter object.Fields inherited from interface org.eclipse.jetty.util.thread.Invocable
__nonBlocking
-
Method Summary
Modifier and TypeMethodDescriptionstatic Callback
default void
completeWith
(CompletableFuture<?> completable) Completes this callback with the givenCompletableFuture
.default void
Callback invoked when the operation fails.static Callback
Creates a callback that runs completed when it succeeds or failsstatic Callback
Creates a callback from the given success and failure lambdas.static Callback
Creates a nested callback that runs completed before completing the nested callback.static Callback
from
(CompletableFuture<?> completable) Creates a non-blocking callback from the given incomplete CompletableFuture.static Callback
from
(CompletableFuture<?> completable, Invocable.InvocationType invocation) Creates a callback from the given incomplete CompletableFuture, with the givenblocking
characteristic.static Callback
Creates a nested callback that runs completed after completing the nested callback.static Callback
Creates a nested callback which always fails the nested callback on completion.static Callback
Creates a nested callback that runs completed after completing the nested callback.static Callback
Creates a callback which combines two other callbacks and will succeed or fail them both.static Callback
from
(Invocable.InvocationType invocationType, Runnable completed) Creates a Callback with the giveninvocationType
, that runs the givenRunnable
when it succeeds or fails.static Callback
from
(Invocable.InvocationType invocationType, Runnable success, Consumer<Throwable> failure) Creates a callback with the given InvocationType from the given success and failure lambdas.default void
Callback invoked when the operation completes.Methods inherited from interface org.eclipse.jetty.util.thread.Invocable
getInvocationType
-
Field Details
-
NOOP
Instance of Adapter that can be used when the callback methods need an empty implementation without incurring in the cost of allocating a new Adapter object.
-
-
Method Details
-
completeWith
Completes this callback with the given
CompletableFuture
.When the CompletableFuture completes normally, this callback is succeeded; when the CompletableFuture completes exceptionally, this callback is failed.
- Parameters:
completable
- the CompletableFuture that completes this callback
-
succeeded
default void succeeded()Callback invoked when the operation completes.
- See Also:
-
failed
Callback invoked when the operation fails.
- Parameters:
x
- the reason for the operation failure
-
from
Creates a non-blocking callback from the given incomplete CompletableFuture.
When the callback completes, either succeeding or failing, the CompletableFuture is also completed, respectively via
CompletableFuture.complete(Object)
orCompletableFuture.completeExceptionally(Throwable)
.- Parameters:
completable
- the CompletableFuture to convert into a callback- Returns:
- a callback that when completed, completes the given CompletableFuture
-
from
Creates a callback from the given incomplete CompletableFuture, with the given
blocking
characteristic.- Parameters:
completable
- the CompletableFuture to convert into a callbackinvocation
- whether the callback is blocking- Returns:
- a callback that when completed, completes the given CompletableFuture
-
from
Creates a callback from the given success and failure lambdas.- Parameters:
success
- Called when the callback succeedsfailure
- Called when the callback fails- Returns:
- a new Callback
-
from
static Callback from(Invocable.InvocationType invocationType, Runnable success, Consumer<Throwable> failure) Creates a callback with the given InvocationType from the given success and failure lambdas.- Parameters:
invocationType
- the Callback invocation typesuccess
- Called when the callback succeedsfailure
- Called when the callback fails- Returns:
- a new Callback
-
from
Creates a callback that runs completed when it succeeds or fails- Parameters:
completed
- The completion to run on success or failure- Returns:
- a new callback
-
from
Creates a Callback with the given
invocationType
, that runs the givenRunnable
when it succeeds or fails.- Parameters:
invocationType
- the invocation type of the returned Callbackcompleted
- the Runnable to run when the callback either succeeds or fails- Returns:
- a new Callback with the given invocation type
-
from
Creates a nested callback that runs completed after completing the nested callback.- Parameters:
callback
- The nested callbackcompleted
- The completion to run after the nested callback is completed- Returns:
- a new callback.
-
from
Creates a nested callback that runs completed after completing the nested callback.- Parameters:
callback
- The nested callbackcompleted
- The completion to run after the nested callback is completed- Returns:
- a new callback.
-
from
Creates a nested callback that runs completed before completing the nested callback.- Parameters:
callback
- The nested callbackcompleted
- The completion to run before the nested callback is completed. Any exceptions thrown from completed will result in a callback failure.- Returns:
- a new callback.
-
from
Creates a nested callback which always fails the nested callback on completion.- Parameters:
callback
- The nested callbackcause
- The cause to fail the nested callback, if the new callback is failed the reason will be added to this cause as a suppressed exception.- Returns:
- a new callback.
-
from
Creates a callback which combines two other callbacks and will succeed or fail them both.- Parameters:
callback1
- The first callbackcallback2
- The second callback- Returns:
- a new callback.
-
combine
-