private <K, V> Eh107Expiry<K, V> initExpiryPolicy(CompleteConfiguration<K, V> config) { return new ExpiryPolicyToEhcacheExpiry<>(config.getExpiryPolicyFactory().create()); }
/** * Constructs a {@link MutableConfiguration} based on another * {@link CompleteConfiguration}. * * @param configuration the {@link CompleteConfiguration} */ public MutableConfiguration(CompleteConfiguration<K, V> configuration) { this.keyType = configuration.getKeyType(); this.valueType = configuration.getValueType(); listenerConfigurations = new HashSet<CacheEntryListenerConfiguration<K, V>>(); for (CacheEntryListenerConfiguration<K, V> definition : configuration .getCacheEntryListenerConfigurations()) { addCacheEntryListenerConfiguration(definition); } this.cacheLoaderFactory = configuration.getCacheLoaderFactory(); this.cacheWriterFactory = configuration.getCacheWriterFactory(); if (configuration.getExpiryPolicyFactory() == null) { this.expiryPolicyFactory = EternalExpiryPolicy.factoryOf(); } else { this.expiryPolicyFactory = configuration.getExpiryPolicyFactory(); } this.isReadThrough = configuration.isReadThrough(); this.isWriteThrough = configuration.isWriteThrough(); this.isStatisticsEnabled = configuration.isStatisticsEnabled(); this.isStoreByValue = configuration.isStoreByValue(); this.isManagementEnabled = configuration.isManagementEnabled(); }
@Test public void test107CacheCanReturnCompleteConfigurationWhenNonePassedIn() { CacheManager cacheManager = cachingProvider.getCacheManager(); Cache<Long, String> cache = cacheManager.createCache("cacheWithoutCompleteConfig", new Configuration<Long, String>() { private static final long serialVersionUID = 1L; @Override public Class<Long> getKeyType() { return Long.class; } @Override public Class<String> getValueType() { return String.class; } @Override public boolean isStoreByValue() { return true; } }); @SuppressWarnings("unchecked") CompleteConfiguration<Long, String> configuration = cache.getConfiguration(CompleteConfiguration.class); assertThat(configuration, notNullValue()); assertThat(configuration.isStoreByValue(), is(true)); // Respects defaults assertThat(configuration.getExpiryPolicyFactory(), equalTo(EternalExpiryPolicy.factoryOf())); }
/** Copies the configuration and overlays it on top of the default settings. */ @SuppressWarnings("PMD.AccessorMethodGeneration") private <K, V> CaffeineConfiguration<K, V> resolveConfigurationFor( Configuration<K, V> configuration) { if (configuration instanceof CaffeineConfiguration<?, ?>) { return new CaffeineConfiguration<>((CaffeineConfiguration<K, V>) configuration); } CaffeineConfiguration<K, V> template = TypesafeConfigurator.defaults(rootConfig); if (configuration instanceof CompleteConfiguration<?, ?>) { CompleteConfiguration<K, V> complete = (CompleteConfiguration<K, V>) configuration; template.setReadThrough(complete.isReadThrough()); template.setWriteThrough(complete.isWriteThrough()); template.setManagementEnabled(complete.isManagementEnabled()); template.setStatisticsEnabled(complete.isStatisticsEnabled()); template.getCacheEntryListenerConfigurations() .forEach(template::removeCacheEntryListenerConfiguration); complete.getCacheEntryListenerConfigurations() .forEach(template::addCacheEntryListenerConfiguration); template.setCacheLoaderFactory(complete.getCacheLoaderFactory()); template.setCacheWriterFactory(complete.getCacheWriterFactory()); template.setExpiryPolicyFactory(complete.getExpiryPolicyFactory()); } template.setTypes(configuration.getKeyType(), configuration.getValueType()); template.setStoreByValue(configuration.isStoreByValue()); return template; }
tempExpiryPolicyFactory = completeConfig.getExpiryPolicyFactory(); for (CacheEntryListenerConfiguration<K, V> listenerConfig : completeConfig.getCacheEntryListenerConfigurations()) { cacheEntryListenerConfigs.add(listenerConfig);
final Factory<ExpiryPolicy> expiryPolicyFactory = foosConfig.getExpiryPolicyFactory();
@Override public Factory<ExpiryPolicy> getExpiryPolicyFactory() { return cc.getExpiryPolicyFactory(); }
private <K, V> Eh107Expiry<K, V> initExpiryPolicy(CompleteConfiguration<K, V> config) { return new ExpiryPolicyToEhcacheExpiry<>(config.getExpiryPolicyFactory().create()); }
@Override protected void configure() { for (Map.Entry<String, Cache> cacheEntry : this.caches.entrySet()) { bind(Cache.class).annotatedWith(Names.named(cacheEntry.getKey())).toInstance(cacheEntry.getValue()); Factory expiryPolicyFactory = ((CompleteConfiguration)cacheEntry.getValue().getConfiguration(CompleteConfiguration.class)).getExpiryPolicyFactory(); if (expiryPolicyFactory != null) { requestInjection(expiryPolicyFactory); } Factory cacheLoaderFactory = ((CompleteConfiguration)cacheEntry.getValue().getConfiguration(CompleteConfiguration.class)).getCacheLoaderFactory(); if (cacheLoaderFactory != null) { requestInjection(cacheLoaderFactory); } Factory cacheWriterFactory = ((CompleteConfiguration)cacheEntry.getValue().getConfiguration(CompleteConfiguration.class)).getCacheWriterFactory(); if (cacheWriterFactory != null) { requestInjection(cacheWriterFactory); } } install(new CacheAnnotationsModule()); } }
public MutableConfiguration(CompleteConfiguration<K, V> configuration) { this.keyType = configuration.getKeyType(); this.valueType = configuration.getValueType(); listenerConfigurations = new HashSet<CacheEntryListenerConfiguration<K, V>>(); for (final CacheEntryListenerConfiguration<K, V> definition : configuration.getCacheEntryListenerConfigurations()) { addCacheEntryListenerConfiguration(definition); } this.cacheLoaderFactory = configuration.getCacheLoaderFactory(); this.cacheWriterFactory = configuration.getCacheWriterFactory(); if (configuration.getExpiryPolicyFactory() == null) { this.expiryPolicyFactory = EternalExpiryPolicy.factoryOf(); } else { this.expiryPolicyFactory = configuration.getExpiryPolicyFactory(); } this.isReadThrough = configuration.isReadThrough(); this.isWriteThrough = configuration.isWriteThrough(); this.isStatisticsEnabled = configuration.isStatisticsEnabled(); this.isStoreByValue = configuration.isStoreByValue(); this.isManagementEnabled = configuration.isManagementEnabled(); }
cacheLoaderFactory = cConfiguration.getCacheLoaderFactory(); cacheWristerFactory = cConfiguration.getCacheWriterFactory(); this.expiryPolicyFactory = cConfiguration.getExpiryPolicyFactory(); cacheEntryListenerConfigurations = new HashSet<>();
cacheLoaderFactory = cConfiguration.getCacheLoaderFactory(); cacheWristerFactory = cConfiguration.getCacheWriterFactory(); this.expiryPolicyFactory = cConfiguration.getExpiryPolicyFactory(); cacheEntryListenerConfigurations = new HashSet<CacheEntryListenerConfiguration<K, V>>();
/** * Constructs a {@link MutableConfiguration} based on another * {@link CompleteConfiguration}. * * @param configuration the {@link CompleteConfiguration} */ public MutableConfiguration(CompleteConfiguration<K, V> configuration) { this.keyType = configuration.getKeyType(); this.valueType = configuration.getValueType(); listenerConfigurations = new HashSet<CacheEntryListenerConfiguration<K, V>>(); for (CacheEntryListenerConfiguration<K, V> definition : configuration .getCacheEntryListenerConfigurations()) { addCacheEntryListenerConfiguration(definition); } this.cacheLoaderFactory = configuration.getCacheLoaderFactory(); this.cacheWriterFactory = configuration.getCacheWriterFactory(); if (configuration.getExpiryPolicyFactory() == null) { this.expiryPolicyFactory = EternalExpiryPolicy.factoryOf(); } else { this.expiryPolicyFactory = configuration.getExpiryPolicyFactory(); } this.isReadThrough = configuration.isReadThrough(); this.isWriteThrough = configuration.isWriteThrough(); this.isStatisticsEnabled = configuration.isStatisticsEnabled(); this.isStoreByValue = configuration.isStoreByValue(); this.isManagementEnabled = configuration.isManagementEnabled(); }
@Test public void testCopyConstructor() { CompleteConfiguration<String, String> copyConfig = new MutableConfiguration<String, String>() { @Override public Factory<ExpiryPolicy> getExpiryPolicyFactory() { return null; } }; // code coverage of expiry policy factory as null. copyConfig.hashCode(); Assert.assertNull(copyConfig.getExpiryPolicyFactory()); MutableConfiguration<String, String> config = new MutableConfiguration<String, String>(copyConfig); assertNotNull(config.getExpiryPolicyFactory()); }
public AbstractCacheConfig(CompleteConfiguration<K, V> configuration) { setKeyType(configuration.getKeyType()); setValueType(configuration.getValueType()); this.listenerConfigurations = createConcurrentSet(); for (CacheEntryListenerConfiguration<K, V> listenerConf : configuration.getCacheEntryListenerConfigurations()) { listenerConfigurations.add(DeferredValue.withValue(listenerConf)); } this.cacheLoaderFactory = DeferredValue.withValue(configuration.getCacheLoaderFactory()); this.cacheWriterFactory = DeferredValue.withValue(configuration.getCacheWriterFactory()); Factory<ExpiryPolicy> factory = configuration.getExpiryPolicyFactory(); factory = (factory == null) ? EternalExpiryPolicy.factoryOf() : factory; this.expiryPolicyFactory = DeferredValue.withValue(factory); this.isReadThrough = configuration.isReadThrough(); this.isWriteThrough = configuration.isWriteThrough(); this.isStatisticsEnabled = configuration.isStatisticsEnabled(); this.isStoreByValue = configuration.isStoreByValue(); this.isManagementEnabled = configuration.isManagementEnabled(); }
tempExpiryPolicyFactory = completeConfig.getExpiryPolicyFactory(); for (CacheEntryListenerConfiguration<K, V> listenerConfig : completeConfig.getCacheEntryListenerConfigurations()) { cacheEntryListenerConfigs.add(listenerConfig);
public AbstractCacheConfig(CompleteConfiguration<K, V> configuration) { setKeyType(configuration.getKeyType()); setValueType(configuration.getValueType()); this.listenerConfigurations = createConcurrentSet(); for (CacheEntryListenerConfiguration<K, V> listenerConf : configuration.getCacheEntryListenerConfigurations()) { listenerConfigurations.add(DeferredValue.withValue(listenerConf)); } this.cacheLoaderFactory = DeferredValue.withValue(configuration.getCacheLoaderFactory()); this.cacheWriterFactory = DeferredValue.withValue(configuration.getCacheWriterFactory()); Factory<ExpiryPolicy> factory = configuration.getExpiryPolicyFactory(); factory = (factory == null) ? EternalExpiryPolicy.factoryOf() : factory; this.expiryPolicyFactory = DeferredValue.withValue(factory); this.isReadThrough = configuration.isReadThrough(); this.isWriteThrough = configuration.isWriteThrough(); this.isStatisticsEnabled = configuration.isStatisticsEnabled(); this.isStoreByValue = configuration.isStoreByValue(); this.isManagementEnabled = configuration.isManagementEnabled(); }
/** Copies the configuration and overlays it on top of the default settings. */ @SuppressWarnings("PMD.AccessorMethodGeneration") private <K, V> CaffeineConfiguration<K, V> resolveConfigurationFor( Configuration<K, V> configuration) { if (configuration instanceof CaffeineConfiguration<?, ?>) { return new CaffeineConfiguration<>((CaffeineConfiguration<K, V>) configuration); } CaffeineConfiguration<K, V> template = TypesafeConfigurator.defaults(rootConfig); if (configuration instanceof CompleteConfiguration<?, ?>) { CompleteConfiguration<K, V> complete = (CompleteConfiguration<K, V>) configuration; template.setReadThrough(complete.isReadThrough()); template.setWriteThrough(complete.isWriteThrough()); template.setManagementEnabled(complete.isManagementEnabled()); template.setStatisticsEnabled(complete.isStatisticsEnabled()); template.getCacheEntryListenerConfigurations() .forEach(template::removeCacheEntryListenerConfiguration); complete.getCacheEntryListenerConfigurations() .forEach(template::addCacheEntryListenerConfiguration); template.setCacheLoaderFactory(complete.getCacheLoaderFactory()); template.setCacheWriterFactory(complete.getCacheWriterFactory()); template.setExpiryPolicyFactory(complete.getExpiryPolicyFactory()); } template.setTypes(configuration.getKeyType(), configuration.getValueType()); template.setStoreByValue(configuration.isStoreByValue()); return template; }
/** * Ensure that a {@link MutableConfiguration} correctly uses the defaults. * @param config */ private void validateDefaults(CompleteConfiguration<?, ?> config) { assertEquals(Object.class, config.getKeyType()); assertEquals(Object.class, config.getValueType()); assertFalse(config.isReadThrough()); assertFalse(config.isWriteThrough()); assertTrue(config.isStoreByValue()); assertFalse(config.isStatisticsEnabled()); assertFalse(config.isManagementEnabled()); assertTrue(getConfigurationCacheEntryListenerConfigurationSize(config) == 0); assertNull(config.getCacheLoaderFactory()); assertNull(config.getCacheWriterFactory()); // code coverage config.hashCode(); //expiry policies ExpiryPolicy expiryPolicy = config.getExpiryPolicyFactory().create(); assertTrue(expiryPolicy instanceof EternalExpiryPolicy); assertThat(Duration.ETERNAL, equalTo(expiryPolicy.getExpiryForCreation())); assertThat(expiryPolicy.getExpiryForAccess(), is(nullValue())); assertThat(expiryPolicy.getExpiryForUpdate(), is(nullValue())); }
/** * Ensure that a {@link javax.cache.configuration.MutableConfiguration} correctly * uses the defaults. * * @param config */ private void validateDefaults(CompleteConfiguration<?, ?> config) { assertEquals(Object.class, config.getKeyType()); assertEquals(Object.class, config.getValueType()); assertFalse(config.isReadThrough()); assertFalse(config.isWriteThrough()); assertTrue(config.isStoreByValue()); assertFalse(config.isStatisticsEnabled()); assertFalse(config.isManagementEnabled()); assertTrue(getConfigurationCacheEntryListenerConfigurationSize(config) == 0); assertNull(config.getCacheLoaderFactory()); assertNull(config.getCacheWriterFactory()); //expiry policies ExpiryPolicy expiryPolicy = config.getExpiryPolicyFactory().create(); assertTrue(expiryPolicy instanceof EternalExpiryPolicy); assertThat(Duration.ETERNAL, equalTo(expiryPolicy.getExpiryForCreation())); assertThat(expiryPolicy.getExpiryForAccess(), is(nullValue())); assertThat(expiryPolicy.getExpiryForUpdate(), is(nullValue())); }