From beb8046b122537d24a4e23498efee8cc5b464d35 Mon Sep 17 00:00:00 2001 From: aatarasoff Date: Tue, 20 Oct 2015 18:51:57 +0300 Subject: [PATCH] add lifecycle properties for making service registration optional --- .../ConsulDiscoveryClientConfiguration.java | 5 +++++ .../cloud/consul/discovery/ConsulLifecycle.java | 5 ++++- .../consul/discovery/LifecycleProperties.java | 14 ++++++++++++++ 3 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/LifecycleProperties.java diff --git a/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/ConsulDiscoveryClientConfiguration.java b/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/ConsulDiscoveryClientConfiguration.java index c215246f..c5fa03b7 100644 --- a/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/ConsulDiscoveryClientConfiguration.java +++ b/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/ConsulDiscoveryClientConfiguration.java @@ -55,6 +55,11 @@ public class ConsulDiscoveryClientConfiguration { return new HeartbeatProperties(); } + @Bean + public LifecycleProperties lifecycleProperties() { + return new LifecycleProperties(); + } + @Bean public ConsulDiscoveryProperties consulDiscoveryProperties() { return new ConsulDiscoveryProperties(); diff --git a/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/ConsulLifecycle.java b/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/ConsulLifecycle.java index 46854d28..4db8ac06 100644 --- a/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/ConsulLifecycle.java +++ b/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/ConsulLifecycle.java @@ -45,6 +45,9 @@ public class ConsulLifecycle extends AbstractDiscoveryLifecycle { @Autowired private ConsulDiscoveryProperties properties; + @Autowired + private LifecycleProperties lifecycleProperties; + @Autowired(required = false) private TtlScheduler ttlScheduler; @@ -170,7 +173,7 @@ public class ConsulLifecycle extends AbstractDiscoveryLifecycle { @Override protected boolean isEnabled() { - return properties.isEnabled(); + return lifecycleProperties.isEnabled(); } /** diff --git a/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/LifecycleProperties.java b/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/LifecycleProperties.java new file mode 100644 index 00000000..49b40964 --- /dev/null +++ b/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/LifecycleProperties.java @@ -0,0 +1,14 @@ +package org.springframework.cloud.consul.discovery; + +import lombok.Data; + +import org.springframework.boot.context.properties.ConfigurationProperties; + +/** + * @author Aleksandr Tarasov (aatarasoff) + */ +@ConfigurationProperties(prefix = "spring.cloud.consul.discovery.lifecycle") +@Data +public class LifecycleProperties { + private boolean enabled = true; +} \ No newline at end of file