Class NonStrictReadWriteEhcacheCollectionRegionAccessStrategy
- java.lang.Object
-
- net.sf.ehcache.hibernate.strategy.NonStrictReadWriteEhcacheCollectionRegionAccessStrategy
-
- All Implemented Interfaces:
org.hibernate.cache.access.CollectionRegionAccessStrategy
public class NonStrictReadWriteEhcacheCollectionRegionAccessStrategy extends java.lang.Object implements org.hibernate.cache.access.CollectionRegionAccessStrategyEhcache specific non-strict read/write collection region access strategy- Author:
- Chris Dennis
-
-
Constructor Summary
Constructors Constructor Description NonStrictReadWriteEhcacheCollectionRegionAccessStrategy(EhcacheCollectionRegion region, org.hibernate.cfg.Settings settings)Create a non-strict read/write access strategy accessing the given collection region.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidevict(java.lang.Object key)Remove the given mapping without regard to transactional safetyvoidevictAll()Remove all mappings without regard to transactional safetyjava.lang.Objectget(java.lang.Object key, long txTimestamp)org.hibernate.cache.CollectionRegiongetRegion()org.hibernate.cache.access.SoftLocklockItem(java.lang.Object key, java.lang.Object version)Since this is a non-strict read/write strategy item locking is not used.org.hibernate.cache.access.SoftLocklockRegion()Region locks are not supported.booleanputFromLoad(java.lang.Object key, java.lang.Object value, long txTimestamp, java.lang.Object version)This method is a placeholder for method signatures supplied by interfaces pulled in further down the class hierarchy.booleanputFromLoad(java.lang.Object key, java.lang.Object value, long txTimestamp, java.lang.Object version, boolean minimalPutOverride)This method is a placeholder for method signatures supplied by interfaces pulled in further down the class hierarchy.voidremove(java.lang.Object key)A no-op since this is an asynchronous cache access strategy.voidremoveAll()Called to evict data from the entire regionvoidunlockItem(java.lang.Object key, org.hibernate.cache.access.SoftLock lock)Since this is a non-strict read/write strategy item locking is not used.voidunlockRegion(org.hibernate.cache.access.SoftLock lock)Region locks are not supported - perform a cache clear as a precaution.
-
-
-
Field Detail
-
region
protected final T extends EhcacheTransactionalDataRegion region
The wrapped Hibernate cache region.
-
settings
protected final org.hibernate.cfg.Settings settings
The settings for this persistence unit.
-
-
Constructor Detail
-
NonStrictReadWriteEhcacheCollectionRegionAccessStrategy
public NonStrictReadWriteEhcacheCollectionRegionAccessStrategy(EhcacheCollectionRegion region, org.hibernate.cfg.Settings settings)
Create a non-strict read/write access strategy accessing the given collection region.
-
-
Method Detail
-
getRegion
public org.hibernate.cache.CollectionRegion getRegion()
- Specified by:
getRegionin interfaceorg.hibernate.cache.access.CollectionRegionAccessStrategy
-
get
public java.lang.Object get(java.lang.Object key, long txTimestamp) throws org.hibernate.cache.CacheException- Specified by:
getin interfaceorg.hibernate.cache.access.CollectionRegionAccessStrategy- Throws:
org.hibernate.cache.CacheException
-
putFromLoad
public boolean putFromLoad(java.lang.Object key, java.lang.Object value, long txTimestamp, java.lang.Object version, boolean minimalPutOverride) throws org.hibernate.cache.CacheExceptionThis method is a placeholder for method signatures supplied by interfaces pulled in further down the class hierarchy.- Specified by:
putFromLoadin interfaceorg.hibernate.cache.access.CollectionRegionAccessStrategy- Throws:
org.hibernate.cache.CacheException- See Also:
EntityRegionAccessStrategy.putFromLoad(java.lang.Object, java.lang.Object, long, java.lang.Object, boolean),CollectionRegionAccessStrategy.putFromLoad(java.lang.Object, java.lang.Object, long, java.lang.Object, boolean)
-
lockItem
public org.hibernate.cache.access.SoftLock lockItem(java.lang.Object key, java.lang.Object version) throws org.hibernate.cache.CacheExceptionSince this is a non-strict read/write strategy item locking is not used.- Specified by:
lockItemin interfaceorg.hibernate.cache.access.CollectionRegionAccessStrategy- Throws:
org.hibernate.cache.CacheException
-
unlockItem
public void unlockItem(java.lang.Object key, org.hibernate.cache.access.SoftLock lock) throws org.hibernate.cache.CacheExceptionSince this is a non-strict read/write strategy item locking is not used.- Specified by:
unlockItemin interfaceorg.hibernate.cache.access.CollectionRegionAccessStrategy- Throws:
org.hibernate.cache.CacheException
-
remove
public void remove(java.lang.Object key) throws org.hibernate.cache.CacheExceptionA no-op since this is an asynchronous cache access strategy.- Specified by:
removein interfaceorg.hibernate.cache.access.CollectionRegionAccessStrategy- Throws:
org.hibernate.cache.CacheException- See Also:
EntityRegionAccessStrategy.remove(java.lang.Object),CollectionRegionAccessStrategy.remove(java.lang.Object)
-
putFromLoad
public final boolean putFromLoad(java.lang.Object key, java.lang.Object value, long txTimestamp, java.lang.Object version) throws org.hibernate.cache.CacheExceptionThis method is a placeholder for method signatures supplied by interfaces pulled in further down the class hierarchy.- Throws:
org.hibernate.cache.CacheException- See Also:
EntityRegionAccessStrategy.putFromLoad(java.lang.Object, java.lang.Object, long, java.lang.Object),CollectionRegionAccessStrategy.putFromLoad(java.lang.Object, java.lang.Object, long, java.lang.Object)
-
lockRegion
public final org.hibernate.cache.access.SoftLock lockRegion()
Region locks are not supported.- Returns:
null- See Also:
EntityRegionAccessStrategy.lockRegion(),CollectionRegionAccessStrategy.lockRegion()
-
unlockRegion
public final void unlockRegion(org.hibernate.cache.access.SoftLock lock) throws org.hibernate.cache.CacheExceptionRegion locks are not supported - perform a cache clear as a precaution.- Throws:
org.hibernate.cache.CacheException- See Also:
EntityRegionAccessStrategy.unlockRegion(org.hibernate.cache.access.SoftLock),CollectionRegionAccessStrategy.unlockRegion(org.hibernate.cache.access.SoftLock)
-
removeAll
public final void removeAll() throws org.hibernate.cache.CacheExceptionCalled to evict data from the entire region- Throws:
org.hibernate.cache.CacheException- Propogated from underlyingRegion- See Also:
EntityRegionAccessStrategy.removeAll(),CollectionRegionAccessStrategy.removeAll()
-
evict
public final void evict(java.lang.Object key) throws org.hibernate.cache.CacheExceptionRemove the given mapping without regard to transactional safety- Throws:
org.hibernate.cache.CacheException- See Also:
EntityRegionAccessStrategy.evict(java.lang.Object),CollectionRegionAccessStrategy.evict(java.lang.Object)
-
evictAll
public final void evictAll() throws org.hibernate.cache.CacheExceptionRemove all mappings without regard to transactional safety- Throws:
org.hibernate.cache.CacheException- See Also:
EntityRegionAccessStrategy.evictAll(),CollectionRegionAccessStrategy.evictAll()
-
-