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 c5fa03b7..983dc11d 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 @@ -16,16 +16,15 @@ package org.springframework.cloud.consul.discovery; +import com.ecwid.consul.v1.ConsulClient; + import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.cloud.consul.ConditionalOnConsulEnabled; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import com.ecwid.consul.v1.ConsulClient; - /** * @author Spencer Gibb */ @@ -33,7 +32,6 @@ import com.ecwid.consul.v1.ConsulClient; @ConditionalOnConsulEnabled @ConditionalOnProperty(value = "spring.cloud.consul.discovery.enabled", matchIfMissing = true) @EnableConfigurationProperties -@ConditionalOnBean(ConsulClient.class) public class ConsulDiscoveryClientConfiguration { @Autowired @@ -41,7 +39,7 @@ public class ConsulDiscoveryClientConfiguration { @Bean public ConsulLifecycle consulLifecycle() { - return new ConsulLifecycle(); + return new ConsulLifecycle(consulClient, lifecycleProperties(), consulDiscoveryProperties(), heartbeatProperties()); } @Bean 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 1ecb0103..b20e2da5 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 @@ -39,26 +39,29 @@ public class ConsulLifecycle extends AbstractDiscoveryLifecycle { public static final char SEPARATOR = '-'; - @Autowired private ConsulClient client; - @Autowired private ConsulDiscoveryProperties properties; - @Autowired private LifecycleProperties lifecycleProperties; + private HeartbeatProperties ttlConfig; + @Autowired(required = false) private TtlScheduler ttlScheduler; - @Autowired - private HeartbeatProperties ttlConfig; - @Autowired(required = false) private ServletContext servletContext; private NewService service = new NewService(); + public ConsulLifecycle(ConsulClient client, LifecycleProperties lifecycleProperties, ConsulDiscoveryProperties properties, HeartbeatProperties ttlConfig) { + this.client = client; + this.lifecycleProperties = lifecycleProperties; + this.properties = properties; + this.ttlConfig = ttlConfig; + } + @Override protected int getConfiguredPort() { return service.getPort() == null? 0 : service.getPort(); diff --git a/src/main/bash/local_run_consul.sh b/src/main/bash/local_run_consul.sh index 876422f3..6e25a583 100755 --- a/src/main/bash/local_run_consul.sh +++ b/src/main/bash/local_run_consul.sh @@ -1,2 +1,3 @@ #!/bin/bash -consul agent -server -bootstrap-expect 1 -data-dir /tmp/consul -ui-dir `dirname $0`/../../../src/test/resources/consul_ui +mkdir /tmp/consul-config +consul agent -server -bootstrap-expect 1 -data-dir /tmp/consul -config-dir=/tmp/consul-config -ui-dir `dirname $0`/../../../src/test/resources/consul_ui