public class TransactionalEhcacheEntityRegionAccessStrategy extends Object implements EntityRegionAccessStrategy
| Modifier and Type | Field and Description |
|---|---|
protected T |
region
The wrapped Hibernate cache region.
|
protected Settings |
settings
The settings for this persistence unit.
|
| Constructor and Description |
|---|
TransactionalEhcacheEntityRegionAccessStrategy(EhcacheEntityRegion region,
net.sf.ehcache.Ehcache ehcache,
Settings settings)
Construct a new entity region access strategy.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
afterInsert(Object key,
Object value,
Object version)
Called after an item has been inserted (after the transaction completes),
instead of calling release().
|
boolean |
afterUpdate(Object key,
Object value,
Object currentVersion,
Object previousVersion,
SoftLock lock)
Called after an item has been updated (after the transaction completes),
instead of calling release().
|
void |
evict(Object key)
Remove the given mapping without regard to transactional safety
|
void |
evictAll()
Remove all mappings without regard to transactional safety
|
Object |
get(Object key,
long txTimestamp)
Attempt to retrieve an object from the cache.
|
EntityRegion |
getRegion()
Get the wrapped entity cache region
|
boolean |
insert(Object key,
Object value,
Object version)
Called after an item has been inserted (before the transaction completes),
instead of calling evict().
|
SoftLock |
lockItem(Object key,
Object version)
We are going to attempt to update/delete the keyed object.
|
SoftLock |
lockRegion()
Region locks are not supported.
|
boolean |
putFromLoad(Object key,
Object value,
long txTimestamp,
Object version)
This method is a placeholder for method signatures supplied by interfaces pulled in further down the class
hierarchy.
|
boolean |
putFromLoad(Object key,
Object value,
long txTimestamp,
Object version,
boolean minimalPutOverride)
This method is a placeholder for method signatures supplied by interfaces pulled in further down the class
hierarchy.
|
void |
remove(Object key)
A no-op since this is an asynchronous cache access strategy.
|
void |
removeAll()
Called to evict data from the entire region
|
void |
unlockItem(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)
Region locks are not supported - perform a cache clear as a precaution.
|
boolean |
update(Object key,
Object value,
Object currentVersion,
Object previousVersion)
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, waitevict, evictAll, lockRegion, putFromLoad, removeAll, unlockRegionprotected final T extends EhcacheTransactionalDataRegion region
protected final Settings settings
public TransactionalEhcacheEntityRegionAccessStrategy(EhcacheEntityRegion region, net.sf.ehcache.Ehcache ehcache, Settings settings)
region - the Hibernate region.ehcache - the cache.settings - the Hibernate settings.public boolean afterInsert(Object key, Object value, Object version)
afterInsert in interface EntityRegionAccessStrategykey - The item keyvalue - The itemversion - The item's version valuepublic boolean afterUpdate(Object key, Object value, Object currentVersion, Object previousVersion, SoftLock lock)
afterUpdate in interface EntityRegionAccessStrategykey - The item keyvalue - The itemcurrentVersion - The item's current version valuepreviousVersion - The item's previous version valuelock - The lock previously obtained from RegionAccessStrategy.lockItem(java.lang.Object, java.lang.Object)public Object get(Object key, long txTimestamp) throws CacheException
get in interface RegionAccessStrategykey - The key of the item to be retrieved.txTimestamp - a timestamp prior to the transaction start timeCacheException - Propogated from underlying Regionpublic EntityRegion getRegion()
getRegion in interface EntityRegionAccessStrategypublic boolean insert(Object key, Object value, Object version) throws CacheException
insert in interface EntityRegionAccessStrategykey - The item keyvalue - The itemversion - The item's version valueCacheException - Propogated from underlying Regionpublic SoftLock lockItem(Object key, Object version) throws CacheException
RegionAccessStrategy.unlockItem(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 RegionAccessStrategykey - The key of the item to lockversion - The item's current version valueCacheException - Propogated from underlying Regionpublic boolean putFromLoad(Object key, Object value, long txTimestamp, Object version, boolean minimalPutOverride) throws CacheException
putFromLoad in interface RegionAccessStrategykey - The item keyvalue - The itemtxTimestamp - a timestamp prior to the transaction start timeversion - the item version numberminimalPutOverride - Explicit minimalPut flagCacheException - Propogated from underlying RegionRegionAccessStrategy.putFromLoad(java.lang.Object, java.lang.Object, long, java.lang.Object, boolean),
RegionAccessStrategy.putFromLoad(java.lang.Object, java.lang.Object, long, java.lang.Object, boolean)public void remove(Object key) throws CacheException
remove in interface RegionAccessStrategykey - The key of the item to removeCacheException - Propogated from underlying RegionRegionAccessStrategy.remove(java.lang.Object),
RegionAccessStrategy.remove(java.lang.Object)public void unlockItem(Object key, SoftLock lock) throws CacheException
unlockItem in interface RegionAccessStrategykey - The item keylock - The lock previously obtained from RegionAccessStrategy.lockItem(java.lang.Object, java.lang.Object)CacheException - Propogated from underlying Regionpublic boolean update(Object key, Object value, Object currentVersion, Object previousVersion) throws CacheException
update in interface EntityRegionAccessStrategykey - The item keyvalue - The itemcurrentVersion - The item's current version valuepreviousVersion - The item's previous version valueCacheException - Propogated from underlying Regionpublic final boolean putFromLoad(Object key, Object value, long txTimestamp, Object version) throws CacheException
public final SoftLock lockRegion()
nullRegionAccessStrategy.lockRegion(),
RegionAccessStrategy.lockRegion()public final void unlockRegion(SoftLock lock) throws CacheException
public final void removeAll()
throws CacheException
CacheException - Propogated from underlying RegionRegionAccessStrategy.removeAll(),
RegionAccessStrategy.removeAll()public final void evict(Object key) throws CacheException
public final void evictAll()
throws CacheException
CacheExceptionRegionAccessStrategy.evictAll(),
RegionAccessStrategy.evictAll()Copyright © 2001-2013 Red Hat, Inc. All Rights Reserved.