T
- implementation type of HazelcastRegionpublic class ReadOnlyAccessDelegate<T extends HazelcastRegion> extends NonStrictReadWriteAccessDelegate<T>
cache, hazelcastRegion, log, versionComparator
Constructor and Description |
---|
ReadOnlyAccessDelegate(T hazelcastRegion,
Properties props) |
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().
|
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()
NO-OP
|
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)
This will issue a log warning stating that an attempt was made to unlock a read-only cache region.
|
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().
|
remove
evict, evictAll, get, getHazelcastRegion, putFromLoad, putFromLoad
public ReadOnlyAccessDelegate(T hazelcastRegion, Properties props)
public boolean afterInsert(Object key, Object value, Object version) throws org.hibernate.cache.CacheException
NonStrictReadWriteAccessDelegate
false
since this is a non-strict read/write cache access strategyafterInsert
in interface AccessDelegate<T extends HazelcastRegion>
afterInsert
in class NonStrictReadWriteAccessDelegate<T extends HazelcastRegion>
key
- The item keyvalue
- The itemversion
- The item's version valueorg.hibernate.cache.CacheException
- Propagated from underlying org.hibernate.cache.Region
public boolean afterUpdate(Object key, Object value, Object currentVersion, Object previousVersion, SoftLock lock) throws org.hibernate.cache.CacheException
AccessDelegate
afterUpdate
in interface AccessDelegate<T extends HazelcastRegion>
afterUpdate
in class NonStrictReadWriteAccessDelegate<T extends HazelcastRegion>
key
- The item keyvalue
- The itemcurrentVersion
- The item's current version valuepreviousVersion
- The item's previous version valuelock
- The lock previously obtained from AccessDelegate.lockItem(java.lang.Object, java.lang.Object)
UnsupportedOperationException
org.hibernate.cache.CacheException
- Propagated from underlying org.hibernate.cache.Region
public boolean insert(Object key, Object value, Object version) throws org.hibernate.cache.CacheException
false
since this is an asynchronous cache access strategy.
This cache is asynchronous hence a no-opinsert
in interface AccessDelegate<T extends HazelcastRegion>
insert
in class NonStrictReadWriteAccessDelegate<T extends HazelcastRegion>
key
- The item keyvalue
- The itemversion
- The item's version valueorg.hibernate.cache.CacheException
- Propagated from underlying org.hibernate.cache.Region
public SoftLock lockItem(Object key, Object version) throws org.hibernate.cache.CacheException
AccessDelegate
lockItem
in interface AccessDelegate<T extends HazelcastRegion>
lockItem
in class NonStrictReadWriteAccessDelegate<T extends HazelcastRegion>
key
- The key of the item to lockversion
- The item's current version valueorg.hibernate.cache.CacheException
- Propagated from underlying org.hibernate.cache.Region
public SoftLock lockRegion() throws org.hibernate.cache.CacheException
AbstractAccessDelegate
lockRegion
in interface AccessDelegate<T extends HazelcastRegion>
lockRegion
in class AbstractAccessDelegate<T extends HazelcastRegion>
UnsupportedOperationException
org.hibernate.cache.CacheException
- Propagated from underlying org.hibernate.cache.Region
public void removeAll() throws org.hibernate.cache.CacheException
AccessDelegate
removeAll
in interface AccessDelegate<T extends HazelcastRegion>
removeAll
in class NonStrictReadWriteAccessDelegate<T extends HazelcastRegion>
org.hibernate.cache.CacheException
- Propagated from underlying org.hibernate.cache.Region
public void unlockItem(Object key, SoftLock lock) throws org.hibernate.cache.CacheException
unlockItem
in interface AccessDelegate<T extends HazelcastRegion>
unlockItem
in class NonStrictReadWriteAccessDelegate<T extends HazelcastRegion>
key
- The item keylock
- The lock previously obtained from AccessDelegate.lockItem(java.lang.Object, java.lang.Object)
org.hibernate.cache.CacheException
- Propagated from underlying org.hibernate.cache.Region
public void unlockRegion(SoftLock lock) throws org.hibernate.cache.CacheException
unlockRegion
in interface AccessDelegate<T extends HazelcastRegion>
unlockRegion
in class AbstractAccessDelegate<T extends HazelcastRegion>
lock
- The lock previously obtained from AccessDelegate.lockRegion()
org.hibernate.cache.CacheException
- Propagated from underlying org.hibernate.cache.Region
public boolean update(Object key, Object value, Object currentVersion, Object previousVersion) throws org.hibernate.cache.CacheException
NonStrictReadWriteAccessDelegate
update
in interface AccessDelegate<T extends HazelcastRegion>
update
in class NonStrictReadWriteAccessDelegate<T extends HazelcastRegion>
key
- The item keyvalue
- The itemcurrentVersion
- The item's current version valuepreviousVersion
- The item's previous version valueUnsupportedOperationException
org.hibernate.cache.CacheException
- Propagated from underlying org.hibernate.cache.Region
Copyright © 2016 Hazelcast, Inc.. All Rights Reserved.