From d102f7802dd9882ebd0a37cfa8c9c09647505953 Mon Sep 17 00:00:00 2001 From: kent Date: Thu, 28 Dec 2023 14:31:07 +0800 Subject: [PATCH] json: update jackson to 2.16.1 --- build.gradle.kts | 2 +- .../internal/json/JSONAnnotationIntrospector.java | 12 +++++++----- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 16e167045..70492f232 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -21,7 +21,7 @@ subprojects { val elasticVersion = "8.11.1" val kafkaVersion = "3.6.1" -val jacksonVersion = "2.15.3" +val jacksonVersion = "2.16.1" val junitVersion = "5.10.0" val mockitoVersion = "5.6.0" val assertjVersion = "3.24.2" diff --git a/core-ng/src/main/java/core/framework/internal/json/JSONAnnotationIntrospector.java b/core-ng/src/main/java/core/framework/internal/json/JSONAnnotationIntrospector.java index 8fe48ca58..ca3ea2efa 100644 --- a/core-ng/src/main/java/core/framework/internal/json/JSONAnnotationIntrospector.java +++ b/core-ng/src/main/java/core/framework/internal/json/JSONAnnotationIntrospector.java @@ -3,11 +3,13 @@ import com.fasterxml.jackson.core.Version; import com.fasterxml.jackson.databind.AnnotationIntrospector; import com.fasterxml.jackson.databind.PropertyName; +import com.fasterxml.jackson.databind.cfg.MapperConfig; import com.fasterxml.jackson.databind.introspect.Annotated; +import com.fasterxml.jackson.databind.introspect.AnnotatedClass; +import com.fasterxml.jackson.databind.introspect.AnnotatedField; import core.framework.api.json.Property; import java.io.Serial; -import java.lang.reflect.Field; import java.util.HashMap; import java.util.Map; @@ -29,12 +31,12 @@ public PropertyName findNameForSerialization(Annotated annotated) { } @Override - public String[] findEnumValues(Class enumType, Enum[] enumValues, String[] names) { + public String[] findEnumValues(MapperConfig config, AnnotatedClass annotatedClass, Enum[] enumValues, String[] names) { Map mappings = null; - for (Field field : enumType.getDeclaredFields()) { - if (!field.isEnumConstant()) continue; + for (AnnotatedField field : annotatedClass.fields()) { + if (!field.getAnnotated().isEnumConstant()) continue; - Property enumValue = field.getDeclaredAnnotation(Property.class); + Property enumValue = field.getAnnotation(Property.class); if (enumValue == null) continue; String value = enumValue.name();