From 271e2d1bce785cc5e06dee822483f5c0208efd21 Mon Sep 17 00:00:00 2001 From: Oleg Zhurakousky Date: Wed, 17 Aug 2022 18:38:14 +0200 Subject: [PATCH] GH-918 Fix Kotlin function invocation For some reason it contained code that was doing some special checking for array and was returning null. Resolves #918 --- .../cloud/function/context/catalog/FunctionTypeUtils.java | 2 -- .../config/KotlinLambdaToFunctionAutoConfiguration.java | 3 --- 2 files changed, 5 deletions(-) diff --git a/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/catalog/FunctionTypeUtils.java b/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/catalog/FunctionTypeUtils.java index d7d8863b3..58581746c 100644 --- a/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/catalog/FunctionTypeUtils.java +++ b/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/catalog/FunctionTypeUtils.java @@ -171,8 +171,6 @@ public final class FunctionTypeUtils { @SuppressWarnings("unchecked") public static Type discoverFunctionTypeFromClass(Class functionalClass) { - Assert.isTrue(isFunctional(functionalClass), "Type must be one of Supplier, Function or Consumer"); - if (Function.class.isAssignableFrom(functionalClass)) { for (Type superInterface : functionalClass.getGenericInterfaces()) { if (superInterface != null && !superInterface.equals(Object.class)) { diff --git a/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/config/KotlinLambdaToFunctionAutoConfiguration.java b/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/config/KotlinLambdaToFunctionAutoConfiguration.java index 3b6209447..1076ab738 100644 --- a/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/config/KotlinLambdaToFunctionAutoConfiguration.java +++ b/spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/config/KotlinLambdaToFunctionAutoConfiguration.java @@ -98,9 +98,6 @@ public class KotlinLambdaToFunctionAutoConfiguration { if (ObjectUtils.isEmpty(input)) { return this.invoke(); } - else if (ObjectUtils.isArray(input)) { - return null; - } else { return this.invoke(input); }