Class BeanDeserializerFactory
- java.lang.Object
-
- com.fasterxml.jackson.databind.deser.DeserializerFactory
-
- com.fasterxml.jackson.databind.deser.BasicDeserializerFactory
-
- com.fasterxml.jackson.databind.deser.BeanDeserializerFactory
-
- All Implemented Interfaces:
java.io.Serializable
public class BeanDeserializerFactory extends BasicDeserializerFactory implements java.io.Serializable
Concrete deserializer factory class that adds full Bean deserializer construction logic using class introspection. Note that factories specifically do not implement any form of caching: aside from configuration they are stateless; caching is implemented by other components.Instances of this class are fully immutable as all configuration is done by using "fluent factories" (methods that construct new factory instances with different configuration, instead of modifying instance).
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static BeanDeserializerFactory
instance
Globally shareable thread-safe instance which has no additional custom deserializers registered
-
Constructor Summary
Constructors Constructor Description BeanDeserializerFactory(DeserializerFactoryConfig config)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description JsonDeserializer<java.lang.Object>
buildBeanDeserializer(DeserializationContext ctxt, JavaType type, BeanDescription beanDesc)
Method that is to actually build a bean deserializer instance.JsonDeserializer<java.lang.Object>
buildThrowableDeserializer(DeserializationContext ctxt, JavaType type, BeanDescription beanDesc)
JsonDeserializer<java.lang.Object>
createBeanDeserializer(DeserializationContext ctxt, JavaType type, BeanDescription beanDesc)
Method thatDeserializerCache
s call to create a new deserializer for types other than Collections, Maps, arrays and enums.JsonDeserializer<java.lang.Object>
createBuilderBasedDeserializer(DeserializationContext ctxt, JavaType valueType, BeanDescription valueBeanDesc, java.lang.Class<?> builderClass)
Method called to create a deserializer that will use specified Builder class for building value instances.DeserializerFactory
withConfig(DeserializerFactoryConfig config)
Method used by module registration functionality, to construct a new bean deserializer factory with different configuration settings.-
Methods inherited from class com.fasterxml.jackson.databind.deser.BasicDeserializerFactory
_valueInstantiatorInstance, createArrayDeserializer, createCollectionDeserializer, createCollectionLikeDeserializer, createEnumDeserializer, createKeyDeserializer, createMapDeserializer, createMapLikeDeserializer, createReferenceDeserializer, createTreeDeserializer, findDefaultDeserializer, findPropertyContentTypeDeserializer, findPropertyTypeDeserializer, findTypeDeserializer, findValueInstantiator, getFactoryConfig, hasExplicitDeserializerFor, mapAbstractType, withAbstractTypeResolver, withAdditionalDeserializers, withAdditionalKeyDeserializers, withDeserializerModifier, withValueInstantiators
-
-
-
-
Field Detail
-
instance
public static final BeanDeserializerFactory instance
Globally shareable thread-safe instance which has no additional custom deserializers registered
-
-
Constructor Detail
-
BeanDeserializerFactory
public BeanDeserializerFactory(DeserializerFactoryConfig config)
-
-
Method Detail
-
withConfig
public DeserializerFactory withConfig(DeserializerFactoryConfig config)
Method used by module registration functionality, to construct a new bean deserializer factory with different configuration settings.
-
createBeanDeserializer
public JsonDeserializer<java.lang.Object> createBeanDeserializer(DeserializationContext ctxt, JavaType type, BeanDescription beanDesc) throws JsonMappingException
Method thatDeserializerCache
s call to create a new deserializer for types other than Collections, Maps, arrays and enums.- Specified by:
createBeanDeserializer
in classDeserializerFactory
type
- Type to be deserialized- Throws:
JsonMappingException
-
createBuilderBasedDeserializer
public JsonDeserializer<java.lang.Object> createBuilderBasedDeserializer(DeserializationContext ctxt, JavaType valueType, BeanDescription valueBeanDesc, java.lang.Class<?> builderClass) throws JsonMappingException
Description copied from class:DeserializerFactory
Method called to create a deserializer that will use specified Builder class for building value instances.- Specified by:
createBuilderBasedDeserializer
in classDeserializerFactory
- Throws:
JsonMappingException
-
buildBeanDeserializer
public JsonDeserializer<java.lang.Object> buildBeanDeserializer(DeserializationContext ctxt, JavaType type, BeanDescription beanDesc) throws JsonMappingException
Method that is to actually build a bean deserializer instance. All basic sanity checks have been done to know that what we have may be a valid bean type, and that there are no default simple deserializers.- Throws:
JsonMappingException
-
buildThrowableDeserializer
public JsonDeserializer<java.lang.Object> buildThrowableDeserializer(DeserializationContext ctxt, JavaType type, BeanDescription beanDesc) throws JsonMappingException
- Throws:
JsonMappingException
-
-