public abstract class TransactionalAccessDelegate extends Object
EntityRegionAccessStrategy
and CollectionRegionAccessStrategy implementations.| Modifier and Type | Field and Description |
|---|---|
protected org.infinispan.AdvancedCache |
cache |
protected static org.infinispan.util.logging.Log |
log |
protected PutFromLoadValidator |
putValidator |
protected BaseRegion |
region |
protected static boolean |
TRACE_ENABLED |
protected org.infinispan.AdvancedCache<Object,Object> |
writeCache |
| Modifier | Constructor and Description |
|---|---|
protected |
TransactionalAccessDelegate(BaseRegion region,
PutFromLoadValidator validator)
Create a new transactional access delegate instance.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
afterInsert(SessionImplementor session,
Object key,
Object value,
Object version)
Called after an item has been inserted (after the transaction completes),
instead of calling release().
|
boolean |
afterUpdate(SessionImplementor session,
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().
|
static TransactionalAccessDelegate |
create(BaseRegion region,
PutFromLoadValidator validator) |
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.
|
abstract boolean |
insert(SessionImplementor session,
Object key,
Object value,
Object version)
Called after an item has been inserted (before the transaction completes),
instead of calling evict().
|
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)
Called when we have finished the attempted update/delete (which may or
may not have been successful), after transaction completion.
|
abstract boolean |
update(SessionImplementor session,
Object key,
Object value,
Object currentVersion,
Object previousVersion)
Called after an item has been updated (before the transaction completes),
instead of calling evict().
|
protected static final org.infinispan.util.logging.Log log
protected static final boolean TRACE_ENABLED
protected final org.infinispan.AdvancedCache cache
protected final BaseRegion region
protected final PutFromLoadValidator putValidator
protected TransactionalAccessDelegate(BaseRegion region, PutFromLoadValidator validator)
region - to control access tovalidator - put from load validatorpublic static TransactionalAccessDelegate create(BaseRegion region, PutFromLoadValidator validator)
public Object get(SessionImplementor session, Object key, long txTimestamp) throws CacheException
session - key - The key of the item to be retrievedtxTimestamp - a timestamp prior to the transaction start timeCacheException - if the cache retrieval failedpublic boolean putFromLoad(SessionImplementor session, Object key, Object value, long txTimestamp, Object version)
session - Current sessionkey - The item keyvalue - The itemtxTimestamp - a timestamp prior to the transaction start timeversion - the item version numberpublic boolean putFromLoad(SessionImplementor session, Object key, Object value, long txTimestamp, Object version, boolean minimalPutOverride) throws CacheException
session - Current sessionkey - The item keyvalue - The itemtxTimestamp - a timestamp prior to the transaction start timeversion - the item version numberminimalPutOverride - Explicit minimalPut flagCacheException - if storing the object failedpublic abstract boolean insert(SessionImplementor session, Object key, Object value, Object version) throws CacheException
session - Current sessionkey - The item keyvalue - The itemversion - The item's version valueCacheException - if the insert failspublic abstract boolean update(SessionImplementor session, Object key, Object value, Object currentVersion, Object previousVersion) throws CacheException
session - Current sessionkey - The item keyvalue - The itemcurrentVersion - The item's current version valuepreviousVersion - The item's previous version valueCacheException - if the update failspublic void remove(SessionImplementor session, Object key) throws CacheException
session - Current sessionkey - The key of the item to removeCacheException - if removing the cached item failspublic void removeAll()
throws CacheException
CacheException - if eviction the region failspublic void evict(Object key) throws CacheException
key - The key of the item to removeCacheException - if evicting the item failspublic void evictAll()
throws CacheException
CacheException - if evicting items failspublic void unlockItem(SessionImplementor session, Object key) throws CacheException
session - key - The item keyCacheException - Propogated from underlying Regionpublic boolean afterInsert(SessionImplementor session, Object key, Object value, Object version)
session - key - The item keyvalue - The itemversion - The item's version valueCacheException - Propagated from underlying Regionpublic boolean afterUpdate(SessionImplementor session, Object key, Object value, Object currentVersion, Object previousVersion, SoftLock lock)
session - key - The item keyvalue - The itemcurrentVersion - The item's current version valuepreviousVersion - The item's previous version valuelock - The lock previously obtained from #lockItemCacheException - Propagated from underlying RegionCopyright © 2001-2015 Red Hat, Inc. All Rights Reserved.