Class ConfigDataCache

java.lang.Object
org.alfresco.util.cache.AbstractAsynchronouslyRefreshedCache<T>
All Implemented Interfaces:
Callable<Void>, AsynchronouslyRefreshedCache<ConfigDataCache.ConfigData>, RefreshableCache<ConfigDataCache.ConfigData>, org.alfresco.util.cache.AsynchronouslyRefreshedCache<ConfigDataCache.ConfigData>, org.alfresco.util.cache.RefreshableCache<ConfigDataCache.ConfigData>, org.alfresco.util.cache.RefreshableCacheListener, org.alfresco.util.transaction.TransactionListener, org.springframework.beans.factory.Aware, org.springframework.beans.factory.BeanNameAware, org.springframework.beans.factory.InitializingBean

An innder class that uses the config service to asynchronously refresh tenant config data.

Cluster-wide invalidation messages mean that we have to be very careful about only making updates to caches when entries really change. However, the nature of the ConfigService hierarchy makes it very difficult to do this in a deterministic manner without performing write locks that run across tenants. By receiving asynchronous messages to refresh we no longer have to rely on a cluster-aware cache.

Since:
4.1.5
Author:
Derek Hulley, Andy Hind