From 975ed158e4168e6b8ab000667aff5011000e86ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gast=C3=B3n=20Ortiz?= Date: Tue, 23 Jul 2024 16:21:18 -0300 Subject: [PATCH] Replaced the "any" object type with an instance of Object.class for all functions. --- .../polyapi/plugin/model/type/basic/AnyPolyType.java | 10 ++-------- .../io/polyapi/plugin/model/visitor/TypeVisitor.java | 2 +- .../polyapi/plugin/service/DeploymentServiceImpl.java | 5 ++--- .../plugin/service/visitor/TypeExtractionVisitor.java | 2 +- 4 files changed, 6 insertions(+), 13 deletions(-) diff --git a/polyapi-maven-plugin/src/main/java/io/polyapi/plugin/model/type/basic/AnyPolyType.java b/polyapi-maven-plugin/src/main/java/io/polyapi/plugin/model/type/basic/AnyPolyType.java index a9ee537b..474b7509 100644 --- a/polyapi-maven-plugin/src/main/java/io/polyapi/plugin/model/type/basic/AnyPolyType.java +++ b/polyapi-maven-plugin/src/main/java/io/polyapi/plugin/model/type/basic/AnyPolyType.java @@ -1,18 +1,12 @@ package io.polyapi.plugin.model.type.basic; import io.polyapi.plugin.model.type.PolyType; -import io.polyapi.plugin.model.type.complex.MapObjectPolyType; import io.polyapi.plugin.model.visitor.TypeVisitor; -public class AnyPolyType extends PolyType implements MapObjectPolyType { +public class AnyPolyType extends PolyType { @Override public void accept(TypeVisitor visitor) { - visitor.visit(MapObjectPolyType.class.cast(this)); - } - - @Override - public String getTypeName() { - return "any"; + visitor.visit(this); } } diff --git a/polyapi-maven-plugin/src/main/java/io/polyapi/plugin/model/visitor/TypeVisitor.java b/polyapi-maven-plugin/src/main/java/io/polyapi/plugin/model/visitor/TypeVisitor.java index 35f19a9f..9023a5ad 100644 --- a/polyapi-maven-plugin/src/main/java/io/polyapi/plugin/model/visitor/TypeVisitor.java +++ b/polyapi-maven-plugin/src/main/java/io/polyapi/plugin/model/visitor/TypeVisitor.java @@ -88,6 +88,6 @@ default void visit(PrimitivePolyType type) { default void visit(AnyPolyType type) { log.trace("Visiting AnyPolyType."); - visit((MapObjectPolyType) type); + visit((PolyType) type); } } diff --git a/polyapi-maven-plugin/src/main/java/io/polyapi/plugin/service/DeploymentServiceImpl.java b/polyapi-maven-plugin/src/main/java/io/polyapi/plugin/service/DeploymentServiceImpl.java index 2bb72398..0cbab1c2 100644 --- a/polyapi-maven-plugin/src/main/java/io/polyapi/plugin/service/DeploymentServiceImpl.java +++ b/polyapi-maven-plugin/src/main/java/io/polyapi/plugin/service/DeploymentServiceImpl.java @@ -36,7 +36,6 @@ import static com.fasterxml.jackson.databind.type.TypeFactory.defaultInstance; import static java.lang.String.format; import static java.nio.charset.Charset.defaultCharset; -import static java.util.function.Predicate.isEqual; import static java.util.function.Predicate.not; import static java.util.stream.Collectors.joining; import static java.util.stream.Collectors.toSet; @@ -122,7 +121,7 @@ public List deployFunctions(List functionFilters, boolean Arrays.stream(method.getParameters()).map(parameter -> { log.debug("Processing parameter {}", parameter); PolyFunctionArgument argument = new PolyFunctionArgument(); - if (parameter.getType().equals(Map.class)) { + if (parameter.getType().equals(Object.class)) { argument.setType("any"); } else { argument.setType(parameter.getParameterizedType().getTypeName()); @@ -141,7 +140,7 @@ public List deployFunctions(List functionFilters, boolean "java.lang.Short", "java.lang.Byte" -> "number"; case "java.lang.Boolean" -> "boolean"; case "java.lang.String", "java.lang.Character" -> "string"; - case "java.util.Map" -> "any"; + case "java.util.Object" -> "any"; case "void" -> "void"; default -> "object"; }); diff --git a/polyapi-maven-plugin/src/main/java/io/polyapi/plugin/service/visitor/TypeExtractionVisitor.java b/polyapi-maven-plugin/src/main/java/io/polyapi/plugin/service/visitor/TypeExtractionVisitor.java index 20c2b5cb..eebe457f 100644 --- a/polyapi-maven-plugin/src/main/java/io/polyapi/plugin/service/visitor/TypeExtractionVisitor.java +++ b/polyapi-maven-plugin/src/main/java/io/polyapi/plugin/service/visitor/TypeExtractionVisitor.java @@ -71,7 +71,7 @@ public void visit(PlainPolyType type) { result = Optional.ofNullable(type) .map(PlainPolyType::getValue) .filter(not(isEqual("void"))) - .map(plainType -> new ParsedType(plainType.equals("any")? TypeUtils.parameterize(Map.class, String.class, Object.class) : Object.class)) + .map(plainType -> new ParsedType(Object.class)) .orElse(new ParsedType(Void.class)); }