|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.hibernate.cache.ehcache.internal.nonstop.NonstopAwareNaturalIdRegionAccessStrategy
public class NonstopAwareNaturalIdRegionAccessStrategy
Implementation of NaturalIdRegionAccessStrategy
that handles NonStopCacheException
using
HibernateNonstopCacheExceptionHandler
Constructor Summary | |
---|---|
NonstopAwareNaturalIdRegionAccessStrategy(NaturalIdRegionAccessStrategy actualStrategy,
HibernateNonstopCacheExceptionHandler hibernateNonstopExceptionHandler)
Constructor accepting the actual NaturalIdRegionAccessStrategy and the HibernateNonstopCacheExceptionHandler |
Method Summary | |
---|---|
boolean |
afterInsert(Object key,
Object value)
Called after an item has been inserted (after the transaction completes), instead of calling release(). |
boolean |
afterUpdate(Object key,
Object value,
SoftLock lock)
Called after an item has been updated (after the transaction completes), instead of calling release(). |
void |
evict(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. |
Object |
get(Object key,
long txTimestamp)
Attempt to retrieve an object from the cache. |
NaturalIdRegion |
getRegion()
Get the wrapped naturalId cache region |
boolean |
insert(Object key,
Object value)
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()
Lock the entire region |
boolean |
putFromLoad(Object key,
Object value,
long txTimestamp,
Object version)
Attempt to cache an object, after loading from the database. |
boolean |
putFromLoad(Object key,
Object value,
long txTimestamp,
Object version,
boolean minimalPutOverride)
Attempt to cache an object, after loading from the database, explicitly specifying the minimalPut behavior. |
void |
remove(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(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(Object key,
Object value)
Called after an item has been updated (before the transaction completes), instead of calling evict(). |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public NonstopAwareNaturalIdRegionAccessStrategy(NaturalIdRegionAccessStrategy actualStrategy, HibernateNonstopCacheExceptionHandler hibernateNonstopExceptionHandler)
NaturalIdRegionAccessStrategy
and the HibernateNonstopCacheExceptionHandler
actualStrategy
- hibernateNonstopExceptionHandler
- Method Detail |
---|
public boolean insert(Object key, Object value) throws CacheException
NaturalIdRegionAccessStrategy
insert
in interface NaturalIdRegionAccessStrategy
key
- The item keyvalue
- The item
CacheException
- Propogated from underlying Region
public boolean afterInsert(Object key, Object value) throws CacheException
NaturalIdRegionAccessStrategy
afterInsert
in interface NaturalIdRegionAccessStrategy
key
- The item keyvalue
- The item
CacheException
- Propogated from underlying Region
public boolean update(Object key, Object value) throws CacheException
NaturalIdRegionAccessStrategy
update
in interface NaturalIdRegionAccessStrategy
key
- The item keyvalue
- The item
CacheException
- Propogated from underlying Region
public boolean afterUpdate(Object key, Object value, SoftLock lock) throws CacheException
NaturalIdRegionAccessStrategy
afterUpdate
in interface NaturalIdRegionAccessStrategy
key
- The item keyvalue
- The itemlock
- The lock previously obtained from RegionAccessStrategy.lockItem(java.lang.Object, java.lang.Object)
CacheException
- Propogated from underlying Region
public NaturalIdRegion getRegion()
getRegion
in interface NaturalIdRegionAccessStrategy
EntityRegionAccessStrategy.getRegion()
public void evict(Object key) throws CacheException
evict
in interface RegionAccessStrategy
key
- The key of the item to remove
CacheException
- Propogated from underlying Region
RegionAccessStrategy.evict(java.lang.Object)
public void evictAll() throws CacheException
evictAll
in interface RegionAccessStrategy
CacheException
- Propogated from underlying Region
RegionAccessStrategy.evictAll()
public Object get(Object key, long txTimestamp) throws CacheException
get
in interface RegionAccessStrategy
key
- The key of the item to be retrieved.txTimestamp
- a timestamp prior to the transaction start time
CacheException
- Propogated from underlying Region
RegionAccessStrategy.get(java.lang.Object, long)
public 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 RegionAccessStrategy
key
- The key of the item to lockversion
- The item's current version value
CacheException
- Propogated from underlying Region
RegionAccessStrategy.lockItem(java.lang.Object, java.lang.Object)
public SoftLock lockRegion() throws CacheException
lockRegion
in interface RegionAccessStrategy
CacheException
- Propogated from underlying Region
RegionAccessStrategy.lockRegion()
public boolean putFromLoad(Object key, Object value, long txTimestamp, Object version, boolean minimalPutOverride) throws CacheException
putFromLoad
in interface RegionAccessStrategy
key
- The item keyvalue
- The itemtxTimestamp
- a timestamp prior to the transaction start timeversion
- the item version numberminimalPutOverride
- Explicit minimalPut flag
CacheException
- Propogated from underlying Region
RegionAccessStrategy.putFromLoad(java.lang.Object, java.lang.Object, long, java.lang.Object,
boolean)
public boolean putFromLoad(Object key, Object value, long txTimestamp, Object version) throws CacheException
putFromLoad
in interface RegionAccessStrategy
key
- The item keyvalue
- The itemtxTimestamp
- a timestamp prior to the transaction start timeversion
- the item version number
CacheException
- Propogated from underlying Region
RegionAccessStrategy.putFromLoad(java.lang.Object, java.lang.Object, long, java.lang.Object)
public void remove(Object key) throws CacheException
remove
in interface RegionAccessStrategy
key
- The key of the item to remove
CacheException
- Propogated from underlying Region
RegionAccessStrategy.remove(java.lang.Object)
public void removeAll() throws CacheException
removeAll
in interface RegionAccessStrategy
CacheException
- Propogated from underlying Region
RegionAccessStrategy.removeAll()
public void unlockItem(Object key, SoftLock lock) throws CacheException
unlockItem
in interface RegionAccessStrategy
key
- The item keylock
- The lock previously obtained from RegionAccessStrategy.lockItem(java.lang.Object, java.lang.Object)
CacheException
- Propogated from underlying Region
RegionAccessStrategy.unlockItem(java.lang.Object, org.hibernate.cache.spi.access.SoftLock)
public void unlockRegion(SoftLock lock) throws CacheException
unlockRegion
in interface RegionAccessStrategy
lock
- The lock previously obtained from RegionAccessStrategy.lockRegion()
CacheException
- Propogated from underlying Region
RegionAccessStrategy.unlockRegion(org.hibernate.cache.spi.access.SoftLock)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |