public class MultiPropertyMapper extends Object implements ExtendedPropertyMapper
Modifier and Type | Field and Description |
---|---|
protected Map<PropertyData,PropertyMapper> |
properties |
Constructor and Description |
---|
MultiPropertyMapper() |
Modifier and Type | Method and Description |
---|---|
void |
add(PropertyData propertyData) |
CompositeMapperBuilder |
addComponent(PropertyData propertyData,
Class componentClass) |
void |
addComposite(PropertyData propertyData,
PropertyMapper propertyMapper) |
protected Object |
getAtIndexOrNull(Object[] array,
int index) |
Map<PropertyData,PropertyMapper> |
getProperties() |
Map<String,PropertyData> |
getPropertyDatas() |
boolean |
map(SessionImplementor session,
Map<String,Object> data,
String[] propertyNames,
Object[] newState,
Object[] oldState) |
List<PersistentCollectionChangeData> |
mapCollectionChanges(SessionImplementor session,
String referencingPropertyName,
PersistentCollection newColl,
Serializable oldColl,
Serializable id)
Maps collection changes.
|
void |
mapModifiedFlagsToMapForCollectionChange(String collectionPropertyName,
Map<String,Object> data) |
void |
mapModifiedFlagsToMapFromEntity(SessionImplementor session,
Map<String,Object> data,
Object newObj,
Object oldObj) |
void |
mapToEntityFromMap(EnversService enversService,
Object obj,
Map data,
Object primaryKey,
AuditReaderImplementor versionsReader,
Number revision)
Maps properties from the given map to the given object.
|
boolean |
mapToMapFromEntity(SessionImplementor session,
Map<String,Object> data,
Object newObj,
Object oldObj)
Maps properties to the given map, basing on differences between properties of new and old objects.
|
protected final Map<PropertyData,PropertyMapper> properties
public void add(PropertyData propertyData)
add
in interface SimpleMapperBuilder
public CompositeMapperBuilder addComponent(PropertyData propertyData, Class componentClass)
addComponent
in interface CompositeMapperBuilder
public void addComposite(PropertyData propertyData, PropertyMapper propertyMapper)
addComposite
in interface CompositeMapperBuilder
public boolean map(SessionImplementor session, Map<String,Object> data, String[] propertyNames, Object[] newState, Object[] oldState)
map
in interface ExtendedPropertyMapper
public boolean mapToMapFromEntity(SessionImplementor session, Map<String,Object> data, Object newObj, Object oldObj)
PropertyMapper
mapToMapFromEntity
in interface PropertyMapper
session
- The current session.data
- Data to map to.newObj
- New state of the entity.oldObj
- Old state of the entity.public void mapModifiedFlagsToMapFromEntity(SessionImplementor session, Map<String,Object> data, Object newObj, Object oldObj)
mapModifiedFlagsToMapFromEntity
in interface PropertyMapper
public void mapToEntityFromMap(EnversService enversService, Object obj, Map data, Object primaryKey, AuditReaderImplementor versionsReader, Number revision)
PropertyMapper
mapToEntityFromMap
in interface PropertyMapper
enversService
- The EnversService.obj
- Object to map to.data
- Data to map from.primaryKey
- Primary key of the object to which we map (for relations)versionsReader
- VersionsReader for reading relationsrevision
- Revision at which the object is read, for reading relationspublic void mapModifiedFlagsToMapForCollectionChange(String collectionPropertyName, Map<String,Object> data)
mapModifiedFlagsToMapForCollectionChange
in interface PropertyMapper
public List<PersistentCollectionChangeData> mapCollectionChanges(SessionImplementor session, String referencingPropertyName, PersistentCollection newColl, Serializable oldColl, Serializable id)
PropertyMapper
mapCollectionChanges
in interface PropertyMapper
session
- The current session.referencingPropertyName
- Name of the field, which holds the collection in the entity.newColl
- New collection, after updates.oldColl
- Old collection, before updates.id
- Id of the object owning the collection.public Map<PropertyData,PropertyMapper> getProperties()
getProperties
in interface CompositeMapperBuilder
public Map<String,PropertyData> getPropertyDatas()
Copyright © 2017 JBoss by Red Hat. All rights reserved.