diff --git a/spring-ai-model/src/main/java/org/springframework/ai/aot/AiRuntimeHints.java b/spring-ai-model/src/main/java/org/springframework/ai/aot/AiRuntimeHints.java index 07fbad5d7e3..c42d268d87a 100644 --- a/spring-ai-model/src/main/java/org/springframework/ai/aot/AiRuntimeHints.java +++ b/spring-ai-model/src/main/java/org/springframework/ai/aot/AiRuntimeHints.java @@ -41,6 +41,7 @@ * @author Josh Long * @author Christian Tzolov * @author Mark Pollack + * @author Fu Jian */ public abstract class AiRuntimeHints { @@ -100,12 +101,11 @@ public static Set findClassesInPackage(String packageName, TypeFi } private static boolean hasJacksonAnnotations(Class type) { - var hasAnnotation = false; var annotationsToFind = Set.of(JsonProperty.class, JsonInclude.class); for (var annotationToFind : annotationsToFind) { if (type.isAnnotationPresent(annotationToFind)) { - hasAnnotation = true; + return true; } var executables = new HashSet(); @@ -114,15 +114,13 @@ private static boolean hasJacksonAnnotations(Class type) { executables.addAll(Set.of(type.getDeclaredConstructors())); for (var executable : executables) { - // if (executable.isAnnotationPresent(annotationToFind)) { - hasAnnotation = true; + return true; } - /// for (var p : executable.getParameters()) { if (p.isAnnotationPresent(annotationToFind)) { - hasAnnotation = true; + return true; } } } @@ -130,19 +128,19 @@ private static boolean hasJacksonAnnotations(Class type) { if (type.getRecordComponents() != null) { for (var r : type.getRecordComponents()) { if (r.isAnnotationPresent(annotationToFind)) { - hasAnnotation = true; + return true; } } } for (var f : type.getFields()) { if (f.isAnnotationPresent(annotationToFind)) { - hasAnnotation = true; + return true; } } } - return hasAnnotation; + return false; } private static Set> discoverJacksonAnnotatedTypesFromRootType(Class type) {