Skip to content

Commit d87575b

Browse files
committed
Minor refactoring wrt Enum resolver construction needed for #2787
1 parent 7161d21 commit d87575b

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

src/main/java/com/fasterxml/jackson/databind/deser/BasicDeserializerFactory.java

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1704,8 +1704,7 @@ public JsonDeserializer<?> createEnumDeserializer(DeserializationContext ctxt,
17041704

17051705
// Need to consider @JsonValue if one found
17061706
if (deser == null) {
1707-
deser = new EnumDeserializer(constructEnumResolver(enumClass,
1708-
config, beanDesc.findJsonValueAccessor()),
1707+
deser = new EnumDeserializer(constructEnumResolver(enumClass, config, beanDesc),
17091708
config.isEnabled(MapperFeature.ACCEPT_CASE_INSENSITIVE_ENUMS),
17101709
constructEnumNamingStrategyResolver(config, enumClass, beanDesc.getClassInfo())
17111710
);
@@ -1914,7 +1913,7 @@ private KeyDeserializer _createEnumKeyDeserializer(DeserializationContext ctxt,
19141913
return StdKeyDeserializers.constructDelegatingKeyDeserializer(config, type, valueDesForKey);
19151914
}
19161915
}
1917-
EnumResolver enumRes = constructEnumResolver(enumClass, config, beanDesc.findJsonValueAccessor());
1916+
EnumResolver enumRes = constructEnumResolver(enumClass, config, beanDesc);
19181917
EnumResolver byEnumNamingResolver = constructEnumNamingStrategyResolver(config, enumClass, beanDesc.getClassInfo());
19191918

19201919
// May have @JsonCreator for static factory method
@@ -2412,14 +2411,15 @@ protected JavaType resolveMemberAndTypeAnnotations(DeserializationContext ctxt,
24122411
}
24132412

24142413
protected EnumResolver constructEnumResolver(Class<?> enumClass,
2415-
DeserializationConfig config, AnnotatedMember jsonValueAccessor)
2414+
DeserializationConfig config, BeanDescription beanDesc)
24162415
{
2417-
if (jsonValueAccessor != null) {
2416+
AnnotatedMember jvAcc = beanDesc.findJsonValueAccessor();
2417+
if (jvAcc != null) {
24182418
if (config.canOverrideAccessModifiers()) {
2419-
ClassUtil.checkAndFixAccess(jsonValueAccessor.getMember(),
2419+
ClassUtil.checkAndFixAccess(jvAcc.getMember(),
24202420
config.isEnabled(MapperFeature.OVERRIDE_PUBLIC_ACCESS_MODIFIERS));
24212421
}
2422-
return EnumResolver.constructUsingMethod(config, enumClass, jsonValueAccessor);
2422+
return EnumResolver.constructUsingMethod(config, enumClass, jvAcc);
24232423
}
24242424
// 14-Mar-2016, tatu: We used to check `DeserializationFeature.READ_ENUMS_USING_TO_STRING`
24252425
// here, but that won't do: it must be dynamically changeable...

0 commit comments

Comments
 (0)