public class EntityNonStrictReadWriteAccess extends AbstractEntityDataAccess
EntityDataAccess
using the AccessType.NONSTRICT_READ_WRITE
access type.Constructor and Description |
---|
EntityNonStrictReadWriteAccess(DomainDataRegion domainDataRegion,
CacheKeysFactory keysFactory,
DomainDataStorageAccess storageAccess,
EntityDataCachingConfig entityAccessConfig) |
Modifier and Type | Method and Description |
---|---|
boolean |
afterInsert(SharedSessionContractImplementor session,
Object key,
Object value,
Object version)
Called afterQuery an item has been inserted (afterQuery the transaction completes),
instead of calling release().
|
boolean |
afterUpdate(SharedSessionContractImplementor session,
Object key,
Object value,
Object currentVersion,
Object previousVersion,
SoftLock lock)
Called afterQuery an item has been updated (afterQuery the transaction completes),
instead of calling release().
|
AccessType |
getAccessType()
The type of access implemented
|
boolean |
insert(SharedSessionContractImplementor session,
Object key,
Object value,
Object version)
Called afterQuery an item has been inserted (beforeQuery the transaction completes),
instead of calling evict().
|
void |
remove(SharedSessionContractImplementor session,
Object key)
Called afterQuery an item has become stale (beforeQuery the transaction completes).
|
void |
unlockItem(SharedSessionContractImplementor session,
Object key,
SoftLock lock)
Since this is a non-strict read/write strategy item locking is not used.
|
boolean |
update(SharedSessionContractImplementor session,
Object key,
Object value,
Object currentVersion,
Object previousVersion)
Called afterQuery an item has been updated (beforeQuery the transaction completes),
instead of calling evict().
|
generateCacheKey, getCacheKeyId, lockItem, lockRegion, unlockRegion
clearCache, contains, destroy, evict, evictAll, get, getRegion, getStorageAccess, putFromLoad, putFromLoad, removeAll
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
contains, evict, evictAll, get, getRegion, putFromLoad, putFromLoad, removeAll
public EntityNonStrictReadWriteAccess(DomainDataRegion domainDataRegion, CacheKeysFactory keysFactory, DomainDataStorageAccess storageAccess, EntityDataCachingConfig entityAccessConfig)
public AccessType getAccessType()
CachedDomainDataAccess
public boolean insert(SharedSessionContractImplementor session, Object key, Object value, Object version)
EntityDataAccess
session
- Current sessionkey
- The item keyvalue
- The itemversion
- The item's version valuepublic boolean afterInsert(SharedSessionContractImplementor session, Object key, Object value, Object version)
EntityDataAccess
session
- Current sessionkey
- The item keyvalue
- The itemversion
- The item's version valuepublic boolean update(SharedSessionContractImplementor session, Object key, Object value, Object currentVersion, Object previousVersion)
EntityDataAccess
session
- Current sessionkey
- The item keyvalue
- The itemcurrentVersion
- The item's current version valuepreviousVersion
- The item's previous version valuepublic boolean afterUpdate(SharedSessionContractImplementor session, Object key, Object value, Object currentVersion, Object previousVersion, SoftLock lock)
EntityDataAccess
session
- Current sessionkey
- The item keyvalue
- The itemcurrentVersion
- The item's current version valuepreviousVersion
- The item's previous version valuelock
- The lock previously obtained from CachedDomainDataAccess.lockItem(org.hibernate.engine.spi.SharedSessionContractImplementor, java.lang.Object, java.lang.Object)
public void unlockItem(SharedSessionContractImplementor session, Object key, SoftLock lock) throws CacheException
unlockItem
in interface CachedDomainDataAccess
unlockItem
in class AbstractEntityDataAccess
session
- Current session.key
- The item keylock
- The lock previously obtained from CachedDomainDataAccess.lockItem(org.hibernate.engine.spi.SharedSessionContractImplementor, java.lang.Object, java.lang.Object)
CacheException
- Propagated from underlying cache providerpublic void remove(SharedSessionContractImplementor session, Object key)
CachedDomainDataAccess
remove
in interface CachedDomainDataAccess
remove
in class AbstractCachedDomainDataAccess
session
- Current session.key
- The key of the item to removeCopyright © 2021 JBoss by Red Hat. All rights reserved.