public class PropertyBasedObjectIdGenerator extends ObjectIdGenerators.PropertyGenerator
ObjectIdGenerator.IdKey
Constructor and Description |
---|
PropertyBasedObjectIdGenerator(ObjectIdInfo oid,
BeanPropertyWriter prop) |
Modifier and Type | Method and Description |
---|---|
boolean |
canUseFor(ObjectIdGenerator<?> gen)
We must override this method, to prevent errors when scopes are the same,
but underlying class (on which to access property) is different.
|
ObjectIdGenerator<java.lang.Object> |
forScope(java.lang.Class<?> scope)
Factory method to create a blueprint instance for specified
scope.
|
java.lang.Object |
generateId(java.lang.Object forPojo)
Method used for generating a new Object Identifier to serialize
for given POJO.
|
ObjectIdGenerator.IdKey |
key(java.lang.Object key)
Method for constructing key to use for ObjectId-to-POJO maps.
|
ObjectIdGenerator<java.lang.Object> |
newForSerialization(java.lang.Object context)
Factory method called to create a new instance to use for
serialization: needed since generators may have state
(next id to produce).
|
isValidReferencePropertyName, maySerializeAsObject
public PropertyBasedObjectIdGenerator(ObjectIdInfo oid, BeanPropertyWriter prop)
public boolean canUseFor(ObjectIdGenerator<?> gen)
public java.lang.Object generateId(java.lang.Object forPojo)
ObjectIdGenerator
forPojo
- POJO for which identifier is neededpublic ObjectIdGenerator<java.lang.Object> forScope(java.lang.Class<?> scope)
ObjectIdGenerator
forScope
in class ObjectIdGenerator<java.lang.Object>
public ObjectIdGenerator<java.lang.Object> newForSerialization(java.lang.Object context)
ObjectIdGenerator
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.
newForSerialization
in class ObjectIdGenerator<java.lang.Object>
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 ObjectIdGenerator.IdKey key(java.lang.Object key)
ObjectIdGenerator
key
in class ObjectIdGenerator<java.lang.Object>
"Copyright © 2010 - 2020 Adobe Systems Incorporated. All Rights Reserved"