From e176e55948621be1c49fafd3843de43e8311b7dd Mon Sep 17 00:00:00 2001 From: Spencer Gibb Date: Wed, 19 Oct 2016 14:51:29 -0600 Subject: [PATCH] Add ability to disable actuator features. Both endpoint and health indicator using annotations from boot. fixes gh-234 --- .../cloud/consul/ConsulAutoConfiguration.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/spring-cloud-consul-core/src/main/java/org/springframework/cloud/consul/ConsulAutoConfiguration.java b/spring-cloud-consul-core/src/main/java/org/springframework/cloud/consul/ConsulAutoConfiguration.java index 334f1d7e..d8d178a2 100644 --- a/spring-cloud-consul-core/src/main/java/org/springframework/cloud/consul/ConsulAutoConfiguration.java +++ b/spring-cloud-consul-core/src/main/java/org/springframework/cloud/consul/ConsulAutoConfiguration.java @@ -16,13 +16,11 @@ package org.springframework.cloud.consul; -import com.ecwid.consul.v1.ConsulClient; - import org.aspectj.lang.annotation.Aspect; -import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.actuate.autoconfigure.ConditionalOnEnabledHealthIndicator; +import org.springframework.boot.actuate.condition.ConditionalOnEnabledEndpoint; import org.springframework.boot.actuate.endpoint.Endpoint; import org.springframework.boot.autoconfigure.aop.AopAutoConfiguration; -import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.context.properties.EnableConfigurationProperties; @@ -34,6 +32,8 @@ import org.springframework.retry.annotation.Retryable; import org.springframework.retry.interceptor.RetryInterceptorBuilder; import org.springframework.retry.interceptor.RetryOperationsInterceptor; +import com.ecwid.consul.v1.ConsulClient; + /** * @author Spencer Gibb */ @@ -60,12 +60,14 @@ public class ConsulAutoConfiguration { @Bean @ConditionalOnMissingBean + @ConditionalOnEnabledEndpoint("consul") public ConsulEndpoint consulEndpoint(ConsulClient consulClient) { return new ConsulEndpoint(consulClient); } @Bean @ConditionalOnMissingBean + @ConditionalOnEnabledHealthIndicator("consul") public ConsulHealthIndicator consulHealthIndicator(ConsulClient consulClient) { return new ConsulHealthIndicator(consulClient); }