public interface RegionAccessStrategy
Modifier and Type | Method and Description |
---|---|
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(SessionImplementor session,
Object key,
long txTimestamp)
Attempt to retrieve an object from the cache.
|
SoftLock |
lockItem(SessionImplementor session,
Object key,
Object version)
We are going to attempt to update/delete the keyed object.
|
SoftLock |
lockRegion()
Lock the entire region
|
boolean |
putFromLoad(SessionImplementor session,
Object key,
Object value,
long txTimestamp,
Object version)
Attempt to cache an object, after loading from the database.
|
boolean |
putFromLoad(SessionImplementor session,
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(SessionImplementor session,
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(SessionImplementor session,
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
|
Object get(SessionImplementor session, Object key, long txTimestamp) throws CacheException
session
- Current session.key
- The key of the item to be retrieved.txTimestamp
- a timestamp prior to the transaction start timeCacheException
- Propogated from underlying Region
boolean putFromLoad(SessionImplementor session, Object key, Object value, long txTimestamp, Object version) throws CacheException
session
- Current session.key
- The item keyvalue
- The itemtxTimestamp
- a timestamp prior to the transaction start timeversion
- the item version numberCacheException
- Propogated from underlying Region
boolean putFromLoad(SessionImplementor session, Object key, Object value, long txTimestamp, Object version, boolean minimalPutOverride) throws CacheException
session
- 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 Region
SoftLock lockItem(SessionImplementor session, Object key, Object version) throws CacheException
unlockItem(org.hibernate.engine.spi.SessionImplementor, 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.session
- Current session.key
- The key of the item to lockversion
- The item's current version valueCacheException
- Propogated from underlying Region
SoftLock lockRegion() throws CacheException
CacheException
- Propogated from underlying Region
void unlockItem(SessionImplementor session, Object key, SoftLock lock) throws CacheException
session
- Current session.key
- The item keylock
- The lock previously obtained from lockItem(org.hibernate.engine.spi.SessionImplementor, java.lang.Object, java.lang.Object)
CacheException
- Propogated from underlying Region
void unlockRegion(SoftLock lock) throws CacheException
lock
- The lock previously obtained from lockRegion()
CacheException
- Propogated from underlying Region
void remove(SessionImplementor session, Object key) throws CacheException
session
- key
- The key of the item to removeCacheException
- Propogated from underlying Region
void removeAll() throws CacheException
CacheException
- Propogated from underlying Region
void evict(Object key) throws CacheException
key
- The key of the item to removeCacheException
- Propogated from underlying Region
void evictAll() throws CacheException
CacheException
- Propogated from underlying Region
Copyright © 2017 JBoss by Red Hat. All rights reserved.