|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.springframework.datastore.engine.EntityPersister org.springframework.datastore.engine.LockableEntityPersister org.springframework.datastore.keyvalue.engine.AbstractKeyValueEntityPesister<Map,Long> org.springframework.datastore.redis.engine.RedisEntityPersister
public class RedisEntityPersister
An EntityPersister
for the Redis NoSQL datastore
Field Summary | |
---|---|
static String |
DISCRIMINATOR
|
Fields inherited from class org.springframework.datastore.keyvalue.engine.AbstractKeyValueEntityPesister |
---|
classMapping, entityFamily |
Fields inherited from class org.springframework.datastore.engine.LockableEntityPersister |
---|
DEFAULT_TIMEOUT |
Fields inherited from class org.springframework.datastore.engine.EntityPersister |
---|
interceptors, proxyFactory, session |
Constructor Summary | |
---|---|
RedisEntityPersister(MappingContext context,
PersistentEntity entity,
RedisSession conn,
RedisTemplate template)
|
Method Summary | |
---|---|
protected Serializable |
convertToNativeKey(Serializable nativeKey)
|
protected RedisEntry |
createNewEntry(String family)
Creates a new entry for the given family. |
Query |
createQuery()
Creates a query for the entity |
protected void |
deleteEntries(String family,
List<Long> keys)
Deletes one or many entries for the given list of Keys |
protected void |
deleteEntry(String family,
Long key)
Deletes a single entry |
protected PersistentEntity |
discriminatePersistentEntity(PersistentEntity persistentEntity,
Map nativeEntry)
Subclasses should override to customize how entities in hierarchies are discriminated |
protected Long |
generateIdentifier(PersistentEntity persistentEntity,
Map entry)
|
protected Long |
generateIdentifier(String family)
|
RedisCollection |
getAllEntityIndex()
|
AssociationIndexer |
getAssociationIndexer(Association oneToMany)
Obtains an indexer for the given association |
String |
getEntityBaseKey()
|
protected Object |
getEntryValue(Map nativeEntry,
String property)
Reads a value for the given key from the native entry |
String |
getFamily()
|
PropertyValueIndexer |
getPropertyIndexer(PersistentProperty property)
Obtains an indexer for a particular property |
String |
getPropertySortKey(PersistentProperty property)
|
RedisTemplate |
getRedisTemplate()
|
boolean |
isLocked(Object o)
Subclasses can override to provide locking semantics |
protected void |
lockEntry(PersistentEntity persistentEntity,
String entityFamily,
Serializable id,
int timeout)
Subclasses can override to provide locking semantics |
protected List<Object> |
retrieveAllEntities(PersistentEntity persistentEntity,
Iterable<Serializable> keys)
Simplistic default implementation of retrieveAllEntities that iterates over each key and retrieves the entities one-by-one. |
protected Map |
retrieveEntry(PersistentEntity persistentEntity,
String family,
Serializable key)
Reads the native form of a Key/value datastore entry. |
protected void |
setEntryValue(Map nativeEntry,
String key,
Object value)
Sets a value on an entry |
protected Long |
storeEntry(PersistentEntity persistentEntity,
Long storeId,
Map nativeEntry)
Stores the native form of a Key/value datastore to the actual data store |
protected void |
unlockEntry(PersistentEntity persistentEntity,
String entityFamily,
Serializable id)
Subclasses to override to provide locking semantics |
protected void |
updateEntry(PersistentEntity persistentEntity,
Long key,
Map nativeEntry)
Updates an existing entry to the actual datastore |
Methods inherited from class org.springframework.datastore.keyvalue.engine.AbstractKeyValueEntityPesister |
---|
createEntityAccess, createEntityAccess, createObjectFromNativeEntry, deleteEntities, deleteEntity, getClassMapping, getEntityFamily, getFamily, getIdentifierName, getKeyspace, inferNativeKey, lock, lock, persistEntities, persistEntity, proxy, readObjectIdentifier, refresh, refreshObjectStateFromNativeEntry, retrieveAllEntities, retrieveEntity, unlock |
Methods inherited from class org.springframework.datastore.engine.EntityPersister |
---|
addEntityInterceptor, delete, delete, getMappingContext, getObjectIdentifier, getPersistentEntity, getProxyFactory, getType, persist, persist, retrieve, retrieveAll, retrieveAll, setEntityInterceptors |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final String DISCRIMINATOR
Constructor Detail |
---|
public RedisEntityPersister(MappingContext context, PersistentEntity entity, RedisSession conn, RedisTemplate template)
Method Detail |
---|
protected RedisEntry createNewEntry(String family)
AbstractKeyValueEntityPesister
createNewEntry
in class AbstractKeyValueEntityPesister<Map,Long>
family
- The family
protected Object getEntryValue(Map nativeEntry, String property)
AbstractKeyValueEntityPesister
getEntryValue
in class AbstractKeyValueEntityPesister<Map,Long>
nativeEntry
- The native entry. Could be a ColumnFamily, a BigTable entity, a Map etc.property
- The property key
protected void setEntryValue(Map nativeEntry, String key, Object value)
AbstractKeyValueEntityPesister
setEntryValue
in class AbstractKeyValueEntityPesister<Map,Long>
nativeEntry
- The native entry such as a BigTable Entity, ColumnFamily etc.key
- The keyvalue
- The valuepublic boolean isLocked(Object o)
AbstractKeyValueEntityPesister
isLocked
in class AbstractKeyValueEntityPesister<Map,Long>
o
- The object
protected void lockEntry(PersistentEntity persistentEntity, String entityFamily, Serializable id, int timeout)
AbstractKeyValueEntityPesister
lockEntry
in class AbstractKeyValueEntityPesister<Map,Long>
persistentEntity
- The PesistentEntity instnaceentityFamily
- The familyid
- The identifertimeout
- The lock timeout in secondsprotected void unlockEntry(PersistentEntity persistentEntity, String entityFamily, Serializable id)
AbstractKeyValueEntityPesister
unlockEntry
in class AbstractKeyValueEntityPesister<Map,Long>
persistentEntity
- The persistent entityentityFamily
- The entity familyid
- The identiferprotected Serializable convertToNativeKey(Serializable nativeKey)
convertToNativeKey
in class AbstractKeyValueEntityPesister<Map,Long>
protected PersistentEntity discriminatePersistentEntity(PersistentEntity persistentEntity, Map nativeEntry)
AbstractKeyValueEntityPesister
discriminatePersistentEntity
in class AbstractKeyValueEntityPesister<Map,Long>
persistentEntity
- The PersistentEntitynativeEntry
- The native entry
protected Map retrieveEntry(PersistentEntity persistentEntity, String family, Serializable key)
AbstractKeyValueEntityPesister
retrieveEntry
in class AbstractKeyValueEntityPesister<Map,Long>
persistentEntity
- The persistent entityfamily
- The familykey
- The key
protected List<Object> retrieveAllEntities(PersistentEntity persistentEntity, Iterable<Serializable> keys)
AbstractKeyValueEntityPesister
retrieveAllEntities
in class AbstractKeyValueEntityPesister<Map,Long>
persistentEntity
- The persist entitykeys
- The keys
protected void updateEntry(PersistentEntity persistentEntity, Long key, Map nativeEntry)
AbstractKeyValueEntityPesister
updateEntry
in class AbstractKeyValueEntityPesister<Map,Long>
persistentEntity
- The PersistentEntitykey
- The key of the object to updatenativeEntry
- The entryprotected Long storeEntry(PersistentEntity persistentEntity, Long storeId, Map nativeEntry)
AbstractKeyValueEntityPesister
storeEntry
in class AbstractKeyValueEntityPesister<Map,Long>
persistentEntity
- The persistent entitynativeEntry
- The native form. Could be a a ColumnFamily, BigTable Entity etc.
protected Long generateIdentifier(PersistentEntity persistentEntity, Map entry)
generateIdentifier
in class AbstractKeyValueEntityPesister<Map,Long>
public RedisCollection getAllEntityIndex()
public String getFamily()
protected Long generateIdentifier(String family)
protected void deleteEntries(String family, List<Long> keys)
AbstractKeyValueEntityPesister
deleteEntries
in class AbstractKeyValueEntityPesister<Map,Long>
family
- The familykeys
- The keysprotected void deleteEntry(String family, Long key)
AbstractKeyValueEntityPesister
deleteEntry
in class AbstractKeyValueEntityPesister<Map,Long>
family
- The familykey
- The keypublic PropertyValueIndexer getPropertyIndexer(PersistentProperty property)
AbstractKeyValueEntityPesister
getPropertyIndexer
in class AbstractKeyValueEntityPesister<Map,Long>
property
- The property to index
public AssociationIndexer getAssociationIndexer(Association oneToMany)
AbstractKeyValueEntityPesister
getAssociationIndexer
in class AbstractKeyValueEntityPesister<Map,Long>
oneToMany
- The association
public Query createQuery()
Persister
public RedisTemplate getRedisTemplate()
public String getEntityBaseKey()
public String getPropertySortKey(PersistentProperty property)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |