You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by "Andrus Adamchik (JIRA)" <ji...@apache.org> on 2017/03/09 18:14:38 UTC

[jira] [Created] (CAY-2259) CacheInvalidationFilter - broadcast cache invlidation events to interested listeners

Andrus Adamchik created CAY-2259:
------------------------------------

             Summary: CacheInvalidationFilter - broadcast cache invlidation events to interested listeners
                 Key: CAY-2259
                 URL: https://issues.apache.org/jira/browse/CAY-2259
             Project: Cayenne
          Issue Type: Task
    Affects Versions: 4.0.M5
            Reporter: Andrus Adamchik
            Assignee: Andrus Adamchik


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>"). 

So now we need to do two things:

* JCacheQueryCache.removeGroup(..) should only attempt to remove caches that are in the "seenCacheNames" collection.
* CacheInvalidationFilter should allow registration of listeners, so that the user code outside of Cayenne could receive explicit cache group events and flush their own caches manually. 

Not ideal, but perhaps not such a bad idea on the long run. It prevents Cayenne from overstepping its boundaries.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)