Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  package com.fasterxml.jackson.databind.cfg;
  
Helper class used for handling details of creating handler instances (things like com.fasterxml.jackson.databind.JsonSerializers, com.fasterxml.jackson.databind.JsonDeserializers, various type handlers) of specific types. Actual handler type has been resolved at this point, so instantiator is strictly responsible for providing a configured instance by constructing and configuring a new instance, or possibly by recycling a shared instance. One use case is that of allowing dependency injection, which would otherwise be difficult to do.

Custom instances are allowed to return null to indicate that caller should use the default instantiation handling (which just means calling no-argument constructor via reflection).

Care has to be taken to ensure that if instance returned is shared, it will be thread-safe; caller will not synchronize access to returned instances.

 
 public abstract class HandlerInstantiator
 {
     /*
     /**********************************************************
     /* Public API
     /**********************************************************
      */

    
Method called to get an instance of deserializer of specified type.

Parameters:
config Deserialization configuration in effect
annotated Element (Class, Method, Field, constructor parameter) that had annotation defining class of deserializer to construct (to allow implementation use information from other annotations)
deserClass Class of deserializer instance to return
Returns:
Deserializer instance to use
 
     public abstract JsonDeserializer<?> deserializerInstance(DeserializationConfig config,
             Annotated annotatedClass<?> deserClass);

    
Method called to get an instance of key deserializer of specified type.

Parameters:
config Deserialization configuration in effect
annotated Element (Class, Method, Field, constructor parameter) that had annotation defining class of key deserializer to construct (to allow implementation use information from other annotations)
keyDeserClass Class of key deserializer instance to return
Returns:
Key deserializer instance to use
 
             Annotated annotatedClass<?> keyDeserClass);
    
    
Method called to get an instance of serializer of specified type.

Parameters:
config Serialization configuration in effect
annotated Element (Class, Method, Field) that had annotation defining class of serializer to construct (to allow implementation use information from other annotations)
serClass Class of serializer instance to return
Returns:
Serializer instance to use
 
     public abstract JsonSerializer<?> serializerInstance(SerializationConfig config,
             Annotated annotatedClass<?> serClass);

    
Method called to get an instance of TypeResolverBuilder of specified type.

Parameters:
config Mapper configuration in effect (either SerializationConfig or DeserializationConfig, depending on when instance is being constructed)
annotated annotated Element (Class, Method, Field) that had annotation defining class of builder to construct (to allow implementation use information from other annotations)
builderClass Class of builder instance to return
Returns:
TypeResolverBuilder instance to use
 
     public abstract TypeResolverBuilder<?> typeResolverBuilderInstance(MapperConfig<?> config,
             Annotated annotatedClass<?> builderClass);

    
Method called to get an instance of TypeIdResolver of specified type.

Parameters:
config Mapper configuration in effect (either SerializationConfig or DeserializationConfig, depending on when instance is being constructed)
annotated annotated Element (Class, Method, Field) that had annotation defining class of resolver to construct (to allow implementation use information from other annotations)
resolverClass Class of resolver instance to return
Returns:
TypeResolverBuilder instance to use
    public abstract TypeIdResolver typeIdResolverInstance(MapperConfig<?> config,
            Annotated annotatedClass<?> resolverClass);

    
Method called to construct an instance of ValueInstantiator of specified type.
            Annotated annotatedClass<?> resolverClass) {
        return null;
    }

    
    
Method called to construct a ObjectIdHandler instance of specified type.

Since:
2.0
            Annotated annotatedClass<?> implClass) {
        return null;
    }

    
Method called to construct a NamingStrategy instance used for specified class.

Since:
2.1
            Annotated annotatedClass<?> implClass) {
        return null;
    }
New to GrepCode? Check out our FAQ X