Interface CachedDomainDataAccess

All Known Subinterfaces:
CollectionDataAccess, EntityDataAccess, NaturalIdDataAccess
All Known Implementing Classes:
AbstractCachedDomainDataAccess, AbstractCollectionDataAccess, AbstractEntityDataAccess, AbstractNaturalIdDataAccess, AbstractReadWriteAccess, CollectionNonStrictReadWriteAccess, CollectionReadOnlyAccess, CollectionReadWriteAccess, CollectionTransactionAccess, EntityNonStrictReadWriteAccess, EntityReadOnlyAccess, EntityReadWriteAccess, EntityTransactionalAccess, NaturalIdNonStrictReadWriteAccess, NaturalIdReadOnlyAccess, NaturalIdReadWriteAccess, NaturalIdTransactionalAccess

public interface CachedDomainDataAccess
Base contract for accessing the cached data for a particular element of the domain model in a transactionally ACID manner.
API Note:
Note that the following methods are not considered "transactional" in this sense: contains(Object), lockRegion(), unlockRegion(SoftLock), evict(Object), evictAll(). The semantics of these methods come from JPA's Cache contract.
Implementation Specification:
The "non-transactional" methods noted in the @apiNote should be implemented to ignore any locking. That is, when evict(Object) is called, the item should be forcibly removed from the cache regardless of whether anything has locked it.