Java 类com.fasterxml.jackson.databind.deser.std.EnumDeserializer 实例源码

项目:codec    文件:CodecBeanDeserializerModifier.java   
@Override public JsonDeserializer<?> modifyEnumDeserializer(DeserializationConfig config,
                                                            JavaType type,
                                                            BeanDescription beanDesc,
                                                            JsonDeserializer<?> deserializer) {
    JsonDeserializer<?> delegatee = deserializer.getDelegatee();
    if (delegatee != null) {
        JsonDeserializer<?> replacementDelegatee = modifyEnumDeserializer(config, type, beanDesc, delegatee);
        return deserializer.replaceDelegatee(replacementDelegatee);
    } else if (modifyEnum && deserializer.getClass().equals(EnumDeserializer.class)) {
        EnumResolver enumResolver =
                EnumResolver.constructUnsafe(type.getRawClass(), config.getAnnotationIntrospector());
        return new CaseIgnoringEnumDeserializer(enumResolver);
    } else {
        return deserializer;
    }
}