Remove functionType deprecations

This commit is contained in:
Oleg Zhurakousky
2022-07-27 17:41:09 +02:00
parent d1eb0341b1
commit a7a8217f58
2 changed files with 9 additions and 60 deletions

View File

@@ -42,6 +42,7 @@ import org.springframework.beans.factory.FactoryBean;
import org.springframework.beans.factory.ListableBeanFactory;
import org.springframework.beans.factory.annotation.BeanFactoryAnnotationUtils;
import org.springframework.cloud.function.context.FunctionRegistration;
import org.springframework.cloud.function.context.catalog.SimpleFunctionRegistry.FunctionInvocationWrapper;
import org.springframework.cloud.function.context.config.FunctionContextUtils;
import org.springframework.cloud.function.context.config.RoutingFunction;
import org.springframework.context.support.GenericApplicationContext;
@@ -260,11 +261,10 @@ public final class FunctionTypeUtils {
}
}
public static int getInputCount(Type functionType) {
assertSupportedTypes(functionType);
int inputCount = isSupplier(functionType) ? 0 : 1;
if (functionType instanceof ParameterizedType && !isSupplier(functionType)) {
Type inputType = ((ParameterizedType) functionType).getActualTypeArguments()[0];
public static int getInputCount(FunctionInvocationWrapper function) {
int inputCount = function.isSupplier() ? 0 : 1;
if (inputCount > 0) {
Type inputType = function.getInputType();
if (isMulti(inputType)) {
inputCount = ((ParameterizedType) inputType).getActualTypeArguments().length;
}
@@ -272,11 +272,10 @@ public final class FunctionTypeUtils {
return inputCount;
}
public static int getOutputCount(Type functionType) {
assertSupportedTypes(functionType);
int outputCount = isConsumer(functionType) ? 0 : 1;
if (functionType instanceof ParameterizedType && !isConsumer(functionType)) {
Type outputType = ((ParameterizedType) functionType).getActualTypeArguments()[isSupplier(functionType) ? 0 : 1];
public static int getOutputCount(FunctionInvocationWrapper function) {
int outputCount = function.isConsumer() ? 0 : 1;
if (outputCount > 0) {
Type outputType = function.getOutputType();
if (isMulti(outputType)) {
outputCount = ((ParameterizedType) outputType).getActualTypeArguments().length;
}

View File

@@ -66,56 +66,6 @@ public class FunctionTypeUtilsTests<T> {
System.out.println();
}
@Test
public void testInputCount() throws Exception {
int inputCount = FunctionTypeUtils.getInputCount(getReturnType("function"));
assertThat(inputCount).isEqualTo(1);
inputCount = FunctionTypeUtils.getInputCount(getReturnType("typelessFunction"));
assertThat(inputCount).isEqualTo(1);
inputCount = FunctionTypeUtils.getInputCount(getReturnType("multiInputOutputFunction"));
assertThat(inputCount).isEqualTo(2);
inputCount = FunctionTypeUtils.getInputCount(getReturnType("multiInputOutputPublisherFunction"));
assertThat(inputCount).isEqualTo(2);
inputCount = FunctionTypeUtils.getInputCount(getReturnType("multiInputOutputPublisherFunctionComplexTypes"));
assertThat(inputCount).isEqualTo(2);
inputCount = FunctionTypeUtils.getInputCount(getReturnType("consumer"));
assertThat(inputCount).isEqualTo(1);
inputCount = FunctionTypeUtils.getInputCount(getReturnType("typelessConsumer"));
assertThat(inputCount).isEqualTo(1);
inputCount = FunctionTypeUtils.getInputCount(getReturnType("multiInputConsumer"));
assertThat(inputCount).isEqualTo(2);
inputCount = FunctionTypeUtils.getInputCount(getReturnType("supplier"));
assertThat(inputCount).isEqualTo(0);
inputCount = FunctionTypeUtils.getInputCount(getReturnType("typelessSupplier"));
assertThat(inputCount).isEqualTo(0);
}
@Test
public void testOutputCount() throws Exception {
int outputCount = FunctionTypeUtils.getOutputCount(getReturnType("function"));
assertThat(outputCount).isEqualTo(1);
outputCount = FunctionTypeUtils.getOutputCount(getReturnType("typelessFunction"));
assertThat(outputCount).isEqualTo(1);
outputCount = FunctionTypeUtils.getOutputCount(getReturnType("multiInputOutputFunction"));
assertThat(outputCount).isEqualTo(3);
outputCount = FunctionTypeUtils.getOutputCount(getReturnType("multiInputOutputPublisherFunction"));
assertThat(outputCount).isEqualTo(3);
outputCount = FunctionTypeUtils.getOutputCount(getReturnType("multiInputOutputPublisherFunctionComplexTypes"));
assertThat(outputCount).isEqualTo(3);
outputCount = FunctionTypeUtils.getOutputCount(getReturnType("consumer"));
assertThat(outputCount).isEqualTo(0);
outputCount = FunctionTypeUtils.getOutputCount(getReturnType("typelessConsumer"));
assertThat(outputCount).isEqualTo(0);
outputCount = FunctionTypeUtils.getOutputCount(getReturnType("multiInputConsumer"));
assertThat(outputCount).isEqualTo(0);
outputCount = FunctionTypeUtils.getOutputCount(getReturnType("supplier"));
assertThat(outputCount).isEqualTo(1);
outputCount = FunctionTypeUtils.getOutputCount(getReturnType("typelessSupplier"));
assertThat(outputCount).isEqualTo(1);
outputCount = FunctionTypeUtils.getOutputCount(getReturnType("multiOutputSupplier"));
assertThat(outputCount).isEqualTo(2);
}
@Test
public void testFunctionTypeByClassDiscovery() {
Type type = FunctionTypeUtils.discoverFunctionTypeFromClass(Function.class);