Package com.fasterxml.jackson.databind.deser.impl
package com.fasterxml.jackson.databind.deser.impl
Contains those implementation classes of deserialization part of
data binding that are not considered part of public or semi-public
interfaces. Use of these classes by non-core classes is discouraged,
although occasionally this may be necessary.
Note that backwards-compatibility of these classes is not guaranteed
between minor releases (but is between patch releases).
-
ClassesClassDescriptionVariant of
BeanDeserializerused for handling deserialization of POJOs when serialized as JSON Arrays, instead of JSON Objects.Helper class used for storing mapping from property name toSettableBeanPropertyinstances.Container class for storing information on creators (based on annotations, visibility), to be able to build actualValueInstantiatorlater on.A deserializer that stores anErrorcaught during constructing of the deserializer, which needs to be deferred and only during actual attempt to deserialize a value of given type.Helper class that is used to flatten JSON structure when using "external type id" (seeJsonTypeInfo.As.EXTERNAL_PROPERTY).Special bogus "serializer" that will throwMismatchedInputExceptionif an attempt is made to deserialize a value.This concrete sub-class implements property that is set directly assigning to a Field.This sub-class is used to handle special case of value being a non-static inner class.Helper class used to contain logic for deserializing "special" containers fromjava.util.Collectionsandjava.util.Arrays.Container for a set ofValueInstantiators used for certain critical JDK value types, either as performance optimization for initialization time observed by profiling, or due to difficulty in otherwise finding constructors.Wrapper property that is used to handle managed (forward) properties Basically just needs to delegate first to actual forward property, and then to back property.SettableBeanPropertyimplementation that will try to access value of the property first, and if non-null value found, pass that for update (usingJsonDeserializer.deserialize(com.fasterxml.jackson.core.JsonParser, com.fasterxml.jackson.databind.DeserializationContext, Object)) instead of constructing a new value.This concrete sub-class implements property that is set using regular "setter" method.SimpleNullValueProviderthat will return "empty value" specified byJsonDeserializerprovider is constructed with.SimpleNullValueProviderthat will simply return given constant value when a null is encountered; or, with a specially constructed instance (seeNullsConstantProvider.skipper(), indicate the need for special behavior of skipping property altogether (not setting as anything OR throwing exception).SimpleNullValueProviderthat will always throw aInvalidNullExceptionwhen a null is encountered.Object that knows how to deserialize Object Ids.SpecializedSettableBeanPropertyimplementation used for virtual property that represents Object Id that is used for some POJO types (or properties).Object that is used to collect arguments for non-default creator (non-default-constructor, or argument-taking factory method) before creator can be called.Base class for property values that need to be buffered during deserialization.Simple container used for temporarily buffering a set ofPropertyValues.Simple value container for containing information about single Object Id during deserializationThis concrete sub-class implements Collection or Map property that is indirectly by getting the property value and directly modifying it.Simple deserializer that will call configured type deserializer, passing in configured data deserializer, and exposing it all as a simple deserializer.Special bogus "serializer" that will throwMismatchedInputExceptionif an attempt is made to deserialize a value.Object that is responsible for handling acrobatics related to deserializing "unwrapped" values; sets of properties that are embedded (inlined) as properties of parent JSON object.Class that encapsulates details of value injection that occurs before deserialization of a POJO.