diff options
Diffstat (limited to 'java/com/google/gerrit/server/cache/mem/DefaultMemoryCacheFactory.java')
-rw-r--r-- | java/com/google/gerrit/server/cache/mem/DefaultMemoryCacheFactory.java | 81 |
1 files changed, 4 insertions, 77 deletions
diff --git a/java/com/google/gerrit/server/cache/mem/DefaultMemoryCacheFactory.java b/java/com/google/gerrit/server/cache/mem/DefaultMemoryCacheFactory.java index bf295e0fca..a580f6d5ed 100644 --- a/java/com/google/gerrit/server/cache/mem/DefaultMemoryCacheFactory.java +++ b/java/com/google/gerrit/server/cache/mem/DefaultMemoryCacheFactory.java @@ -23,13 +23,11 @@ import com.github.benmanes.caffeine.cache.Weigher; import com.github.benmanes.caffeine.guava.CaffeinatedGuava; import com.google.common.base.Strings; import com.google.common.cache.Cache; -import com.google.common.cache.CacheBuilder; import com.google.common.cache.CacheLoader; import com.google.common.cache.LoadingCache; import com.google.common.cache.RemovalNotification; import com.google.common.util.concurrent.MoreExecutors; import com.google.gerrit.common.Nullable; -import com.google.gerrit.server.cache.CacheBackend; import com.google.gerrit.server.cache.CacheDef; import com.google.gerrit.server.cache.ForwardingRemovalListener; import com.google.gerrit.server.cache.MemoryCacheFactory; @@ -69,77 +67,15 @@ class DefaultMemoryCacheFactory implements MemoryCacheFactory { } @Override - public <K, V> Cache<K, V> build(CacheDef<K, V> def, CacheBackend backend) { - return backend.isLegacyBackend() - ? createLegacy(def).build() - : CaffeinatedGuava.build(create(def)); + public <K, V> Cache<K, V> build(CacheDef<K, V> def) { + return CaffeinatedGuava.build(create(def)); } @Override - public <K, V> LoadingCache<K, V> build( - CacheDef<K, V> def, CacheLoader<K, V> loader, CacheBackend backend) { + public <K, V> LoadingCache<K, V> build(CacheDef<K, V> def, CacheLoader<K, V> loader) { return cacheMaximumWeight(def) == 0 ? new PassthroughLoadingCache<>(loader) - : (backend.isLegacyBackend() - ? createLegacy(def).build(loader) - : CaffeinatedGuava.build(create(def), loader)); - } - - @SuppressWarnings("unchecked") - private <K, V> CacheBuilder<K, V> createLegacy(CacheDef<K, V> def) { - CacheBuilder<K, V> builder = newLegacyCacheBuilder(); - builder.recordStats(); - builder.maximumWeight(cacheMaximumWeight(def)); - - builder = builder.removalListener(forwardingRemovalListenerFactory.create(def.name())); - - com.google.common.cache.Weigher<K, V> weigher = def.weigher(); - if (weigher == null) { - weigher = unitWeight(); - } - builder.weigher(weigher); - - Duration expireAfterWrite = def.expireAfterWrite(); - if (has(def.configKey(), "maxAge")) { - builder.expireAfterWrite( - ConfigUtil.getTimeUnit( - cfg, "cache", def.configKey(), "maxAge", toSeconds(expireAfterWrite), SECONDS), - SECONDS); - } else if (expireAfterWrite != null) { - builder.expireAfterWrite(expireAfterWrite.toNanos(), NANOSECONDS); - } - - Duration expireAfterAccess = def.expireFromMemoryAfterAccess(); - if (has(def.configKey(), "expireFromMemoryAfterAccess")) { - builder.expireAfterAccess( - ConfigUtil.getTimeUnit( - cfg, - "cache", - def.configKey(), - "expireFromMemoryAfterAccess", - toSeconds(expireAfterAccess), - SECONDS), - SECONDS); - } else if (expireAfterAccess != null) { - builder.expireAfterAccess(expireAfterAccess.toNanos(), NANOSECONDS); - } - - Duration refreshAfterWrite = def.refreshAfterWrite(); - if (has(def.configKey(), "refreshAfterWrite")) { - builder.refreshAfterWrite( - ConfigUtil.getTimeUnit( - cfg, - "cache", - def.configKey(), - "refreshAfterWrite", - toSeconds(refreshAfterWrite), - SECONDS), - SECONDS); - } else if (refreshAfterWrite != null) { - builder.refreshAfterWrite(refreshAfterWrite.toNanos(), NANOSECONDS); - } - - return builder; + : CaffeinatedGuava.build(create(def), loader); } private <K, V> Caffeine<K, V> create(CacheDef<K, V> def) { @@ -209,15 +145,6 @@ class DefaultMemoryCacheFactory implements MemoryCacheFactory { } @SuppressWarnings("unchecked") - private static <K, V> CacheBuilder<K, V> newLegacyCacheBuilder() { - return (CacheBuilder<K, V>) CacheBuilder.newBuilder(); - } - - private static <K, V> com.google.common.cache.Weigher<K, V> unitWeight() { - return (key, value) -> 1; - } - - @SuppressWarnings("unchecked") private static <K, V> Caffeine<K, V> newCacheBuilder() { return (Caffeine<K, V>) Caffeine.newBuilder(); } |