GH-2749: Deprecate ChannelInterceptorAware (#2751)
* GH-2749: Deprecate ChannelInterceptorAware Fixes https://github.com/spring-projects/spring-integration/issues/2749 The `org.springframework.messaging.support.InterceptableChannel` provides exact functionality as `ChannelInterceptorAware` * Make `ChannelInterceptorAware extends InterceptableChannel` * Suppress deprecation warning whenever we need to keep backward compatibility * Fix all other places to deal with `InterceptableChannel` already * GH-2749: Deprecate ChannelInterceptorAware Fixes https://github.com/spring-projects/spring-integration/issues/2749 The `org.springframework.messaging.support.InterceptableChannel` provides exact functionality as `ChannelInterceptorAware` * Make `ChannelInterceptorAware extends InterceptableChannel` * Suppress deprecation warning whenever we need to keep backward compatibility * Fix all other places to deal with `InterceptableChannel` already * * Fix `channel.adoc` for the current version
This commit is contained in:
committed by
Gary Russell
parent
d6ac866871
commit
82ecd5a75d
@@ -304,6 +304,7 @@ Also, starting with version 5.1, `ChannelInterceptor.postReceive()` is no longer
|
||||
Previously, the method was called.
|
||||
If you have an interceptor that relies on the previous behavior, implement `afterReceiveCompleted()` instead, since that method is invoked, regardless of whether a message is received or not.
|
||||
|
||||
NOTE: Starting with version 5.2, the `ChannelInterceptorAware` is deprecated in favor of `InterceptableChannel` from the Spring Messaging module, which it extends now for backward compatibility.
|
||||
|
||||
[[channel-template]]
|
||||
==== `MessagingTemplate`
|
||||
|
||||
@@ -620,9 +620,9 @@ public IntegrationFlow loggingFlow() {
|
||||
|
||||
[IMPORTANT]
|
||||
====
|
||||
If the `MessageChannel` is an instance of `ChannelInterceptorAware`, the `log()` or `wireTap()` operators are applied to the current `MessageChannel`.
|
||||
If the `MessageChannel` is an instance of `InterceptableChannel`, the `log()` or `wireTap()` operators are applied to the current `MessageChannel`.
|
||||
Otherwise, an intermediate `DirectChannel` is injected into the flow for the currently configured endpoint.
|
||||
In the following example, the `WireTap` interceptor is added to `myChannel` directly, because `DirectChannel` implements `ChannelInterceptorAware`:
|
||||
In the following example, the `WireTap` interceptor is added to `myChannel` directly, because `DirectChannel` implements `InterceptableChannel`:
|
||||
|
||||
[source,java]
|
||||
----
|
||||
@@ -638,7 +638,7 @@ MessageChannel myChannel() {
|
||||
----
|
||||
====
|
||||
|
||||
When the current `MessageChannel` does not implement `ChannelInterceptorAware`, an implicit `DirectChannel` and `BridgeHandler` are injected into the `IntegrationFlow`, and the `WireTap` is added to this new `DirectChannel`.
|
||||
When the current `MessageChannel` does not implement `InterceptableChannel`, an implicit `DirectChannel` and `BridgeHandler` are injected into the `IntegrationFlow`, and the `WireTap` is added to this new `DirectChannel`.
|
||||
The following example does not have any channel declaration:
|
||||
|
||||
====
|
||||
|
||||
Reference in New Issue
Block a user