@@ -1704,8 +1704,7 @@ public JsonDeserializer<?> createEnumDeserializer(DeserializationContext ctxt,
1704
1704
1705
1705
// Need to consider @JsonValue if one found
1706
1706
if (deser == null ) {
1707
- deser = new EnumDeserializer (constructEnumResolver (enumClass ,
1708
- config , beanDesc .findJsonValueAccessor ()),
1707
+ deser = new EnumDeserializer (constructEnumResolver (enumClass , config , beanDesc ),
1709
1708
config .isEnabled (MapperFeature .ACCEPT_CASE_INSENSITIVE_ENUMS ),
1710
1709
constructEnumNamingStrategyResolver (config , enumClass , beanDesc .getClassInfo ())
1711
1710
);
@@ -1914,7 +1913,7 @@ private KeyDeserializer _createEnumKeyDeserializer(DeserializationContext ctxt,
1914
1913
return StdKeyDeserializers .constructDelegatingKeyDeserializer (config , type , valueDesForKey );
1915
1914
}
1916
1915
}
1917
- EnumResolver enumRes = constructEnumResolver (enumClass , config , beanDesc . findJsonValueAccessor () );
1916
+ EnumResolver enumRes = constructEnumResolver (enumClass , config , beanDesc );
1918
1917
EnumResolver byEnumNamingResolver = constructEnumNamingStrategyResolver (config , enumClass , beanDesc .getClassInfo ());
1919
1918
1920
1919
// May have @JsonCreator for static factory method
@@ -2412,14 +2411,15 @@ protected JavaType resolveMemberAndTypeAnnotations(DeserializationContext ctxt,
2412
2411
}
2413
2412
2414
2413
protected EnumResolver constructEnumResolver (Class <?> enumClass ,
2415
- DeserializationConfig config , AnnotatedMember jsonValueAccessor )
2414
+ DeserializationConfig config , BeanDescription beanDesc )
2416
2415
{
2417
- if (jsonValueAccessor != null ) {
2416
+ AnnotatedMember jvAcc = beanDesc .findJsonValueAccessor ();
2417
+ if (jvAcc != null ) {
2418
2418
if (config .canOverrideAccessModifiers ()) {
2419
- ClassUtil .checkAndFixAccess (jsonValueAccessor .getMember (),
2419
+ ClassUtil .checkAndFixAccess (jvAcc .getMember (),
2420
2420
config .isEnabled (MapperFeature .OVERRIDE_PUBLIC_ACCESS_MODIFIERS ));
2421
2421
}
2422
- return EnumResolver .constructUsingMethod (config , enumClass , jsonValueAccessor );
2422
+ return EnumResolver .constructUsingMethod (config , enumClass , jvAcc );
2423
2423
}
2424
2424
// 14-Mar-2016, tatu: We used to check `DeserializationFeature.READ_ENUMS_USING_TO_STRING`
2425
2425
// here, but that won't do: it must be dynamically changeable...
0 commit comments