Details
-
Task
-
Status: Closed
-
Major
-
Resolution: Fixed
-
4.0.M5
-
None
-
None
Description
With cayenne-jcache we lost the ability to invalidate caches not handled by Cayenne. The API for CacheManager's caches introspection requires the caller to know the generic parameters of a named cache. So we can no longer invalidate caches that were not created for Cayenne (and that are known to be of type "Cache<String, List>").
A few changes to address this:
1. Internally use "untyped" caches for storage. This would allow the same caches to be reused by the code outside Cayenne.
2. Add API to QueryCache to handle invalidation of typed caches with known key and value types. Extend @CacheGroups annotation to specify cache generics "signatures", add support for it in CacheInvalidationFilter.