@SuppressWarnings({"PMD.ExcessiveParameterList", "NullAway"}) public CacheProxy(String name, Executor executor, CacheManager cacheManager, CaffeineConfiguration<K, V> configuration, com.github.benmanes.caffeine.cache.Cache<K, Expirable<V>> cache, EventDispatcher<K, V> dispatcher, Optional<CacheLoader<K, V>> cacheLoader, ExpiryPolicy expiry, Ticker ticker, JCacheStatisticsMXBean statistics) { this.configuration = requireNonNull(configuration); this.cacheManager = requireNonNull(cacheManager); this.cacheLoader = requireNonNull(cacheLoader); this.dispatcher = requireNonNull(dispatcher); this.statistics = requireNonNull(statistics); this.executor = requireNonNull(executor); this.expiry = requireNonNull(expiry); this.ticker = requireNonNull(ticker); this.cache = requireNonNull(cache); this.name = requireNonNull(name); copier = configuration.isStoreByValue() ? configuration.getCopierFactory().create() : Copier.identity(); writer = configuration.hasCacheWriter() ? configuration.getCacheWriter() : DisabledCacheWriter.get(); cacheMXBean = new JCacheMXBean(this); }
static void checkStoreByValue(CaffeineConfiguration<?, ?> config) { assertThat(config.isStoreByValue(), is(true)); assertThat(config.getCopierFactory().create(), instanceOf(JavaSerializationCopier.class)); }
@SuppressWarnings({"PMD.ExcessiveParameterList", "NullAway"}) public CacheProxy(String name, Executor executor, CacheManager cacheManager, CaffeineConfiguration<K, V> configuration, com.github.benmanes.caffeine.cache.Cache<K, Expirable<V>> cache, EventDispatcher<K, V> dispatcher, Optional<CacheLoader<K, V>> cacheLoader, ExpiryPolicy expiry, Ticker ticker, JCacheStatisticsMXBean statistics) { this.configuration = requireNonNull(configuration); this.cacheManager = requireNonNull(cacheManager); this.cacheLoader = requireNonNull(cacheLoader); this.dispatcher = requireNonNull(dispatcher); this.statistics = requireNonNull(statistics); this.executor = requireNonNull(executor); this.expiry = requireNonNull(expiry); this.ticker = requireNonNull(ticker); this.cache = requireNonNull(cache); this.name = requireNonNull(name); copier = configuration.isStoreByValue() ? configuration.getCopierFactory().create() : Copier.identity(); writer = configuration.hasCacheWriter() ? configuration.getCacheWriter() : DisabledCacheWriter.get(); cacheMXBean = new JCacheMXBean(this); }