diff --git a/spring-cloud-netflix-hystrix-stream/src/main/java/org/springframework/cloud/netflix/hystrix/stream/HystrixStreamAutoConfiguration.java b/spring-cloud-netflix-hystrix-stream/src/main/java/org/springframework/cloud/netflix/hystrix/stream/HystrixStreamAutoConfiguration.java index 78767e98..97135abd 100644 --- a/spring-cloud-netflix-hystrix-stream/src/main/java/org/springframework/cloud/netflix/hystrix/stream/HystrixStreamAutoConfiguration.java +++ b/spring-cloud-netflix-hystrix-stream/src/main/java/org/springframework/cloud/netflix/hystrix/stream/HystrixStreamAutoConfiguration.java @@ -16,9 +16,6 @@ package org.springframework.cloud.netflix.hystrix.stream; -import java.util.HashMap; -import java.util.Map; - import javax.annotation.PostConstruct; import org.springframework.beans.factory.annotation.Autowired; @@ -26,7 +23,8 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.cloud.stream.annotation.EnableBinding; -import org.springframework.cloud.stream.config.ChannelBindingProperties; +import org.springframework.cloud.stream.config.BindingProperties; +import org.springframework.cloud.stream.config.ChannelBindingServiceProperties; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.scheduling.annotation.EnableScheduling; @@ -58,22 +56,21 @@ import com.netflix.hystrix.HystrixCircuitBreaker; public class HystrixStreamAutoConfiguration { @Autowired - private ChannelBindingProperties bindings; + private ChannelBindingServiceProperties bindings; @Autowired private HystrixStreamProperties properties; @PostConstruct public void init() { - Object outputBinding = this.bindings.getBindings().get(HystrixStreamClient.OUTPUT); - if (outputBinding == null || outputBinding instanceof String) { + BindingProperties outputBinding = this.bindings.getBindings().get(HystrixStreamClient.OUTPUT); + if (outputBinding == null) { this.bindings.getBindings().put(HystrixStreamClient.OUTPUT, - new HashMap()); + new BindingProperties()); } - @SuppressWarnings("unchecked") - Map output = (Map) this.bindings.getBindings().get(HystrixStreamClient.OUTPUT); - if (!output.containsKey("destination") || HystrixStreamClient.OUTPUT.equals(outputBinding)) { - output.put("destination", this.properties.getDestination()); + BindingProperties output = this.bindings.getBindings().get(HystrixStreamClient.OUTPUT); + if (output.getDestination() == null) { + output.setDestination(this.properties.getDestination()); } } diff --git a/spring-cloud-netflix-turbine-stream/src/main/java/org/springframework/cloud/netflix/turbine/stream/TurbineStreamAutoConfiguration.java b/spring-cloud-netflix-turbine-stream/src/main/java/org/springframework/cloud/netflix/turbine/stream/TurbineStreamAutoConfiguration.java index 7091dbbc..3dd6cf95 100644 --- a/spring-cloud-netflix-turbine-stream/src/main/java/org/springframework/cloud/netflix/turbine/stream/TurbineStreamAutoConfiguration.java +++ b/spring-cloud-netflix-turbine-stream/src/main/java/org/springframework/cloud/netflix/turbine/stream/TurbineStreamAutoConfiguration.java @@ -16,16 +16,14 @@ package org.springframework.cloud.netflix.turbine.stream; -import java.util.HashMap; -import java.util.Map; - import javax.annotation.PostConstruct; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.cloud.stream.annotation.EnableBinding; -import org.springframework.cloud.stream.config.ChannelBindingProperties; +import org.springframework.cloud.stream.config.BindingProperties; +import org.springframework.cloud.stream.config.ChannelBindingServiceProperties; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @@ -54,22 +52,21 @@ import org.springframework.context.annotation.Configuration; public class TurbineStreamAutoConfiguration { @Autowired - private ChannelBindingProperties bindings; + private ChannelBindingServiceProperties bindings; @Autowired private TurbineStreamProperties properties; @PostConstruct public void init() { - Object inputBinding = this.bindings.getBindings().get(TurbineStreamClient.INPUT); - if (inputBinding == null || inputBinding instanceof String) { + BindingProperties inputBinding = this.bindings.getBindings().get(TurbineStreamClient.INPUT); + if (inputBinding == null) { this.bindings.getBindings().put(TurbineStreamClient.INPUT, - new HashMap()); + new BindingProperties()); } - @SuppressWarnings("unchecked") - Map input = (Map) this.bindings.getBindings().get(TurbineStreamClient.INPUT); - if (!input.containsKey("destination") || TurbineStreamClient.INPUT.equals(inputBinding)) { - input.put("destination", properties.getDestination()); + BindingProperties input = this.bindings.getBindings().get(TurbineStreamClient.INPUT); + if (input.getDestination() == null) { + input.setDestination(properties.getDestination()); } }