diff --git a/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/function/StreamBridge.java b/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/function/StreamBridge.java index 0bdb65333..352d3e057 100644 --- a/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/function/StreamBridge.java +++ b/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/function/StreamBridge.java @@ -38,7 +38,6 @@ import org.springframework.cloud.stream.messaging.DirectWithAttributesChannel; import org.springframework.context.ConfigurableApplicationContext; import org.springframework.messaging.Message; import org.springframework.messaging.SubscribableChannel; -import org.springframework.util.CollectionUtils; import org.springframework.util.MimeType; import org.springframework.util.MimeTypeUtils; @@ -150,11 +149,9 @@ public final class StreamBridge implements SmartInitializingSingleton { if (this.initialized) { return; } + FunctionRegistration> fr = new FunctionRegistration<>(v -> v, STREAM_BRIDGE_FUNC_NAME); + this.functionRegistry.register(fr.type(FunctionType.from(Object.class).to(Object.class).message())); Map channels = applicationContext.getBeansOfType(DirectWithAttributesChannel.class); - if (!CollectionUtils.isEmpty(channels)) { // single for all channel pass-through function to facilitate output conversion to byte[] - FunctionRegistration> fr = new FunctionRegistration<>(v -> v, STREAM_BRIDGE_FUNC_NAME); - this.functionRegistry.register(fr.type(FunctionType.from(Object.class).to(Object.class).message())); - } for (Entry channelEntry : channels.entrySet()) { if (channelEntry.getValue().getAttribute("type").equals("output")) { this.channelCache.put(channelEntry.getKey(), channelEntry.getValue());