## Uses of Class
com.fasterxml.jackson.databind.deser.DeserializerFactory

Packages that use DeserializerFactory
com.fasterxml.jackson.databind: Basic data binding (mapping) functionality that allows for reading JSON content into Java Objects (POJOs) and JSON Trees (`JsonNode`), as well as writing Java Objects and trees as JSON.
com.fasterxml.jackson.databind.deser: Contains implementation classes of deserialization part of data binding.

### Uses of DeserializerFactory in com.fasterxml.jackson.databind

Fields in com.fasterxml.jackson.databind declared as DeserializerFactory
`protected DeserializerFactory` DeserializationContext.`_factory` Read-only factory instance; exposed to let owners (`ObjectMapper`, `ObjectReader`) access it.

Methods in com.fasterxml.jackson.databind that return DeserializerFactory
`DeserializerFactory` DeserializationContext.`getFactory()` Method for getting current `DeserializerFactory`.

Constructors in com.fasterxml.jackson.databind with parameters of type DeserializerFactory
Constructor and Description
`DeserializationContext(DeserializationContext src, DeserializerFactory factory)`
`DeserializationContext(DeserializerFactory df, DeserializerCache cache)`

### Uses of DeserializerFactory in com.fasterxml.jackson.databind.deser

Subclasses of DeserializerFactory in com.fasterxml.jackson.databind.deser
`class` `BasicDeserializerFactory` Abstract factory base class that can provide deserializers for standard JDK classes, including collection classes and simple heuristics for "upcasting" common collection interface types (such as `Collection`).
`class` `BeanDeserializerFactory` Concrete deserializer factory class that adds full Bean deserializer construction logic using class introspection.

Methods in com.fasterxml.jackson.databind.deser that return DeserializerFactory
`abstract DeserializerFactory` DeserializerFactory.`withAbstractTypeResolver(AbstractTypeResolver resolver)` Convenience method for creating a new factory instance with additional `AbstractTypeResolver`.
`DeserializerFactory` BasicDeserializerFactory.`withAbstractTypeResolver(AbstractTypeResolver resolver)` Convenience method for creating a new factory instance with additional `AbstractTypeResolver`.
`abstract DeserializerFactory` DeserializerFactory.`withAdditionalDeserializers(Deserializers additional)` Convenience method for creating a new factory instance with additional deserializer provider.
`DeserializerFactory` BasicDeserializerFactory.`withAdditionalDeserializers(Deserializers additional)` Convenience method for creating a new factory instance with additional deserializer provider.
`abstract DeserializerFactory` DeserializerFactory.`withAdditionalKeyDeserializers(KeyDeserializers additional)` Convenience method for creating a new factory instance with additional `KeyDeserializers`.
`DeserializerFactory` BasicDeserializerFactory.`withAdditionalKeyDeserializers(KeyDeserializers additional)` Convenience method for creating a new factory instance with additional `KeyDeserializers`.
`DeserializerFactory` BeanDeserializerFactory.`withConfig(DeserializerFactoryConfig config)` Method used by module registration functionality, to construct a new bean deserializer factory with different configuration settings.
`protected abstract DeserializerFactory` BasicDeserializerFactory.`withConfig(DeserializerFactoryConfig config)`
`abstract DeserializerFactory` DeserializerFactory.`withDeserializerModifier(BeanDeserializerModifier modifier)` Convenience method for creating a new factory instance with additional `BeanDeserializerModifier`.
`DeserializerFactory` BasicDeserializerFactory.`withDeserializerModifier(BeanDeserializerModifier modifier)` Convenience method for creating a new factory instance with additional `BeanDeserializerModifier`.
`abstract DeserializerFactory` DeserializerFactory.`withValueInstantiators(ValueInstantiators instantiators)` Convenience method for creating a new factory instance with additional `ValueInstantiators`.
`DeserializerFactory` BasicDeserializerFactory.`withValueInstantiators(ValueInstantiators instantiators)` Convenience method for creating a new factory instance with additional `ValueInstantiators`.

Methods in com.fasterxml.jackson.databind.deser with parameters of type DeserializerFactory
`protected JsonDeserializer<Object>` DeserializerCache.`_createAndCache2(DeserializationContext ctxt, DeserializerFactory factory, JavaType type)` Deprecated. Since 2.18 use version of _createAndCache2 that takes `isCustom` flag
`protected JsonDeserializer<Object>` DeserializerCache.`_createAndCache2(DeserializationContext ctxt, DeserializerFactory factory, JavaType type, boolean isCustom)`
`protected JsonDeserializer<Object>` DeserializerCache.`_createAndCacheValueDeserializer(DeserializationContext ctxt, DeserializerFactory factory, JavaType type)` Method that will try to create a deserializer for given type, and resolve and cache it if necessary
`protected JsonDeserializer<Object>` DeserializerCache.`_createDeserializer(DeserializationContext ctxt, DeserializerFactory factory, JavaType type)` Method that does the heavy lifting of checking for per-type annotations, find out full type, and figure out which actual factory method to call.
`protected JsonDeserializer<?>` DeserializerCache.`_createDeserializer2(DeserializationContext ctxt, DeserializerFactory factory, JavaType type, BeanDescription beanDesc)`
`KeyDeserializer` DeserializerCache.`findKeyDeserializer(DeserializationContext ctxt, DeserializerFactory factory, JavaType type)` Method called to get hold of a deserializer to use for deserializing keys for `Map`.
`JsonDeserializer<Object>` DeserializerCache.`findValueDeserializer(DeserializationContext ctxt, DeserializerFactory factory, JavaType propertyType)` Method called to get hold of a deserializer for a value of given type; or if no such deserializer can be found, a default handler (which may do a best-effort generic serialization or just simply throw an exception when invoked).
`boolean` DeserializerCache.`hasValueDeserializerFor(DeserializationContext ctxt, DeserializerFactory factory, JavaType type)` Method called to find out whether provider would be able to find a deserializer for given type, using a root reference (i.e. not through fields or membership in an array or collection)
`abstract DefaultDeserializationContext` DefaultDeserializationContext.`with(DeserializerFactory factory)` Fluent factory method used for constructing a blueprint instance with different factory
`DefaultDeserializationContext` DefaultDeserializationContext.Impl.`with(DeserializerFactory factory)`

Constructors in com.fasterxml.jackson.databind.deser with parameters of type DeserializerFactory
Constructor and Description
`DefaultDeserializationContext(DefaultDeserializationContext src, DeserializerFactory factory)`
`DefaultDeserializationContext(DeserializerFactory df, DeserializerCache cache)` Constructor that will pass specified deserializer factory and cache: cache may be null (in which case default implementation will be used), factory cannot be null
`Impl(DeserializerFactory df)` Default constructor for a blueprint object, which will use the standard `DeserializerCache`, given factory.