public interface ExecutorChannelInterceptor extends ChannelInterceptor
ChannelInterceptor
with callbacks to intercept the
asynchronous sending of a Message
to
a specific subscriber through an Executor
.
Supported on MessageChannel
implementations that can be configured with an Executor
.Message
,
MessageChannel
,
MessageHandler
Modifier and Type | Method and Description |
---|---|
default void |
afterMessageHandled(Message<?> message,
MessageChannel channel,
MessageHandler handler,
java.lang.Exception ex)
Invoked inside the
Runnable submitted to the Executor after calling
the target MessageHandler regardless of the outcome (i.e. |
default Message<?> |
beforeHandle(Message<?> message,
MessageChannel channel,
MessageHandler handler)
Invoked inside the
Runnable submitted to the Executor just before
calling the target MessageHandler to handle the message. |
afterReceiveCompletion, afterSendCompletion, postReceive, postSend, preReceive, preSend
@Nullable default Message<?> beforeHandle(Message<?> message, MessageChannel channel, MessageHandler handler)
Runnable
submitted to the Executor just before
calling the target MessageHandler to handle the message. Allows for
modification of the Message if necessary or when null
is returned
the MessageHandler is not invoked.message
- the message to be handledchannel
- the channel on which the message was sent tohandler
- the target handler to handle the messagenull
default void afterMessageHandled(Message<?> message, MessageChannel channel, MessageHandler handler, @Nullable java.lang.Exception ex)
Runnable
submitted to the Executor after calling
the target MessageHandler regardless of the outcome (i.e. Exception raised
or not) thus allowing for proper resource cleanup.
Note that this will be invoked only if beforeHandle successfully completed
and returned a Message, i.e. it did not return null
.
message
- the message handledchannel
- the channel on which the message was sent tohandler
- the target handler that handled the messageex
- any exception that may been raised by the handler