diff --git a/spring-cloud-streams/pom.xml b/spring-cloud-streams/pom.xml
index 029910288..6522e62f7 100644
--- a/spring-cloud-streams/pom.xml
+++ b/spring-cloud-streams/pom.xml
@@ -27,11 +27,6 @@
org.springframework.boot
spring-boot-starter-actuator
-
- org.springframework.cloud
- spring-cloud-starter
- true
-
org.springframework.boot
spring-boot-starter-web
diff --git a/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/EnableMessageBus.java b/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/EnableMessageBus.java
index aa669eec7..47ec0d788 100644
--- a/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/EnableMessageBus.java
+++ b/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/EnableMessageBus.java
@@ -24,7 +24,7 @@ import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import org.springframework.cloud.streams.config.LifecycleConfiguration;
-import org.springframework.cloud.streams.config.MessageBusAdapterConfiguration;
+import org.springframework.cloud.streams.config.ChannelBindingAdapterConfiguration;
import org.springframework.cloud.streams.config.RabbitServiceConfiguration;
import org.springframework.cloud.streams.config.RedisServiceConfiguration;
import org.springframework.context.annotation.Configuration;
@@ -40,7 +40,7 @@ import org.springframework.context.annotation.Import;
@Inherited
@Configuration
@Import({ RedisServiceConfiguration.class, RabbitServiceConfiguration.class,
- MessageBusAdapterConfiguration.class, LifecycleConfiguration.class })
+ ChannelBindingAdapterConfiguration.class, LifecycleConfiguration.class })
public @interface EnableMessageBus {
}
diff --git a/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/adapter/MessageBusAdapter.java b/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/adapter/ChannelBindingAdapter.java
similarity index 91%
rename from spring-cloud-streams/src/main/java/org/springframework/cloud/streams/adapter/MessageBusAdapter.java
rename to spring-cloud-streams/src/main/java/org/springframework/cloud/streams/adapter/ChannelBindingAdapter.java
index b57a9b3e6..65e47633a 100644
--- a/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/adapter/MessageBusAdapter.java
+++ b/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/adapter/ChannelBindingAdapter.java
@@ -29,7 +29,7 @@ import java.util.concurrent.atomic.AtomicBoolean;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeansException;
-import org.springframework.cloud.streams.config.MessageBusProperties;
+import org.springframework.cloud.streams.config.ChannelBindingProperties;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.context.ConfigurableApplicationContext;
@@ -57,9 +57,9 @@ import org.springframework.xd.dirt.integration.bus.XdHeaders;
* @author Dave Syer
*/
@ManagedResource
-public class MessageBusAdapter implements Lifecycle, ApplicationContextAware {
+public class ChannelBindingAdapter implements Lifecycle, ApplicationContextAware {
- private static Logger logger = LoggerFactory.getLogger(MessageBusAdapter.class);
+ private static Logger logger = LoggerFactory.getLogger(ChannelBindingAdapter.class);
private MessageBus messageBus;
private MessageBuilderFactory messageBuilderFactory = new DefaultMessageBuilderFactory();
@@ -73,7 +73,7 @@ public class MessageBusAdapter implements Lifecycle, ApplicationContextAware {
private boolean trackHistory = false;
- private MessageBusProperties module;
+ private ChannelBindingProperties module;
private ConfigurableApplicationContext applicationContext;
@@ -85,7 +85,7 @@ public class MessageBusAdapter implements Lifecycle, ApplicationContextAware {
private Map bindings = new HashMap();
- public MessageBusAdapter(MessageBusProperties module, MessageBus messageBus) {
+ public ChannelBindingAdapter(ChannelBindingProperties module, MessageBus messageBus) {
this.module = module;
this.messageBus = messageBus;
this.inputChannelLocator = new DefaultChannelLocator(module);
@@ -271,7 +271,7 @@ public class MessageBusAdapter implements Lifecycle, ApplicationContextAware {
MessageChannel outputChannel = this.channelResolver.resolveDestination(binding.getLocalName());
bindMessageProducer(outputChannel, name, this.module.getProducerProperties());
if (binding.isTapped()) {
- String tapChannelName = getTapChannelName(name);
+ String tapChannelName = this.outputChannelLocator.tap(name);
binding.setTapChannelName(tapChannelName);
// tappableChannels.put(tapChannelName, outputChannel);
// if (isTapActive(tapChannelName)) {
@@ -319,29 +319,6 @@ public class MessageBusAdapter implements Lifecycle, ApplicationContextAware {
return located;
}
- // TODO: move this to ChannelLocator?
- private String getTapChannelName(String name) {
- return !isDefaultOuputChannel(name) ? this.module.getTapChannelName(getPlainChannelName(name))
- : this.module.getTapChannelName();
- }
-
- // TODO: move this to ChannelLocator?
- private String getPlainChannelName(String name) {
- if (name.contains(":")) {
- name = name.substring(name.indexOf(":") + 1);
- }
- return name;
- }
-
- // TODO: move this to ChannelLocator?
- private boolean isDefaultOuputChannel(String channelName) {
- if (channelName.contains(":")) {
- String[] tokens = channelName.split(":", 2);
- channelName = tokens[1];
- }
- return channelName.equals(this.module.getOutputChannelName());
- }
-
/*
* Following methods copied from parent to support the bindChannels() method above
*/
@@ -422,7 +399,7 @@ public class MessageBusAdapter implements Lifecycle, ApplicationContextAware {
map.putAll(historyProps);
map.put("thread", Thread.currentThread().getName());
history.add(map);
- Message> out = MessageBusAdapter.this.messageBuilderFactory.fromMessage(message)
+ Message> out = ChannelBindingAdapter.this.messageBuilderFactory.fromMessage(message)
.setHeader(XdHeaders.XD_HISTORY, history).build();
return out;
}
diff --git a/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/adapter/ChannelLocator.java b/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/adapter/ChannelLocator.java
index 085de8b2e..3a7de7c17 100644
--- a/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/adapter/ChannelLocator.java
+++ b/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/adapter/ChannelLocator.java
@@ -20,9 +20,10 @@ package org.springframework.cloud.streams.adapter;
* @author Dave Syer
*
*/
-// TODO: Use DestinationResolver?
public interface ChannelLocator {
-
+
String locate(String name);
+ String tap(String name);
+
}
diff --git a/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/adapter/ChannelsMetadata.java b/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/adapter/ChannelsMetadata.java
index 0053a3c04..70ca981c4 100644
--- a/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/adapter/ChannelsMetadata.java
+++ b/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/adapter/ChannelsMetadata.java
@@ -19,7 +19,7 @@ package org.springframework.cloud.streams.adapter;
import java.util.Collection;
import java.util.Collections;
-import org.springframework.cloud.streams.config.MessageBusProperties;
+import org.springframework.cloud.streams.config.ChannelBindingProperties;
/**
* @author Dave Syer
@@ -28,13 +28,13 @@ public class ChannelsMetadata {
private Collection outputChannels = Collections.emptySet();
private Collection inputChannels = Collections.emptySet();
- private MessageBusProperties module;
+ private ChannelBindingProperties module;
- public MessageBusProperties getModule() {
+ public ChannelBindingProperties getModule() {
return this.module;
}
- public void setModule(MessageBusProperties module) {
+ public void setModule(ChannelBindingProperties module) {
this.module = module;
}
diff --git a/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/adapter/DefaultChannelLocator.java b/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/adapter/DefaultChannelLocator.java
index 90c3eda93..243e677b7 100644
--- a/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/adapter/DefaultChannelLocator.java
+++ b/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/adapter/DefaultChannelLocator.java
@@ -16,7 +16,7 @@
package org.springframework.cloud.streams.adapter;
-import org.springframework.cloud.streams.config.MessageBusProperties;
+import org.springframework.cloud.streams.config.ChannelBindingProperties;
import org.springframework.util.StringUtils;
/**
@@ -24,9 +24,9 @@ import org.springframework.util.StringUtils;
*/
public class DefaultChannelLocator implements ChannelLocator {
- private MessageBusProperties module;
+ private ChannelBindingProperties module;
- public DefaultChannelLocator(MessageBusProperties module) {
+ public DefaultChannelLocator(ChannelBindingProperties module) {
this.module = module;
}
@@ -43,6 +43,19 @@ public class DefaultChannelLocator implements ChannelLocator {
return null;
}
+ @Override
+ public String tap(String name) {
+ return !isDefaultOuputChannel(name) ? this.module.getTapChannelName(getPlainChannelName(name))
+ : this.module.getTapChannelName();
+ }
+
+ private boolean isDefaultOuputChannel(String channelName) {
+ if (channelName.contains(":")) {
+ String[] tokens = channelName.split(":", 2);
+ channelName = tokens[1];
+ }
+ return channelName.equals(this.module.getOutputChannelName());
+ }
private String extractChannelName(String start, String name, String externalChannelName) {
if (name.equals(start)) {
diff --git a/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/config/MessageBusAdapterConfiguration.java b/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/config/ChannelBindingAdapterConfiguration.java
similarity index 83%
rename from spring-cloud-streams/src/main/java/org/springframework/cloud/streams/config/MessageBusAdapterConfiguration.java
rename to spring-cloud-streams/src/main/java/org/springframework/cloud/streams/config/ChannelBindingAdapterConfiguration.java
index 2f347f34a..1f34d235d 100644
--- a/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/config/MessageBusAdapterConfiguration.java
+++ b/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/config/ChannelBindingAdapterConfiguration.java
@@ -28,11 +28,11 @@ import org.springframework.aop.target.LazyInitTargetSource;
import org.springframework.beans.factory.BeanFactoryUtils;
import org.springframework.beans.factory.ListableBeanFactory;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.context.properties.EnableConfigurationProperties;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
+import org.springframework.cloud.streams.adapter.ChannelBindingAdapter;
import org.springframework.cloud.streams.adapter.ChannelLocator;
import org.springframework.cloud.streams.adapter.Input;
import org.springframework.cloud.streams.adapter.InputChannelBinding;
-import org.springframework.cloud.streams.adapter.MessageBusAdapter;
import org.springframework.cloud.streams.adapter.Output;
import org.springframework.cloud.streams.adapter.OutputChannelBinding;
import org.springframework.cloud.streams.endpoint.ChannelsEndpoint;
@@ -50,11 +50,10 @@ import org.springframework.xd.dirt.integration.bus.MessageBusAwareRouterBeanPost
*/
@Configuration
@ImportResource("classpath*:/META-INF/spring-xd/bus/codec.xml")
-@EnableConfigurationProperties(MessageBusProperties.class)
-public class MessageBusAdapterConfiguration {
+public class ChannelBindingAdapterConfiguration {
@Autowired
- private MessageBusProperties module;
+ private ChannelBindingProperties module;
@Autowired
private ListableBeanFactory beanFactory;
@@ -67,10 +66,12 @@ public class MessageBusAdapterConfiguration {
@Output
private ChannelLocator outputChannelLocator;
+ @Autowired
+ private MessageBus messageBus;
+
@Bean
- public MessageBusAdapter messageBusAdapter(MessageBusProperties module,
- MessageBus messageBus) {
- MessageBusAdapter adapter = new MessageBusAdapter(module, messageBus);
+ public ChannelBindingAdapter messageBusAdapter() {
+ ChannelBindingAdapter adapter = new ChannelBindingAdapter(this.module, this.messageBus);
adapter.setOutputChannels(getOutputChannels());
adapter.setInputChannels(getInputChannels());
if (this.inputChannelLocator!=null) {
@@ -83,10 +84,16 @@ public class MessageBusAdapterConfiguration {
}
@Bean
- public ChannelsEndpoint channelsEndpoint(MessageBusAdapter adapter) {
+ public ChannelsEndpoint channelsEndpoint(ChannelBindingAdapter adapter) {
return new ChannelsEndpoint(adapter);
}
+ public void refresh() {
+ ChannelBindingAdapter adapter = messageBusAdapter();
+ adapter.setOutputChannels(getOutputChannels());
+ adapter.setInputChannels(getInputChannels());
+ }
+
protected Collection getOutputChannels() {
Set channels = new LinkedHashSet();
String[] names = BeanFactoryUtils.beanNamesForTypeIncludingAncestors(
@@ -158,4 +165,12 @@ public class MessageBusAdapterConfiguration {
}
+ @Configuration
+ @ConditionalOnMissingBean(ChannelBindingProperties.class)
+ protected static class ModulePropertiesConfiguration {
+ @Bean(name="spring.cloud.channels.CONFIGURATION_PROPERTIES")
+ public ChannelBindingProperties moduleProperties() {
+ return new ChannelBindingProperties();
+ }
+ }
}
diff --git a/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/config/ChannelBindingProperties.java b/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/config/ChannelBindingProperties.java
new file mode 100644
index 000000000..c54d0b3ae
--- /dev/null
+++ b/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/config/ChannelBindingProperties.java
@@ -0,0 +1,92 @@
+/*
+ * Copyright 2015 the original author or authors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.springframework.cloud.streams.config;
+
+import java.util.Properties;
+
+import org.springframework.boot.context.properties.ConfigurationProperties;
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonInclude.Include;
+
+/**
+ * @author Dave Syer
+ *
+ */
+@ConfigurationProperties("spring.cloud.channels")
+@JsonInclude(Include.NON_DEFAULT)
+public class ChannelBindingProperties {
+
+ private String outputChannelName = "group.0";
+
+ private String inputChannelName = "group.0";
+
+ private Properties consumerProperties = new Properties();
+
+ private Properties producerProperties = new Properties();
+
+ private boolean autoStartup = true;
+
+ public String getOutputChannelName() {
+ return this.outputChannelName;
+ }
+
+ public String getInputChannelName() {
+ return this.inputChannelName;
+ }
+
+ public void setOutputChannelName(String outputChannelName) {
+ this.outputChannelName = outputChannelName;
+ }
+
+ public void setInputChannelName(String inputChannelName) {
+ this.inputChannelName = inputChannelName;
+ }
+
+ public Properties getConsumerProperties() {
+ return this.consumerProperties;
+ }
+
+ public void setConsumerProperties(Properties consumerProperties) {
+ this.consumerProperties = consumerProperties;
+ }
+
+ public Properties getProducerProperties() {
+ return this.producerProperties;
+ }
+
+ public void setProducerProperties(Properties producerProperties) {
+ this.producerProperties = producerProperties;
+ }
+
+ public boolean isAutoStartup() {
+ return this.autoStartup;
+ }
+
+ public void setAutoStartup(boolean autoStartup) {
+ this.autoStartup = autoStartup;
+ }
+
+ public String getTapChannelName() {
+ return getTapChannelName(getOutputChannelName());
+ }
+
+ public String getTapChannelName(String prefix) {
+ return "tap:" + prefix;
+ }
+
+}
diff --git a/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/config/LifecycleConfiguration.java b/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/config/LifecycleConfiguration.java
index b4ac9966a..ab5ba9cd5 100644
--- a/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/config/LifecycleConfiguration.java
+++ b/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/config/LifecycleConfiguration.java
@@ -18,7 +18,7 @@ package org.springframework.cloud.streams.config;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
-import org.springframework.cloud.streams.adapter.MessageBusAdapter;
+import org.springframework.cloud.streams.adapter.ChannelBindingAdapter;
import org.springframework.context.annotation.Configuration;
/**
@@ -29,10 +29,10 @@ import org.springframework.context.annotation.Configuration;
public class LifecycleConfiguration implements CommandLineRunner {
@Autowired
- private MessageBusProperties module;
+ private ChannelBindingProperties module;
@Autowired
- private MessageBusAdapter adapter;
+ private ChannelBindingAdapter adapter;
@Override
public void run(String... args) throws Exception {
diff --git a/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/config/MessageBusProperties.java b/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/config/MessageBusProperties.java
deleted file mode 100644
index b85714426..000000000
--- a/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/config/MessageBusProperties.java
+++ /dev/null
@@ -1,236 +0,0 @@
-/*
- * Copyright 2015 the original author or authors.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.springframework.cloud.streams.config;
-
-import java.util.Properties;
-
-import org.springframework.boot.context.properties.ConfigurationProperties;
-import org.springframework.util.Assert;
-import org.springframework.xd.dirt.integration.bus.BusUtils;
-
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-
-/**
- * @author Dave Syer
- *
- */
-@ConfigurationProperties("spring.bus")
-@JsonInclude(Include.NON_DEFAULT)
-public class MessageBusProperties {
-
- private String name = "module";
-
- private String group = "group";
-
- private int index = 0;
-
- private String outputChannelName;
-
- private String inputChannelName;
-
- private String type = "processor";
-
- private Properties consumerProperties = new Properties();
-
- private Properties producerProperties = new Properties();
-
- private Tap tap;
-
- private Discovery discovery = new Discovery();
-
- private boolean autoStartup = true;
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getGroup() {
- return group;
- }
-
- public void setGroup(String group) {
- this.group = group;
- }
-
- public int getIndex() {
- return index;
- }
-
- public void setIndex(int index) {
- this.index = index;
- }
-
- public String getInputChannelName() {
- if (isTap()) {
- return String.format("%s.%s.%s", BusUtils.constructTapPrefix(tap.getGroup()),
- tap.getName(), tap.getIndex());
- }
- return (inputChannelName != null) ? inputChannelName : BusUtils
- .constructPipeName(group, index > 0 ? index - 1 : index);
- }
-
- public String getOutputChannelName() {
- return (outputChannelName != null) ? outputChannelName : BusUtils
- .constructPipeName(group, index);
- }
-
- public String getTapChannelName() {
- return getTapChannelName(group);
- }
-
- public String getTapChannelName(String prefix) {
- Assert.isTrue(!type.equals("job"), "Job module type not supported.");
- // for Stream return channel name with indexed elements
- return String
- .format("%s.%s.%s", BusUtils.constructTapPrefix(prefix), name, index);
- }
-
- public void setOutputChannelName(String outputChannelName) {
- this.outputChannelName = outputChannelName;
- }
-
- public void setInputChannelName(String inputChannelName) {
- this.inputChannelName = inputChannelName;
- }
-
- public String getType() {
- return type;
- }
-
- public void setType(String type) {
- this.type = type;
- }
-
- public Properties getConsumerProperties() {
- return consumerProperties;
- }
-
- public void setConsumerProperties(Properties consumerProperties) {
- this.consumerProperties = consumerProperties;
- }
-
- public Properties getProducerProperties() {
- return producerProperties;
- }
-
- public void setProducerProperties(Properties producerProperties) {
- this.producerProperties = producerProperties;
- }
-
- public boolean isAutoStartup() {
- return autoStartup;
- }
-
- public void setAutoStartup(boolean autoStartup) {
- this.autoStartup = autoStartup;
- }
-
- public Tap getTap() {
- return tap;
- }
-
- public void setTap(Tap tap) {
- this.tap = tap;
- }
-
- private boolean isTap() {
- if (tap != null) {
- Assert.state(tap.getName() != null, "Tap name not provided");
- Assert.state(!tap.getGroup().equals(group),
- "Tap group cannot be the same as module group");
- }
- return tap != null;
- }
-
- public Discovery getDiscovery() {
- return discovery;
- }
-
- public static class Discovery {
-
- private boolean enabled = false;
-
- private String inputServiceId;
-
- private String outputServiceId;
-
- public boolean isEnabled() {
- return enabled;
- }
-
- public void setEnabled(boolean enabled) {
- this.enabled = enabled;
- }
-
- public String getInputServiceId() {
- return inputServiceId;
- }
-
- public void setInputServiceId(String inputServiceId) {
- this.inputServiceId = inputServiceId;
- }
-
- public String getOutputServiceId() {
- return outputServiceId;
- }
-
- public void setOutputServiceId(String outputServiceId) {
- this.outputServiceId = outputServiceId;
- }
-
- }
-
- public static class Tap {
-
- private String group = "group";
-
- private String name;
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- private int index = 0;
-
- public String getGroup() {
- return group;
- }
-
- public void setGroup(String group) {
- this.group = group;
- }
-
- public int getIndex() {
- return index;
- }
-
- public void setIndex(int index) {
- this.index = index;
- }
-
- }
-
-}
diff --git a/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/endpoint/ChannelsEndpoint.java b/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/endpoint/ChannelsEndpoint.java
index c217e4c88..14e9f1307 100644
--- a/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/endpoint/ChannelsEndpoint.java
+++ b/spring-cloud-streams/src/main/java/org/springframework/cloud/streams/endpoint/ChannelsEndpoint.java
@@ -23,7 +23,7 @@ import java.util.Map;
import org.springframework.boot.actuate.endpoint.AbstractEndpoint;
import org.springframework.cloud.streams.adapter.ChannelsMetadata;
-import org.springframework.cloud.streams.adapter.MessageBusAdapter;
+import org.springframework.cloud.streams.adapter.ChannelBindingAdapter;
import org.springframework.cloud.streams.adapter.OutputChannelBinding;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@@ -36,9 +36,9 @@ import org.springframework.web.bind.annotation.RestController;
@RestController
public class ChannelsEndpoint extends AbstractEndpoint