Class AbstractBeanJsonDeserializer<T>
java.lang.Object
org.dominokit.jacksonapt.JsonDeserializer<T>
org.dominokit.jacksonapt.deser.bean.AbstractBeanJsonDeserializer<T>
- Direct Known Subclasses:
AbstractDelegationBeanJsonDeserializer,AbstractObjectBeanJsonDeserializer,AbstractSerializableBeanJsonDeserializer
public abstract class AbstractBeanJsonDeserializer<T> extends JsonDeserializer<T>
Base implementation of
JsonDeserializer for beans.- Version:
- $Id: $
- Author:
- Nicolas Morel
-
Field Summary
Fields Modifier and Type Field Description protected InstanceBuilder<T>instanceBuilder -
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractBeanJsonDeserializer()Constructor for AbstractBeanJsonDeserializer. -
Method Summary
Modifier and Type Method Description protected booleancanDeserialize()canDeserializeTdeserializeInline(JsonReader reader, JsonDeserializationContext ctx, JsonDeserializerParameters params, IdentityDeserializationInfo identityInfo, TypeDeserializationInfo typeInfo, java.lang.String type, java.util.Map<java.lang.String,java.lang.String> bufferedProperties)TdeserializeWrapped(JsonReader reader, JsonDeserializationContext ctx, JsonDeserializerParameters params, IdentityDeserializationInfo identityInfo, TypeDeserializationInfo typeInfo, java.lang.String typeInformation)TdoDeserialize(JsonReader reader, JsonDeserializationContext ctx, JsonDeserializerParameters params)Deserializes a non-null JSON input into an object.abstract java.lang.ClassgetDeserializedType()getDeserializedTypeAbstractBeanJsonDeserializer<T>getDeserializer()protected AnySetterDeserializer<T,?>initAnySetterDeserializer()Initialize theAnySetterDeserializer.protected MapLike<BackReferenceProperty<T,?>>initBackReferenceDeserializers()Initialize theMapLikecontaining the back reference deserializers.protected MapLike<BeanPropertyDeserializer<T,?>>initDeserializers()Initialize theMapLikecontaining the property deserializers.protected IdentityDeserializationInfo<T>initIdentityInfo()Initialize theIdentityDeserializationInfo.protected java.util.Set<java.lang.String>initIgnoredProperties()Initialize theSetcontaining the ignored property names.protected InstanceBuilder<T>initInstanceBuilder()Initialize theInstanceBuilder.protected java.util.Map<java.lang.Class,SubtypeDeserializer>initMapSubtypeClassToDeserializer()Initialize theMapcontaining theSubtypeDeserializer.protected java.util.Set<java.lang.String>initRequiredProperties()Initialize theSetcontaining the required property names.protected TypeDeserializationInfo<T>initTypeInfo()Initialize theTypeDeserializationInfo.protected booleanisDefaultIgnoreUnknown()Whether encountering of unknown properties should result in a failure (by throwing aJsonDeserializationException) or not.voidsetBackReference(java.lang.String referenceName, java.lang.Object reference, T value, JsonDeserializationContext ctx)Set the back reference.Methods inherited from class org.dominokit.jacksonapt.JsonDeserializer
deserialize, deserialize, deserializeNullValueMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Field Details
-
instanceBuilder
-
-
Constructor Details
-
AbstractBeanJsonDeserializer
protected AbstractBeanJsonDeserializer()Constructor for AbstractBeanJsonDeserializer.
-
-
Method Details
-
initInstanceBuilder
Initialize theInstanceBuilder. Returns null if the class isn't instantiable.- Returns:
- a
InstanceBuilderobject.
-
initDeserializers
Initialize theMapLikecontaining the property deserializers. Returns an empty map if there are no properties to deserialize.- Returns:
- a
MapLikeobject.
-
initBackReferenceDeserializers
Initialize theMapLikecontaining the back reference deserializers. Returns an empty map if there are no back reference on the bean.- Returns:
- a
MapLikeobject.
-
initIgnoredProperties
protected java.util.Set<java.lang.String> initIgnoredProperties()Initialize theSetcontaining the ignored property names. Returns an empty set if there are no ignored properties.- Returns:
- a
Setobject.
-
initRequiredProperties
protected java.util.Set<java.lang.String> initRequiredProperties()Initialize theSetcontaining the required property names. Returns an empty set if there are no required properties.- Returns:
- a
Setobject.
-
initIdentityInfo
Initialize theIdentityDeserializationInfo. Returns null if there is noJsonIdentityInfoannotation on bean.- Returns:
- a
IdentityDeserializationInfoobject.
-
initTypeInfo
Initialize theTypeDeserializationInfo. Returns null if there is noJsonTypeInfoannotation on bean.- Returns:
- a
TypeDeserializationInfoobject.
-
initMapSubtypeClassToDeserializer
Initialize theMapcontaining theSubtypeDeserializer. Returns an empty map if the bean has no subtypes.- Returns:
- a
Mapobject.
-
initAnySetterDeserializer
Initialize theAnySetterDeserializer. Returns null if there is no method annoted withJsonAnySetteron bean.- Returns:
- a
AnySetterDeserializerobject.
-
isDefaultIgnoreUnknown
protected boolean isDefaultIgnoreUnknown()Whether encountering of unknown properties should result in a failure (by throwing aJsonDeserializationException) or not.- Returns:
- a boolean.
-
getDeserializedType
public abstract java.lang.Class getDeserializedType()getDeserializedType
- Returns:
- a
Classobject.
-
doDeserialize
public T doDeserialize(JsonReader reader, JsonDeserializationContext ctx, JsonDeserializerParameters params)Deserializes a non-null JSON input into an object.- Specified by:
doDeserializein classJsonDeserializer<T>- Parameters:
reader-JsonReaderused to read the JSON inputctx- Context for the full deserialization processparams- Parameters for this deserialization- Returns:
- the deserialized object
-
canDeserialize
protected boolean canDeserialize()canDeserialize
- Returns:
- a boolean.
-
deserializeWrapped
public T deserializeWrapped(JsonReader reader, JsonDeserializationContext ctx, JsonDeserializerParameters params, IdentityDeserializationInfo identityInfo, TypeDeserializationInfo typeInfo, java.lang.String typeInformation) -
deserializeInline
public final T deserializeInline(JsonReader reader, JsonDeserializationContext ctx, JsonDeserializerParameters params, IdentityDeserializationInfo identityInfo, TypeDeserializationInfo typeInfo, java.lang.String type, java.util.Map<java.lang.String,java.lang.String> bufferedProperties)Deserializes all the properties of the bean. The
JsonReadermust be in a json object. -
getDeserializer
-
setBackReference
public void setBackReference(java.lang.String referenceName, java.lang.Object reference, T value, JsonDeserializationContext ctx)Set the back reference.- Overrides:
setBackReferencein classJsonDeserializer<T>- Parameters:
referenceName- name of the referencereference- reference to setvalue- value to set the reference to.ctx- Context for the full deserialization process
-