From 887a0896efcd078af6db7cec8ee47393b8f9aeaf Mon Sep 17 00:00:00 2001 From: Artem Bilan Date: Wed, 18 Dec 2019 15:18:47 -0500 Subject: [PATCH] Fix Messaging Annotations for ReplyProdMHWrapper To ensure advice-chain applicability the provided plain `MessageHandler` is wrapped into a `ReplyProducingMessageHandlerWrapper` with its particular `.wrapper` bean name. When we build a graph for integration components, we use a `componentName` from the `IntegrationObjectSupport` to represent a node for endpoint in the graph. In most cases the component name is an endpoint id around a `MessageHandler` * Populate the missed component name in a `ReplyProducingMessageHandlerWrapper` in the `AbstractMethodAnnotationPostProcessor` so nodes in the graph has a proper name for their endpoint in the application context --- .../AbstractMethodAnnotationPostProcessor.java | 16 +++++++++++----- .../integration/endpoint/BeanNameTests.java | 18 +++++++++++++----- 2 files changed, 24 insertions(+), 10 deletions(-) diff --git a/spring-integration-core/src/main/java/org/springframework/integration/config/annotation/AbstractMethodAnnotationPostProcessor.java b/spring-integration-core/src/main/java/org/springframework/integration/config/annotation/AbstractMethodAnnotationPostProcessor.java index a5b0de986f..6e13e74a62 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/config/annotation/AbstractMethodAnnotationPostProcessor.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/config/annotation/AbstractMethodAnnotationPostProcessor.java @@ -54,6 +54,7 @@ import org.springframework.integration.annotation.Poller; import org.springframework.integration.channel.DirectChannel; import org.springframework.integration.channel.MessagePublishingErrorHandler; import org.springframework.integration.config.IntegrationConfigUtils; +import org.springframework.integration.context.IntegrationObjectSupport; import org.springframework.integration.context.Orderable; import org.springframework.integration.endpoint.AbstractEndpoint; import org.springframework.integration.endpoint.AbstractPollingEndpoint; @@ -164,6 +165,11 @@ public abstract class AbstractMethodAnnotationPostProcessor