new FactoryBuilder.SingletonFactory<>(localLsnr), (Factory<? extends CacheEntryEventFilter<? super Integer, ? super Integer>>) (Object)evtFilterFactory.newInstance(),
expiryPolicyFactory = new FactoryBuilder.SingletonFactory<ExpiryPolicy>(expiryPolicy); useJCacheExpiry = false; storeByValue = false;
cfg.setCacheLoaderFactory(new FactoryBuilder.SingletonFactory(cacheLoader)); Cache<Integer, String> cache = jCacheManager.createCache(cacheName, cfg);
private Cache<?, ?> createCache(final String exceptionCacheName, final CacheMethodDetails<? extends Annotation> cacheMethodDetails) { final CacheManager manager = cacheManager.manager(); manager.createCache(exceptionCacheName, new MutableConfiguration<>() .setStoreByValue(false) .setExpiryPolicyFactory(new FactoryBuilder.SingletonFactory<>(new ExpiryPolicy() { @Override public Duration getExpiryForCreation() { final Duration duration = ExpiryHolder.EXPIRY.get(); return duration == null ? Duration.FIVE_MINUTES : duration; } @Override public Duration getExpiryForAccess() { return null; } @Override public Duration getExpiryForUpdate() { return null; } })) /*todo: add mapping for other configs in Tribestream*/); return manager.getCache(exceptionCacheName); }
@Test public void listener() throws InterruptedException { final CachingProvider cachingProvider = Caching.getCachingProvider(); final CacheManager cacheManager = cachingProvider.getCacheManager(); final CacheEntryExpiredListenerImpl listener = new CacheEntryExpiredListenerImpl(); cacheManager.createCache("default", new MutableConfiguration<String, String>() .setExpiryPolicyFactory(new FactoryBuilder.SingletonFactory<ExpiryPolicy>( new CreatedExpiryPolicy(new Duration(TimeUnit.MILLISECONDS, 1)))) .addCacheEntryListenerConfiguration(new MutableCacheEntryListenerConfiguration<String, String>( FactoryBuilder.factoryOf(listener), null, false, false ))); final Cache<String, String> cache = cacheManager.getCache("default"); assertFalse(cache.containsKey("foo")); cache.put("foo", "bar"); Thread.sleep(10); assertFalse(cache.containsKey("foo")); cachingProvider.close(); assertEquals(1, listener.events.size()); }
@Test public void immediate() { final CachingProvider cachingProvider = Caching.getCachingProvider(); final CacheManager cacheManager = cachingProvider.getCacheManager(); cacheManager.createCache("default", new MutableConfiguration<Object, Object>() .setExpiryPolicyFactory( new FactoryBuilder.SingletonFactory<ExpiryPolicy>(new CreatedExpiryPolicy(Duration.ZERO)))); final Cache<String, String> cache = cacheManager.getCache("default"); assertFalse(cache.containsKey("foo")); cache.put("foo", "bar"); assertFalse(cache.containsKey("foo")); cachingProvider.close(); } }
@Override public void call() { JCacheManager jCacheManager = createJCacheManager(cm, this); InMemoryJCacheLoader<Integer, String> cacheLoader = new InMemoryJCacheLoader<Integer, String>(); cacheLoader.store(1, "v1").store(2, "v2"); MutableConfiguration<Integer, String> cfg = new MutableConfiguration<Integer, String>(); // JDK6 fails to compile when calling FactoryBuilder.factoryOf() :( cfg.setCacheLoaderFactory(new FactoryBuilder.SingletonFactory(cacheLoader)); Cache<Integer, String> cache = jCacheManager.createCache(cacheName, cfg); assertEquals(0, cacheLoader.getLoadCount()); CompletionListenerFuture future = new CompletionListenerFuture(); cache.loadAll(CollectionFactory.makeSet(1, 2), true, future); futureGet(future); assertEquals(2, cacheLoader.getLoadCount()); } });
public static <T extends Serializable> Factory<T> factoryOf(T instance) { return new SingletonFactory<T>(instance); }
public static Factory<ExpiryPolicy> factoryOf(final Duration duration) { return new FactoryBuilder.SingletonFactory<ExpiryPolicy>(new AccessedExpiryPolicy(duration)); }
public static Factory<ExpiryPolicy> factoryOf(Duration duration) { return new FactoryBuilder.SingletonFactory<ExpiryPolicy>(new ModifiedExpiryPolicy(duration)); }
public static Factory<ExpiryPolicy> factoryOf(Duration duration) { return new FactoryBuilder.SingletonFactory<ExpiryPolicy>(new TouchedExpiryPolicy(duration)); }
/** * Constructs a {@link Factory} that will return the specified factory * Serializable instance. * <p> * If T is not Serializable use {@link #factoryOf(Class)} or * {@link #factoryOf(String)}. * * @param instance the Serializable instance the {@link Factory} will return * @param <T> the type of the instances returned * @return a {@link Factory} for the instance */ public static <T extends Serializable> Factory<T> factoryOf(T instance) { return new SingletonFactory<T>(instance); }
public static Factory<ExpiryPolicy> factoryOf(final Duration duration) { return new FactoryBuilder.SingletonFactory<ExpiryPolicy>(new CreatedExpiryPolicy(duration)); }
private <T> MutableConfiguration<String, T> configure(final MutableConfiguration<String, T> configuration, final OAuth2Options opts) { ofNullable(opts.getJcacheLoader()) .map(n -> lookup(CacheLoader.class, n)) .ifPresent(l -> configuration.setCacheLoaderFactory(new FactoryBuilder.SingletonFactory<CacheLoader<String, T>>(l))); ofNullable(opts.getJcacheWriter()) .map(n -> lookup(CacheWriter.class, n)) .ifPresent(w -> configuration.setCacheWriterFactory(new FactoryBuilder.SingletonFactory<CacheWriter<String, T>>(w))); return configuration .setStoreByValue(opts.isJcacheStoreValue()) .setStatisticsEnabled(opts.isJcacheStatistics()) .setManagementEnabled(opts.isJcacheJmx()); }
public static Factory<ExpiryPolicy> factoryOf() { return new FactoryBuilder.SingletonFactory<ExpiryPolicy>(new EternalExpiryPolicy()); }
@Override public Builder<K,V> setMaxIdleTime(int maxIdleTime, TimeUnit timeUnit) { if (maxIdleTime <= 0) throw new IllegalArgumentException("Invalid maxIdleTime: " + maxIdleTime); TouchedExpiryPolicy ep = new TouchedExpiryPolicy(new Duration(timeUnit, maxIdleTime)); SingletonFactory<ExpiryPolicy> singletonFactory = new FactoryBuilder.SingletonFactory<ExpiryPolicy>(ep); this.expiryPolicyFactory = (Factory<ExpiryPolicy>)singletonFactory; return this; }
<K, T> Configuration<K, T> createConfiguration(final CacheSizeManager<K, T> listener) { return new MutableConfiguration<K, T>() .setStoreByValue(false) .setExpiryPolicyFactory(CreatedExpiryPolicy.factoryOf(new Duration(SECONDS, cacheExpiry))) .setManagementEnabled(cacheManagement) .setStatisticsEnabled(cacheStatistics) .addCacheEntryListenerConfiguration(new MutableCacheEntryListenerConfiguration<>( new FactoryBuilder.SingletonFactory<>(listener), null, false, false)); }
/** * Obtains a {@link Factory} for a Modified {@link ExpiryPolicy}. * * @param duration The expiry duration * @return a {@link Factory} for a Modified {@link ExpiryPolicy}. */ public static Factory<ExpiryPolicy> factoryOf(Duration duration) { return new FactoryBuilder.SingletonFactory<ExpiryPolicy>(new ModifiedExpiryPolicy(duration)); }
/** * Obtains a {@link Factory} for a Touched {@link ExpiryPolicy}. * @param duration The expiry duration * @return a {@link Factory} for a Touched {@link ExpiryPolicy}. */ public static Factory<ExpiryPolicy> factoryOf(Duration duration) { return new FactoryBuilder.SingletonFactory<ExpiryPolicy>(new TouchedExpiryPolicy(duration)); }
/** * Obtains a {@link Factory} for an Eternal {@link ExpiryPolicy}. * @return a {@link Factory} for an Eternal {@link ExpiryPolicy}. */ public static Factory<ExpiryPolicy> factoryOf() { return new FactoryBuilder.SingletonFactory<ExpiryPolicy>( new EternalExpiryPolicy()); }