Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  package com.fasterxml.jackson.databind.deser;
  
Abstract class that defines API used by com.fasterxml.jackson.databind.DeserializationContext to construct actual com.fasterxml.jackson.databind.JsonDeserializer instances (which are then cached by context and/or dedicated cache).

Since there are multiple broad categories of deserializers, there are multiple factory methods:

 
 public abstract class DeserializerFactory
 {
     protected final static Deserializers[] NO_DESERIALIZERS = new Deserializers[0];
 
     /*
     /********************************************************
     /* Configuration handling
     /********************************************************
      */

    
Convenience method for creating a new factory instance with additional deserializer provider.
 
     public abstract DeserializerFactory withAdditionalDeserializers(Deserializers additional);

    
Convenience method for creating a new factory instance with additional KeyDeserializers.
 
     public abstract DeserializerFactory withAdditionalKeyDeserializers(KeyDeserializers additional);
    
    
Convenience method for creating a new factory instance with additional BeanDeserializerModifier.
 
     public abstract DeserializerFactory withDeserializerModifier(BeanDeserializerModifier modifier);

    
Convenience method for creating a new factory instance with additional com.fasterxml.jackson.databind.AbstractTypeResolver.
 
     public abstract DeserializerFactory withAbstractTypeResolver(AbstractTypeResolver resolver);

    
Convenience method for creating a new factory instance with additional ValueInstantiators.
 
     public abstract DeserializerFactory withValueInstantiators(ValueInstantiators instantiators);
     
     /*
     /**********************************************************
     /* Basic DeserializerFactory API:
     /**********************************************************
      */

    
Method that can be called to try to resolve an abstract type (interface, abstract class) into a concrete type, or at least something "more concrete" (abstract class instead of interface). Will either return passed type, or a more specific type.
 
     public abstract JavaType mapAbstractType(DeserializationConfig configJavaType type)
         throws JsonMappingException;

    
Method that is to find all creators (constructors, factory methods) for the bean type to deserialize.
 
            BeanDescription beanDesc)
        throws JsonMappingException;
    
    
Method called to create (or, for completely immutable deserializers, reuse) a deserializer that can convert JSON content into values of specified Java "bean" (POJO) type. At this point it is known that the type is not otherwise recognized as one of structured types (array, Collection, Map) or a well-known JDK type (enum, primitives/wrappers, String); this method only gets called if other options are exhausted. This also means that this method can be overridden to add support for custom types.

Parameters:
type Type to be deserialized
            JavaType typeBeanDescription beanDesc)
        throws JsonMappingException;

    
Method called to create a deserializer that will use specified Builder class for building value instances.

Since:
2.0
    		DeserializationContext ctxtJavaType typeBeanDescription beanDesc,
    		Class<?> builderClass)
        throws JsonMappingException;
    
    
Method called to create (or, for completely immutable deserializers, reuse) a deserializer that can convert JSON content into values of specified Java type.

Parameters:
type Type to be deserialized
            ArrayType typeBeanDescription beanDesc)
        throws JsonMappingException;
            CollectionType typeBeanDescription beanDesc)
        throws JsonMappingException;
            CollectionLikeType typeBeanDescription beanDesc)
        throws JsonMappingException;
    
            JavaType typeBeanDescription beanDesc)
        throws JsonMappingException;
            MapType typeBeanDescription beanDesc)
        throws JsonMappingException;
            MapLikeType typeBeanDescription beanDesc)
        throws JsonMappingException;

    
Method called to create and return a deserializer that can construct JsonNode(s) from JSON content.
            JavaType typeBeanDescription beanDesc)
        throws JsonMappingException;

    
Method called to find if factory knows how to create a key deserializer for specified type; currently this means checking if a module has registered possible deserializers.

Returns:
Key deserializer to use for specified type, if one found; null if not (and default key deserializer should be used)
            JavaType type)
        throws JsonMappingException;
    
    
Method called to find and create a type information deserializer for given base type, if one is needed. If not needed (no polymorphic handling configured for type), should return null.

Note that this method is usually only directly called for values of container (Collection, array, Map) types and root values, but not for bean property values.

Parameters:
baseType Declared base type of the value to deserializer (actual deserializer type will be this type or its subtype)
Returns:
Type deserializer to use for given base type, if one is needed; null if not.
            JavaType baseType)
        throws JsonMappingException;
New to GrepCode? Check out our FAQ X