public class TransactionAwareCacheDecorator extends Object implements org.springframework.cache.Cache
put(java.lang.Object, java.lang.Object) and evict(java.lang.Object) operations with
Spring-managed transactions (through Spring's TransactionSynchronizationManager,
performing the actual cache put/evict operation only in the after-commit phase of a
successful transaction. If no transaction is active, put(java.lang.Object, java.lang.Object) and evict(java.lang.Object)
operations will be performed immediately, as usual.
Use of more aggressive operations such as putIfAbsent(java.lang.Object, java.lang.Object) cannot be deferred
to the after-commit phase of a running transaction. Use these with care.
TransactionAwareCacheManagerProxy| Constructor and Description |
|---|
TransactionAwareCacheDecorator(org.springframework.cache.Cache targetCache)
Create a new TransactionAwareCache for the given target Cache.
|
| Modifier and Type | Method and Description |
|---|---|
void |
clear() |
void |
evict(Object key) |
org.springframework.cache.Cache.ValueWrapper |
get(Object key) |
<T> T |
get(Object key,
Class<T> type) |
String |
getName() |
Object |
getNativeCache() |
void |
put(Object key,
Object value) |
org.springframework.cache.Cache.ValueWrapper |
putIfAbsent(Object key,
Object value) |
public TransactionAwareCacheDecorator(org.springframework.cache.Cache targetCache)
targetCache - the target Cache to decoratepublic String getName()
getName in interface org.springframework.cache.Cachepublic Object getNativeCache()
getNativeCache in interface org.springframework.cache.Cachepublic org.springframework.cache.Cache.ValueWrapper get(Object key)
get in interface org.springframework.cache.Cachepublic <T> T get(Object key, Class<T> type)
get in interface org.springframework.cache.Cachepublic void put(Object key, Object value)
put in interface org.springframework.cache.Cachepublic org.springframework.cache.Cache.ValueWrapper putIfAbsent(Object key, Object value)
putIfAbsent in interface org.springframework.cache.Cachepublic void evict(Object key)
evict in interface org.springframework.cache.Cachepublic void clear()
clear in interface org.springframework.cache.Cache