1 package com.atlassian.plugin.cache;
2
3 import com.google.common.cache.LoadingCache;
4
5 /**
6 * A generic factory for creating Guava {@link LoadingCache}s. By allowing caches to be created by the host products, they are free to swap implementations and also instrument the
7 * caches themselves so they can be fine tuned over time..
8 *
9 * @since 3.0.0
10 */
11 public interface ConcurrentCacheFactory<K, V> {
12 /**
13 * This will be called to create the underlying cache
14 *
15 * @return a concurrent cache typically built via {@link com.google.common.cache.CacheBuilder}
16 */
17 LoadingCache<K, V> createCache();
18
19 }