public interface ChannelInterceptor
修飾子と型 | メソッドと説明 |
---|---|
void | afterReceiveCompletion(Message<?> message, MessageChannel channel, ExceptionSE ex) 発生した例外に関係なく、受信の完了後に呼び出されるため、適切なリソースのクリーンアップが可能になります。 |
void | afterSendCompletion(Message<?> message, MessageChannel channel, boolean sent, ExceptionSE ex) 発生した例外に関係なく、送信の完了後に呼び出され、適切なリソースクリーンアップが可能になります。 |
Message<?> | postReceive(Message<?> message, MessageChannel channel) Message が取得された直後、呼び出し元に返される前に呼び出されます。 |
void | postSend(Message<?> message, MessageChannel channel, boolean sent) 送信呼び出しの直後に呼び出されます。 |
boolean | preReceive(MessageChannel channel) receive が呼び出されるとすぐに、Message が実際に取得される前に呼び出されます。 |
Message<?> | preSend(Message<?> message, MessageChannel channel) メッセージが実際にチャネルに送信される前に呼び出されます。 |
@Nullable Message<?> preSend(Message<?> message, MessageChannel channel)
null
を返す場合、実際の送信呼び出しは行われません。void postSend(Message<?> message, MessageChannel channel, boolean sent)
void afterSendCompletion(Message<?> message, MessageChannel channel, boolean sent, @Nullable ExceptionSE ex)
これは、preSend(org.springframework.messaging.Message<?>, org.springframework.messaging.MessageChannel)
が正常に完了してメッセージを返した場合、つまり null
を返さなかった場合にのみ呼び出されることに注意してください。
boolean preReceive(MessageChannel channel)
@Nullable Message<?> postReceive(Message<?> message, MessageChannel channel)
null
は、その後のインターセプターの呼び出しを中止します。これは PollableChannels にのみ適用されます。void afterReceiveCompletion(@Nullable Message<?> message, MessageChannel channel, @Nullable ExceptionSE ex)
これは、preReceive(org.springframework.messaging.MessageChannel)
が正常に完了し、true
を返した場合にのみ呼び出されることに注意してください。