Skip to content

Commit 2ff839b

Browse files
authored
Prepare for Jackson 3.2 (#874)
1 parent 29f9f70 commit 2ff839b

2 files changed

Lines changed: 8 additions & 6 deletions

File tree

jackson3/src/main/java/org/projectnessie/cel/types/jackson3/Jackson3Registry.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@
3131
import tools.jackson.databind.cfg.SerializationContexts;
3232
import tools.jackson.databind.json.JsonMapper;
3333
import tools.jackson.databind.ser.SerializationContextExt;
34-
import tools.jackson.databind.ser.jdk.EnumSerializer;
3534
import tools.jackson.databind.type.TypeFactory;
3635

3736
/**
@@ -173,10 +172,9 @@ JacksonEnumDescription enumDescription(Class<?> clazz) {
173172
}
174173

175174
private JacksonEnumDescription computeEnumDescription(Class<?> clazz) {
176-
ValueSerializer<?> ser = serializationContextExt.findValueSerializer(clazz);
177175
JavaType javaType = typeFactory.constructType(clazz);
178176

179-
JacksonEnumDescription enumDesc = new JacksonEnumDescription(javaType, (EnumSerializer) ser);
177+
JacksonEnumDescription enumDesc = new JacksonEnumDescription(javaType);
180178
enumMap.put(clazz, enumDesc);
181179

182180
enumDesc.buildValues().forEach(v -> enumValues.put(v.fullyQualifiedName(), v));

jackson3/src/main/java/org/projectnessie/cel/types/jackson3/JacksonEnumDescription.java

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,21 +15,25 @@
1515
*/
1616
package org.projectnessie.cel.types.jackson3;
1717

18+
import java.util.Arrays;
1819
import java.util.List;
20+
import java.util.stream.Collectors;
1921
import java.util.stream.Stream;
2022
import org.projectnessie.cel.common.types.pb.Checked;
2123
import tools.jackson.databind.JavaType;
22-
import tools.jackson.databind.ser.jdk.EnumSerializer;
2324

2425
final class JacksonEnumDescription {
2526

2627
private final String name;
2728
private final com.google.api.expr.v1alpha1.Type pbType;
2829
private final List<Enum<?>> enumValues;
2930

30-
JacksonEnumDescription(JavaType javaType, EnumSerializer ser) {
31+
JacksonEnumDescription(JavaType javaType) {
3132
this.name = javaType.getRawClass().getName().replace('$', '.');
32-
this.enumValues = ser.getEnumValues().enums();
33+
this.enumValues =
34+
Arrays.stream(javaType.getRawClass().getEnumConstants())
35+
.map(enumValue -> (Enum<?>) enumValue)
36+
.collect(Collectors.toList());
3337
this.pbType = Checked.checkedInt;
3438
}
3539

0 commit comments

Comments
 (0)