Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 package com.fasterxml.jackson.annotation;
 
Definition of API used for constructing POJO from Object Identifiers (as annotated using JsonIdentityInfo).

Since:
2.4
public interface ObjectIdResolver {
    
Method called when a POJO is deserialized and has an Object Identifier. Method exists so that implementation can keep track of existing object in json stream that could be useful for further resolution.

Parameters:
id The Object Identifer
ob The POJO associated to that Identifier
    void bindItem(IdKey idObject pojo);

    
Method called when deserialization encounters the given Object Identifier and requires the POJO associated with it.

Parameters:
id The Object Identifier
Returns:
The POJO, or null if unable to resolve.
    Object resolveId(IdKey id);

    
Factory method called to create a new instance to use for deserialization: needed since resolvers may have state (a pool of objects).

Note that actual type of 'context' is com.fasterxml.jackson.databind.DeserializationContext, but can not be declared here as type itself (as well as call to this object) comes from databind package.

Parameters:
context Deserialization context object used (of type com.fasterxml.jackson.databind.DeserializationContext ; may be needed by more complex resolvers to access contextual information such as configuration.
    ObjectIdResolver newForDeserialization(Object context);

    
Method called to check whether this resolver instance can be used for Object Ids of specific resolver type; determination is based by passing a configured "blueprint" (prototype) instance; from which the actual instances are created (using newForDeserialization(java.lang.Object)).

Returns:
True if this instance can be used as-is; false if not
    boolean canUseFor(ObjectIdResolver resolverType);
New to GrepCode? Check out our FAQ X