Top Description Fields Constructors Methods
org.hibernate.cache.impl.bridge

public Class EntityAccessStrategyAdapter

extends Object
implements EntityRegionAccessStrategy
Class Inheritance
All Implemented Interfaces
org.hibernate.cache.access.EntityRegionAccessStrategy
Imports
org.hibernate.cache.CacheConcurrencyStrategy, .EntityRegion, .CacheException, org.hibernate.cache.access.EntityRegionAccessStrategy, .SoftLock, org.hibernate.cfg.Settings

Adapter specifically bridging EntityRegionAccessStrategy to CacheConcurrencyStrategy.
Author
Steve Ebersole

Field Summary

Modifier and TypeField and Description
private final CacheConcurrencyStrategy
ccs

Deprecated as a consequence of CacheConcurrencyStrategy being deprecated.
private final EntityRegion
private final Settings

Constructor Summary

AccessConstructor and Description
public
EntityAccessStrategyAdapter(EntityRegion region, CacheConcurrencyStrategy ccs, Settings settings)

Deprecated as a consequence of CacheConcurrencyStrategy being deprecated.

Method Summary

Modifier and TypeMethod and Description
public boolean
afterInsert(Object
The item key
key
,
Object
The item
value
,
Object
The item's version value
version
)

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.afterInsert.

Called after an item has been inserted (after the transaction completes), instead of calling release().
public boolean
afterUpdate(Object
The item key
key
,
Object
The item
value
,
Object
The item's current version value
currentVersion
,
Object
The item's previous version value
previousVersion
,
SoftLock
The lock previously obtained from lockItem
lock
)

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.afterUpdate.

Called after an item has been updated (after the transaction completes), instead of calling release().
public void
public void
evict(Object
The key of the item to remove
key
)

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.evict.

Forcibly evict an item from the cache immediately without regard for transaction isolation.
public void
evictAll()

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.evictAll.

Forcibly evict all items from the cache immediately without regard for transaction isolation.
public Object
get(Object
The key of the item to be retrieved.
key
,
long
a timestamp prior to the transaction start time
txTimestamp
)

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.get.

Attempt to retrieve an object from the cache.
public EntityRegion
getRegion()

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.getRegion.

Get the wrapped entity cache region
public boolean
insert(Object
The item key
key
,
Object
The item
value
,
Object
The item's version value
version
)

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.insert.

Called after an item has been inserted (before the transaction completes), instead of calling evict().
public SoftLock
lockItem(Object
The key of the item to lock
key
,
Object
The item's current version value
version
)

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.lockItem.

We are going to attempt to update/delete the keyed object.
public SoftLock
public boolean
putFromLoad(Object
The item key
key
,
Object
The item
value
,
long
a timestamp prior to the transaction start time
txTimestamp
,
Object
the item version number
version
)

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.putFromLoad.

Attempt to cache an object, after loading from the database.
public boolean
putFromLoad(Object
The item key
key
,
Object
The item
value
,
long
a timestamp prior to the transaction start time
txTimestamp
,
Object
the item version number
version
,
boolean
Explicit minimalPut flag
minimalPutOverride
)

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.putFromLoad.

Attempt to cache an object, after loading from the database, explicitly specifying the minimalPut behavior.
public void
remove(Object
The key of the item to remove
key
)

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.remove.

Called after an item has become stale (before the transaction completes).
public void
removeAll()

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.removeAll.

Called to evict data from the entire region
public void
unlockItem(Object
The item key
key
,
SoftLock
The lock previously obtained from lockItem
lock
)

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.unlockItem.

Called when we have finished the attempted update/delete (which may or may not have been successful), after transaction completion.
public void
unlockRegion(SoftLock
The lock previously obtained from lockRegion
lock
)

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.unlockRegion.

Called after we have finished the attempted invalidation of the entire region
public boolean
update(Object
The item key
key
,
Object
The item
value
,
Object
The item's current version value
currentVersion
,
Object
The item's previous version value
previousVersion
)

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.update.

Called after an item has been updated (before the transaction completes), instead of calling evict().
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

ccsback to summary
private final CacheConcurrencyStrategy ccs

Deprecated

