Browse Source

Fix removal of getLocalServiceInstance()

pull/6/head
Spencer Gibb 7 years ago
parent
commit
5a1708185a
No known key found for this signature in database
GPG Key ID: 7788A47380690861
  1. 5
      spring-cloud-netflix-hystrix-stream/src/main/java/org/springframework/cloud/netflix/hystrix/stream/HystrixStreamAutoConfiguration.java
  2. 7
      spring-cloud-netflix-hystrix-stream/src/test/java/org/springframework/cloud/netflix/hystrix/stream/HystrixStreamAutoConfigurationNoRegistrationTests.java

5
spring-cloud-netflix-hystrix-stream/src/main/java/org/springframework/cloud/netflix/hystrix/stream/HystrixStreamAutoConfiguration.java

@ -26,6 +26,7 @@ import org.springframework.cloud.client.ServiceInstance;
import org.springframework.cloud.client.actuator.HasFeatures; import org.springframework.cloud.client.actuator.HasFeatures;
import org.springframework.cloud.client.discovery.DiscoveryClient; import org.springframework.cloud.client.discovery.DiscoveryClient;
import org.springframework.cloud.client.discovery.simple.SimpleDiscoveryClient; import org.springframework.cloud.client.discovery.simple.SimpleDiscoveryClient;
import org.springframework.cloud.client.discovery.simple.SimpleDiscoveryProperties;
import org.springframework.cloud.client.serviceregistry.Registration; import org.springframework.cloud.client.serviceregistry.Registration;
import org.springframework.cloud.stream.annotation.EnableBinding; import org.springframework.cloud.stream.annotation.EnableBinding;
import org.springframework.cloud.stream.annotation.Output; import org.springframework.cloud.stream.annotation.Output;
@ -100,10 +101,10 @@ public class HystrixStreamAutoConfiguration {
} }
@Bean @Bean
public HystrixStreamTask hystrixStreamTask(SimpleDiscoveryClient simpleDiscoveryClient) { public HystrixStreamTask hystrixStreamTask(SimpleDiscoveryProperties simpleDiscoveryProperties) {
ServiceInstance serviceInstance = this.registration; ServiceInstance serviceInstance = this.registration;
if (serviceInstance == null) { if (serviceInstance == null) {
serviceInstance = simpleDiscoveryClient.getLocalServiceInstance(); serviceInstance = simpleDiscoveryProperties.getLocal();
} }
return new HystrixStreamTask(this.outboundChannel, serviceInstance, return new HystrixStreamTask(this.outboundChannel, serviceInstance,
this.properties); this.properties);

7
spring-cloud-netflix-hystrix-stream/src/test/java/org/springframework/cloud/netflix/hystrix/stream/HystrixStreamAutoConfigurationNoRegistrationTests.java

@ -23,6 +23,7 @@ import org.springframework.boot.SpringBootConfiguration;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.cloud.client.discovery.simple.SimpleDiscoveryClient; import org.springframework.cloud.client.discovery.simple.SimpleDiscoveryClient;
import org.springframework.cloud.client.discovery.simple.SimpleDiscoveryProperties;
import org.springframework.cloud.client.serviceregistry.Registration; import org.springframework.cloud.client.serviceregistry.Registration;
import org.springframework.test.annotation.DirtiesContext; import org.springframework.test.annotation.DirtiesContext;
import org.springframework.test.context.junit4.SpringRunner; import org.springframework.test.context.junit4.SpringRunner;
@ -44,13 +45,13 @@ public class HystrixStreamAutoConfigurationNoRegistrationTests {
Registration registration; Registration registration;
@Autowired @Autowired
SimpleDiscoveryClient simpleDiscoveryClient; SimpleDiscoveryProperties simpleDiscoveryProperties;
@Test @Test
public void withoutRegistrationWorks() throws Exception { public void withoutRegistrationWorks() throws Exception {
assertThat(this.registration).isNull(); assertThat(this.registration).isNull();
assertThat(this.simpleDiscoveryClient).isNotNull(); assertThat(this.simpleDiscoveryProperties).isNotNull();
assertThat(task.getRegistration()).isEqualTo(this.simpleDiscoveryClient.getLocalServiceInstance()); assertThat(task.getRegistration()).isEqualTo(this.simpleDiscoveryProperties.getLocal());
} }
@EnableAutoConfiguration @EnableAutoConfiguration

Loading…
Cancel
Save