diff --git a/spring-cloud-stream-binder-rabbit/src/main/java/org/springframework/cloud/stream/binder/rabbit/config/RabbitServiceAutoConfiguration.java b/spring-cloud-stream-binder-rabbit/src/main/java/org/springframework/cloud/stream/binder/rabbit/config/RabbitServiceAutoConfiguration.java index 34a8ece22..603db7608 100644 --- a/spring-cloud-stream-binder-rabbit/src/main/java/org/springframework/cloud/stream/binder/rabbit/config/RabbitServiceAutoConfiguration.java +++ b/spring-cloud-stream-binder-rabbit/src/main/java/org/springframework/cloud/stream/binder/rabbit/config/RabbitServiceAutoConfiguration.java @@ -44,17 +44,13 @@ import org.springframework.context.annotation.Profile; * @author David Turanski * @author Eric Bottard * @author Marius Bogoevici + * @author Ilayaperumal Gopinathan */ @Configuration @ConditionalOnMissingBean(Binder.class) -@Import(RabbitMessageChannelBinderConfiguration.class) +@Import({RabbitMessageChannelBinderConfiguration.class, RabbitServiceAutoConfiguration.RabbitHealthIndicatorConfiguration.class}) public class RabbitServiceAutoConfiguration { - @Bean - public HealthIndicator binderHealthIndicator(RabbitTemplate rabbitTemplate) { - return new RabbitHealthIndicator(rabbitTemplate); - } - /** * Configuration to be used when the cloud profile is set. */ @@ -134,4 +130,14 @@ public class RabbitServiceAutoConfiguration { @Import(RabbitAutoConfiguration.class) protected static class NoCloudProfile { } + + @Configuration + @ConditionalOnClass(name = "org.springframework.boot.actuate.health.HealthIndicator") + public static class RabbitHealthIndicatorConfiguration { + + @Bean + public HealthIndicator binderHealthIndicator(RabbitTemplate rabbitTemplate) { + return new RabbitHealthIndicator(rabbitTemplate); + } + } }