as a consequence of CacheConcurrencyStrategy being deprecated. See corresponding docs for further information.

regionback to summary
private final EntityRegion region
settingsback to summary
private final Settings settings

Constructor Detail

EntityAccessStrategyAdapterback to summary
public EntityAccessStrategyAdapter(EntityRegion region, CacheConcurrencyStrategy ccs, Settings settings)

Deprecated

as a consequence of CacheConcurrencyStrategy being deprecated. See corresponding docs for further information.

Method Detail

afterInsertback to summary
public boolean afterInsert(Object key, Object value, Object version) throws CacheException

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.afterInsert.

Doc from org.hibernate.cache.access.EntityRegionAccessStrategy.afterInsert.

Called after an item has been inserted (after the transaction completes), instead of calling release(). This method is used by "asynchronous" concurrency strategies.

Parameters
key:Object

The item key

value:Object

The item

version:Object

The item's version value

Returns:boolean

Were the contents of the cache actual changed by this operation?

Exceptions
CacheException:
Propogated from underlying org.hibernate.cache.Region
afterUpdateback to summary
public boolean afterUpdate(Object key, Object value, Object currentVersion, Object previousVersion, SoftLock lock) throws CacheException

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.afterUpdate.

Doc from org.hibernate.cache.access.EntityRegionAccessStrategy.afterUpdate.

Called after an item has been updated (after the transaction completes), instead of calling release(). This method is used by "asynchronous" concurrency strategies.

Parameters
key:Object

The item key

value:Object

The item

currentVersion:Object

The item's current version value

previousVersion:Object

The item's previous version value

lock:SoftLock

The lock previously obtained from lockItem

Returns:boolean

Were the contents of the cache actual changed by this operation?

Exceptions
CacheException:
Propogated from underlying org.hibernate.cache.Region
destroyback to summary
public void destroy()
evictback to summary
public void evict(Object key) throws CacheException

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.evict.

Doc from org.hibernate.cache.access.EntityRegionAccessStrategy.evict.

Forcibly evict an item from the cache immediately without regard for transaction isolation.

Parameters
key:Object

The key of the item to remove

Exceptions
CacheException:
Propogated from underlying org.hibernate.cache.Region
evictAllback to summary
public void evictAll() throws CacheException

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.evictAll.

Doc from org.hibernate.cache.access.EntityRegionAccessStrategy.evictAll.

Forcibly evict all items from the cache immediately without regard for transaction isolation.

Exceptions
CacheException:
Propogated from underlying org.hibernate.cache.Region
getback to summary
public Object get(Object key, long txTimestamp) throws CacheException

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.get.

Doc from org.hibernate.cache.access.EntityRegionAccessStrategy.get.

Attempt to retrieve an object from the cache. Mainly used in attempting to resolve entities/collections from the second level cache.

Parameters
key:Object

The key of the item to be retrieved.

txTimestamp:long

a timestamp prior to the transaction start time

Returns:Object

the cached object or null

Exceptions
CacheException:
Propogated from underlying org.hibernate.cache.Region
getRegionback to summary
public EntityRegion getRegion()

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.getRegion.

Doc from org.hibernate.cache.access.EntityRegionAccessStrategy.getRegion.

Get the wrapped entity cache region

Returns:EntityRegion

The underlying region

insertback to summary
public boolean insert(Object key, Object value, Object version) throws CacheException

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.insert.

Doc from org.hibernate.cache.access.EntityRegionAccessStrategy.insert.

Called after an item has been inserted (before the transaction completes), instead of calling evict(). This method is used by "synchronous" concurrency strategies.

Parameters
key:Object

The item key

value:Object

The item

version:Object

The item's version value

Returns:boolean

Were the contents of the cache actual changed by this operation?

Exceptions
CacheException:
Propogated from underlying org.hibernate.cache.Region
lockItemback to summary
public SoftLock lockItem(Object key, Object version) throws CacheException

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.lockItem.

Doc from org.hibernate.cache.access.EntityRegionAccessStrategy.lockItem.

We are going to attempt to update/delete the keyed object. This method is used by "asynchronous" concurrency strategies.

The returned object must be passed back to release(), to release the lock. Concurrency strategies which do not support client-visible locks may silently return null.

