From 6c3b574213ee6db239072ed118f7d05a63d084b4 Mon Sep 17 00:00:00 2001 From: Oleg Zhurakousky Date: Fri, 11 Oct 2019 10:35:44 -0400 Subject: [PATCH] Relaxed default function lookup assertion polish --- .../catalog/BeanFactoryAwareFunctionRegistry.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/catalog/BeanFactoryAwareFunctionRegistry.java b/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/catalog/BeanFactoryAwareFunctionRegistry.java index 031a08682..50c06c7a7 100644 --- a/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/catalog/BeanFactoryAwareFunctionRegistry.java +++ b/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/catalog/BeanFactoryAwareFunctionRegistry.java @@ -221,8 +221,14 @@ public class BeanFactoryAwareFunctionRegistry .concat(Stream.of(functionNames), Stream.concat(Stream.of(consumerNames), Stream.of(supplierNames))).collect(Collectors.toList()); if (!ObjectUtils.isEmpty(names)) { - Assert.isTrue(names.size() == 1, "Found more then one function in BeanFactory: " + names - + ". Consider providing 'spring.cloud.function.definition' property."); + if (names.size() > 1) { + logger.info("Found more then one function beans in BeanFactory: " + names + + ". If you did not intend to use functions, ignore this message. However, if you did " + + "intend to use functions in the context of spring-cloud-function, consider " + + "providing 'spring.cloud.function.definition' property pointing to a function bean(s) " + + "you intend to use. For example, 'spring.cloud.function.definition=myFunction'"); + return null; + } definition = names.get(0); } else {