Fix function auto-detection when single function and input/output-bindings are defined

This commit is contained in:
Oleg Zhurakousky
2023-05-31 18:36:33 +02:00
parent 29e6c03e83
commit e15e5e3a15

View File

@@ -906,6 +906,9 @@ public class FunctionConfiguration {
);
for (String inputBindingName : inputBindings) {
FunctionInvocationWrapper sourceFunc = functionCatalog.lookup(inputBindingName);
if (sourceFunc != null && !sourceFunc.getFunctionDefinition().equals(inputBindingName) && inputBindings.length == 1) {
sourceFunc = null;
}
if (sourceFunc == null || //see https://github.com/spring-cloud/spring-cloud-stream/issues/2229
sourceFunc.isSupplier() ||
@@ -921,6 +924,9 @@ public class FunctionConfiguration {
for (String outputBindingName : outputBindings) {
FunctionInvocationWrapper sourceFunc = functionCatalog.lookup(outputBindingName);
if (sourceFunc != null && !sourceFunc.getFunctionDefinition().equals(outputBindingName) && outputBindings.length == 1) {
sourceFunc = null;
}
if (sourceFunc == null || //see https://github.com/spring-cloud/spring-cloud-stream/issues/2229
sourceFunc.isConsumer() ||