Merged from branch DEV/mward/head_cachefactory_conf to HEAD

54858: ALF-19668: Further cache configuration overrides
  54859: ALF-19668: added clustered cache types to properties, e.g. createLocalCache, createCache, createInvalidateRemovalCache.
  54867: ALF-19668: ClusterAwareCacheFactory now uses *.cluster.type properties to determine cache type.



git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@55148 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Matt Ward
2013-09-09 18:41:27 +00:00
parent fce64e27a9
commit 57e814314c
7 changed files with 216 additions and 99 deletions

View File

@@ -30,33 +30,11 @@ import java.io.Serializable;
public interface CacheFactory<K extends Serializable, V>
{
/**
* Creates a fully distributed cache (when clustering is enabled and active).
* Creates a cache. The type of cache (e.g. localised, clustered etc.) produced is
* dependant on the factory implementation, and will vary at runtime.
*
* @param cacheName
* @return SimpleCache
*/
SimpleCache<K, V> createCache(String cacheName);
/**
* Creates a "local" cache, i.e. one that exists only on the JVM that created it. It does not
* attempt to replicate any data, send invalidation messages etc. and is intended for use
* only where the data does not need to be shared and where remote operations should be avoided for
* performance reasons.
*
* @param cacheName
* @return SimpleCache
*/
SimpleCache<K, V> createLocalCache(String cacheName);
/**
* <p>Creates a local (as opposed to fully-distributed) cache that broadcasts invalidation messages
* to its peers on other cluster members upon cache item removal. Its peers then remove the
* corresponding cache item.</p>
*
* <p>This cache does <strong>not</strong> replicate put(k,v) invocations.</p>
*
* @param cacheName
* @return SimpleCache
*/
SimpleCache<K, V> createInvalidateRemovalCache(String cacheName);
}