Class ContainerDeserializerBase<T>
- All Implemented Interfaces:
NullValueProvider,ValueInstantiator.Gettable,Serializable
- Direct Known Subclasses:
CollectionDeserializer,EnumMapDeserializer,MapDeserializer,MapEntryDeserializer,ObjectArrayDeserializer,StringCollectionDeserializer
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class com.fasterxml.jackson.databind.JsonDeserializer
JsonDeserializer.None -
Method Summary
Modifier and TypeMethodDescriptionfindBackReference(String refName) Method needed byBeanDeserializerFactoryto properly link managed- and back-reference pairs.abstract JsonDeserializer<Object> Accesor for deserializer use for deserializing content values.Accessor for declared type of contained value elements; either exact type, or one of its supertypes.This method may be called in conjunction with calls toJsonDeserializer.getEmptyValue(DeserializationContext), to check whether it needs to be called just once (static values), or each time empty value is needed.Method called to determine value to be used for "empty" values (most commonly when deserializing from empty JSON Strings).Exact structured type this deserializer handles, if known.supportsUpdate(DeserializationConfig config) Introspection method that may be called to see whether deserializer supports update of an existing value (aka "merging") or not.Methods inherited from class com.fasterxml.jackson.databind.deser.std.StdDeserializer
deserializeWithType, getValueClass, getValueInstantiator, getValueType, handledTypeMethods inherited from class com.fasterxml.jackson.databind.JsonDeserializer
deserialize, deserialize, deserializeWithType, getAbsentValue, getDelegatee, getEmptyValue, getKnownPropertyNames, getNullAccessPattern, getNullValue, getNullValue, getObjectIdReader, isCachable, logicalType, replaceDelegatee, unwrappingDeserializerMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.fasterxml.jackson.databind.deser.ValueInstantiator.Gettable
getValueInstantiator
-
Method Details
-
getValueType
Description copied from class:StdDeserializerExact structured type this deserializer handles, if known.- Overrides:
getValueTypein classStdDeserializer<T>
-
supportsUpdate
Description copied from class:JsonDeserializerIntrospection method that may be called to see whether deserializer supports update of an existing value (aka "merging") or not. Return value should either beBoolean.FALSEif update is not supported at all (immutable values);Boolean.TRUEif update should usually work (regular POJOs, for example), ornullif this is either not known, or may sometimes work.Information gathered is typically used to either prevent merging update for property (either by skipping, if based on global defaults; or by exception during deserializer construction if explicit attempt made) if
Boolean.FALSEreturned, or inclusion ifBoolean.TRUEis specified. If "unknown" case (nullreturned) behavior is to exclude property if global defaults used; or to allow if explicit per-type or property merging is defined.Default implementation returns
nullto allow explicit per-type or per-property attempts.- Overrides:
supportsUpdatein classJsonDeserializer<T>
-
findBackReference
Description copied from class:JsonDeserializerMethod needed byBeanDeserializerFactoryto properly link managed- and back-reference pairs.- Overrides:
findBackReferencein classJsonDeserializer<T>
-
getContentType
Accessor for declared type of contained value elements; either exact type, or one of its supertypes. -
getContentDeserializer
Accesor for deserializer use for deserializing content values. -
getEmptyAccessPattern
Description copied from class:JsonDeserializerThis method may be called in conjunction with calls toJsonDeserializer.getEmptyValue(DeserializationContext), to check whether it needs to be called just once (static values), or each time empty value is needed.- Overrides:
getEmptyAccessPatternin classJsonDeserializer<T>
-
getEmptyValue
Description copied from class:JsonDeserializerMethod called to determine value to be used for "empty" values (most commonly when deserializing from empty JSON Strings). Usually this is same asJsonDeserializer.getNullValue(com.fasterxml.jackson.databind.DeserializationContext)(which in turn is usually simply Java null), but it can be overridden for specific types. Or, if type should never be converted from empty String, method can also throw an exception.This method may be called once, or multiple times, depending on what
JsonDeserializer.getEmptyAccessPattern()returns.Default implementation simply calls
JsonDeserializer.getNullValue(com.fasterxml.jackson.databind.DeserializationContext)and returns value.- Overrides:
getEmptyValuein classJsonDeserializer<T>- Throws:
JsonMappingException
-