Parameters
key:Object

The key of the item to lock

version:Object

The item's current version value

Returns:SoftLock

A representation of our lock on the item; or null.

Exceptions
CacheException:
Propogated from underlying org.hibernate.cache.Region
lockRegionback to summary
public SoftLock lockRegion() throws CacheException

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.lockRegion.

Doc from org.hibernate.cache.access.EntityRegionAccessStrategy.lockRegion.

Lock the entire region

Returns:SoftLock

A representation of our lock on the item; or null.

Exceptions
CacheException:
Propogated from underlying org.hibernate.cache.Region
putFromLoadback to summary
public boolean putFromLoad(Object key, Object value, long txTimestamp, Object version) throws CacheException

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.putFromLoad.

Doc from org.hibernate.cache.access.EntityRegionAccessStrategy.putFromLoad.

Attempt to cache an object, after loading from the database.

Parameters
key:Object

The item key

value:Object

The item

txTimestamp:long

a timestamp prior to the transaction start time

version:Object

the item version number

Returns:boolean

true if the object was successfully cached

Exceptions
CacheException:
Propogated from underlying org.hibernate.cache.Region
putFromLoadback to summary
public boolean putFromLoad(Object key, Object value, long txTimestamp, Object version, boolean minimalPutOverride) throws CacheException

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.putFromLoad.

Doc from org.hibernate.cache.access.EntityRegionAccessStrategy.putFromLoad.

Attempt to cache an object, after loading from the database, explicitly specifying the minimalPut behavior.

Parameters
key:Object

The item key

value:Object

The item

txTimestamp:long

a timestamp prior to the transaction start time

version:Object

the item version number

minimalPutOverride:boolean

Explicit minimalPut flag

Returns:boolean

true if the object was successfully cached

Exceptions
CacheException:
Propogated from underlying org.hibernate.cache.Region
removeback to summary
public void remove(Object key) throws CacheException

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.remove.

Doc from org.hibernate.cache.access.EntityRegionAccessStrategy.remove.

Called after an item has become stale (before the transaction completes). This method is used by "synchronous" concurrency strategies.

Parameters
key:Object

The key of the item to remove

Exceptions
CacheException:
Propogated from underlying org.hibernate.cache.Region
removeAllback to summary
public void removeAll() throws CacheException

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.removeAll.

Doc from org.hibernate.cache.access.EntityRegionAccessStrategy.removeAll.

Called to evict data from the entire region

Exceptions
CacheException:
Propogated from underlying org.hibernate.cache.Region
unlockItemback to summary
public void unlockItem(Object key, SoftLock lock) throws CacheException

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.unlockItem.

Doc from org.hibernate.cache.access.EntityRegionAccessStrategy.unlockItem.

Called when we have finished the attempted update/delete (which may or may not have been successful), after transaction completion. This method is used by "asynchronous" concurrency strategies.

Parameters
key:Object

The item key

lock:SoftLock

The lock previously obtained from lockItem

Exceptions
CacheException:
Propogated from underlying org.hibernate.cache.Region
unlockRegionback to summary
public void unlockRegion(SoftLock lock) throws CacheException

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.unlockRegion.

Doc from org.hibernate.cache.access.EntityRegionAccessStrategy.unlockRegion.

Called after we have finished the attempted invalidation of the entire region

Parameters
lock:SoftLock

The lock previously obtained from lockRegion

Exceptions
CacheException:
Propogated from underlying org.hibernate.cache.Region
updateback to summary
public boolean update(Object key, Object value, Object currentVersion, Object previousVersion) throws CacheException

Implements org.hibernate.cache.access.EntityRegionAccessStrategy.update.

Doc from org.hibernate.cache.access.EntityRegionAccessStrategy.update.

Called after an item has been updated (before the transaction completes), instead of calling evict(). This method is used by "synchronous" concurrency strategies.

Parameters
key:Object

The item key

value:Object

The item

currentVersion:Object

The item's current version value

previousVersion:Object

The item's previous version value

Returns:boolean

Were the contents of the cache actual changed by this operation?

Exceptions
CacheException:
Propogated from underlying org.hibernate.cache.Region