MessageChannelSpec.wireTap()
Spring Integration 提供了 .wireTap()
流式 API MessageChannelSpec
構建器。以下示例展示瞭如何使用 wireTap
方法記錄輸入。
@Bean
public QueueChannelSpec myChannel() {
return MessageChannels.queue()
.wireTap("loggingFlow.input");
}
@Bean
public IntegrationFlow loggingFlow() {
return f -> f.log();
}
如果
|
噹噹前的 MessageChannel
沒有實現 InterceptableChannel
時,會在 IntegrationFlow
的當前位置注入一個隱式的 DirectChannel
和 BridgeHandler
,並將 WireTap
新增到這個新的 DirectChannel
中。以下示例沒有任何通道宣告。
.handle(...)
.log()
}
在前面的示例(以及任何沒有宣告通道的情況下),一個隱式的 DirectChannel
會被注入到 IntegrationFlow
的當前位置,並用作當前配置的 ServiceActivatingHandler
(來自 .handle()
方法,前面已描述)的輸出通道。