T - Type of Object Identifiers produced.public abstract class ObjectIdGenerator<T> extends Object implements Serializable
JsonIdentityInfo).
 Also defines factory methods used for creating instances
 for serialization, deserialization.| Modifier and Type | Class and Description | 
|---|---|
| static class  | ObjectIdGenerator.IdKeySimple key class that can be used as a key for
 ObjectId-to-POJO mappings, when multiple ObjectId types
 and scopes are used. | 
| Constructor and Description | 
|---|
| ObjectIdGenerator() | 
| Modifier and Type | Method and Description | 
|---|---|
| abstract boolean | canUseFor(ObjectIdGenerator<?> gen)Method called to check whether this generator instance can
 be used for Object Ids of specific generator type and
 scope; determination is based by passing a configured
 "blueprint" (prototype) instance; from which the actual
 instances are created (using  newForSerialization(java.lang.Object)). | 
| abstract ObjectIdGenerator<T> | forScope(Class<?> scope)Factory method to create a blueprint instance for specified
 scope. | 
| abstract T | generateId(Object forPojo)Method used for generating a new Object Identifier to serialize
 for given POJO. | 
| abstract Class<?> | getScope() | 
| boolean | isValidReferencePropertyName(String name,
                            Object parser)Accessor that may be called (after verifying (via  maySerializeAsObject())
 whether given name | 
| abstract ObjectIdGenerator.IdKey | key(Object key)Method for constructing key to use for ObjectId-to-POJO maps. | 
| boolean | maySerializeAsObject()Accessor that needs to be overridden to return  trueif the Object Id may be serialized as JSON Object; used by, for example,
 JSOG handling. | 
| abstract ObjectIdGenerator<T> | newForSerialization(Object context)Factory method called to create a new instance to use for
 serialization: needed since generators may have state
 (next id to produce). | 
public abstract Class<?> getScope()
public abstract boolean canUseFor(ObjectIdGenerator<?> gen)
newForSerialization(java.lang.Object)).public boolean maySerializeAsObject()
true
 if the Object Id may be serialized as JSON Object; used by, for example,
 JSOG handling.
 The reason accessor is needed is because handling such Object Ids is
 more complex and may incur additional buffering or performance overhead,
 avoiding of which makes sense for common case of scalar object ids
 (or native object ids some formats support).
 Default implementation returns false, so needs to be overridden
 by Object-producing generators.
public boolean isValidReferencePropertyName(String name, Object parser)
maySerializeAsObject())
 whether given namename - Name of property to checkparser - Parser that points to property name, in case generator needs
    further verification (note: untyped, because JsonParser is defined
    in `jackson-core`, and this package does not depend on it).public abstract ObjectIdGenerator<T> forScope(Class<?> scope)
public abstract ObjectIdGenerator<T> newForSerialization(Object context)
 Note that actual type of 'context' is
 com.fasterxml.jackson.databind.SerializerProvider,
 but can not be declared here as type itself (as well as call
 to this object) comes from databind package.
context - Serialization context object used (of type
    com.fasterxml.jackson.databind.SerializerProvider;
    may be needed by more complex generators to access contextual
    information such as configuration.public abstract ObjectIdGenerator.IdKey key(Object key)
Copyright © 2008–2016 FasterXML. All rights reserved.