public class ReadOnlyNaturalIdRegionAccessStrategy extends java.lang.Object implements NaturalIdRegionAccessStrategy
| Constructor and Description |
|---|
ReadOnlyNaturalIdRegionAccessStrategy(JCacheNaturalIdRegion jCacheNaturalIdRegion) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
afterInsert(SharedSessionContractImplementor session,
java.lang.Object key,
java.lang.Object value)
Called after an item has been inserted (after the transaction completes),
instead of calling release().
|
boolean |
afterUpdate(SharedSessionContractImplementor session,
java.lang.Object key,
java.lang.Object value,
SoftLock lock)
Called after an item has been updated (after the transaction completes),
instead of calling release().
|
void |
evict(java.lang.Object key)
Forcibly evict an item from the cache immediately without regard for transaction
isolation.
|
void |
evictAll()
Forcibly evict all items from the cache immediately without regard for transaction
isolation.
|
java.lang.Object |
generateCacheKey(java.lang.Object[] naturalIdValues,
EntityPersister persister,
SharedSessionContractImplementor session)
To create instances of NaturalIdCacheKey for this region, Hibernate will invoke this method
exclusively so that generated implementations can generate optimised keys.
|
java.lang.Object |
get(SharedSessionContractImplementor session,
java.lang.Object key,
long txTimestamp)
Attempt to retrieve an object from the cache.
|
java.lang.Object[] |
getNaturalIdValues(java.lang.Object cacheKey)
Performs reverse operation to
NaturalIdRegionAccessStrategy.generateCacheKey(Object[], EntityPersister, SharedSessionContractImplementor), returning
the original naturalIdValues. |
R |
getRegion() |
boolean |
insert(SharedSessionContractImplementor session,
java.lang.Object key,
java.lang.Object value)
Called after an item has been inserted (before the transaction completes),
instead of calling evict().
|
SoftLock |
lockItem(SharedSessionContractImplementor session,
java.lang.Object key,
java.lang.Object version)
We are going to attempt to update/delete the keyed object.
|
SoftLock |
lockRegion()
Lock the entire region
|
boolean |
putFromLoad(SharedSessionContractImplementor session,
java.lang.Object key,
java.lang.Object value,
long txTimestamp,
java.lang.Object version)
Attempt to cache an object, after loading from the database.
|
boolean |
putFromLoad(SharedSessionContractImplementor session,
java.lang.Object key,
java.lang.Object value,
long txTimestamp,
java.lang.Object version,
boolean minimalPutOverride)
Attempt to cache an object, after loading from the database, explicitly
specifying the minimalPut behavior.
|
void |
remove(SharedSessionContractImplementor session,
java.lang.Object key)
Called after an item has become stale (before the transaction completes).
|
void |
removeAll()
Called to evict data from the entire region
|
void |
unlockItem(SharedSessionContractImplementor session,
java.lang.Object key,
SoftLock lock)
Called when we have finished the attempted update/delete (which may or
may not have been successful), after transaction completion.
|
void |
unlockRegion(SoftLock lock)
Called after we have finished the attempted invalidation of the entire
region
|
boolean |
update(SharedSessionContractImplementor session,
java.lang.Object key,
java.lang.Object value)
Called after an item has been updated (before the transaction completes),
instead of calling evict().
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetRegionevict, evictAll, get, lockItem, lockRegion, putFromLoad, putFromLoad, remove, removeAll, unlockItem, unlockRegionpublic ReadOnlyNaturalIdRegionAccessStrategy(JCacheNaturalIdRegion jCacheNaturalIdRegion)
public boolean insert(SharedSessionContractImplementor session, java.lang.Object key, java.lang.Object value) throws CacheException
NaturalIdRegionAccessStrategyinsert in interface NaturalIdRegionAccessStrategysession - Current sessionkey - The item keyvalue - The itemCacheException - Propagated from underlying Regionpublic boolean afterInsert(SharedSessionContractImplementor session, java.lang.Object key, java.lang.Object value) throws CacheException
NaturalIdRegionAccessStrategyafterInsert in interface NaturalIdRegionAccessStrategysession - Current sessionkey - The item keyvalue - The itemCacheException - Propagated from underlying Regionpublic boolean update(SharedSessionContractImplementor session, java.lang.Object key, java.lang.Object value) throws CacheException
NaturalIdRegionAccessStrategyupdate in interface NaturalIdRegionAccessStrategysession - Current sessionkey - The item keyvalue - The itemCacheException - Propagated from underlying Regionpublic boolean afterUpdate(SharedSessionContractImplementor session, java.lang.Object key, java.lang.Object value, SoftLock lock) throws CacheException
NaturalIdRegionAccessStrategyafterUpdate in interface NaturalIdRegionAccessStrategysession - Current sessionkey - The item keyvalue - The itemlock - The lock previously obtained from RegionAccessStrategy.lockItem(org.hibernate.engine.spi.SharedSessionContractImplementor, java.lang.Object, java.lang.Object)CacheException - Propogated from underlying Regionpublic java.lang.Object generateCacheKey(java.lang.Object[] naturalIdValues,
EntityPersister persister,
SharedSessionContractImplementor session)
NaturalIdRegionAccessStrategygenerateCacheKey in interface NaturalIdRegionAccessStrategynaturalIdValues - the sequence of values which unequivocally identifies a cached element on this regionpersister - the persister of the element being cachedpublic java.lang.Object[] getNaturalIdValues(java.lang.Object cacheKey)
NaturalIdRegionAccessStrategyNaturalIdRegionAccessStrategy.generateCacheKey(Object[], EntityPersister, SharedSessionContractImplementor), returning
the original naturalIdValues.getNaturalIdValues in interface NaturalIdRegionAccessStrategycacheKey - key returned from NaturalIdRegionAccessStrategy.generateCacheKey(Object[], EntityPersister, SharedSessionContractImplementor)public java.lang.Object get(SharedSessionContractImplementor session, java.lang.Object key, long txTimestamp) throws CacheException
RegionAccessStrategyget in interface RegionAccessStrategysession - Current session.key - The key of the item to be retrieved.txTimestamp - a timestamp prior to the transaction start timeCacheException - Propogated from underlying Regionpublic boolean putFromLoad(SharedSessionContractImplementor session, java.lang.Object key, java.lang.Object value, long txTimestamp, java.lang.Object version) throws CacheException
RegionAccessStrategyputFromLoad in interface RegionAccessStrategysession - Current session.key - The item keyvalue - The itemtxTimestamp - a timestamp prior to the transaction start timeversion - the item version numberCacheException - Propogated from underlying Regionpublic boolean putFromLoad(SharedSessionContractImplementor session, java.lang.Object key, java.lang.Object value, long txTimestamp, java.lang.Object version, boolean minimalPutOverride) throws CacheException
RegionAccessStrategyputFromLoad in interface RegionAccessStrategysession - Current session.key - The item keyvalue - The itemtxTimestamp - a timestamp prior to the transaction start timeversion - the item version numberminimalPutOverride - Explicit minimalPut flagCacheException - Propogated from underlying Regionpublic SoftLock lockItem(SharedSessionContractImplementor session, java.lang.Object key, java.lang.Object version) throws CacheException
RegionAccessStrategyRegionAccessStrategy.unlockItem(org.hibernate.engine.spi.SharedSessionContractImplementor, java.lang.Object, org.hibernate.cache.spi.access.SoftLock), to release the
lock. Concurrency strategies which do not support client-visible
locks may silently return null.lockItem in interface RegionAccessStrategysession - Current session.key - The key of the item to lockversion - The item's current version valueCacheException - Propogated from underlying Regionpublic SoftLock lockRegion() throws CacheException
RegionAccessStrategylockRegion in interface RegionAccessStrategyCacheException - Propogated from underlying Regionpublic void unlockItem(SharedSessionContractImplementor session, java.lang.Object key, SoftLock lock) throws CacheException
RegionAccessStrategyunlockItem in interface RegionAccessStrategysession - Current session.key - The item keylock - The lock previously obtained from RegionAccessStrategy.lockItem(org.hibernate.engine.spi.SharedSessionContractImplementor, java.lang.Object, java.lang.Object)CacheException - Propogated from underlying Regionpublic void unlockRegion(SoftLock lock) throws CacheException
RegionAccessStrategyunlockRegion in interface RegionAccessStrategylock - The lock previously obtained from RegionAccessStrategy.lockRegion()CacheException - Propogated from underlying Regionpublic void remove(SharedSessionContractImplementor session, java.lang.Object key) throws CacheException
RegionAccessStrategyremove in interface RegionAccessStrategykey - The key of the item to removeCacheException - Propogated from underlying Regionpublic void removeAll()
throws CacheException
RegionAccessStrategyremoveAll in interface RegionAccessStrategyCacheException - Propogated from underlying Regionpublic void evict(java.lang.Object key)
throws CacheException
RegionAccessStrategyevict in interface RegionAccessStrategykey - The key of the item to removeCacheException - Propogated from underlying Regionpublic void evictAll()
throws CacheException
RegionAccessStrategyevictAll in interface RegionAccessStrategyCacheException - Propogated from underlying Regionpublic R getRegion()
Copyright © 2001-2018 Red Hat, Inc. All Rights Reserved.