List of usage examples for com.google.common.cache CacheBuilder expireAfterWrite
public CacheBuilder<K, V> expireAfterWrite(long duration, TimeUnit unit)
From source file:no.digipost.cache.inmemory.CacheConfig.java
public static CacheConfig expireAfterWrite(final Duration expiryTime) { return new CacheConfig() { @Override/*from w ww .j av a 2 s.c o m*/ public CacheBuilder<Object, Object> configure(CacheBuilder<Object, Object> builder) { LOG.info("Expire values {} ms after they are written to the cache", expiryTime.getMillis()); return builder.expireAfterWrite(expiryTime.getMillis(), TimeUnit.MILLISECONDS); } }; }
From source file:org.rapidoid.plugins.cache.guava.GuavaCache.java
@SuppressWarnings("unchecked") private static <K, V> CacheBuilder<K, V> builder(long timeToLiveMs, boolean resetTimeToLiveWhenAccessed) { CacheBuilder<K, V> builder = (CacheBuilder<K, V>) CacheBuilder.newBuilder(); if (resetTimeToLiveWhenAccessed) { return builder.expireAfterAccess(timeToLiveMs, TimeUnit.MILLISECONDS); } else {/* w w w . ja v a2 s. co m*/ return builder.expireAfterWrite(timeToLiveMs, TimeUnit.MILLISECONDS); } }
From source file:com.googlecode.webutilities.filters.ResponseCacheFilter.java
private static Cache<String, CacheObject> buildCache(/*int reloadAfterAccess, */int reloadAfterWrite) { CacheBuilder<Object, Object> builder = CacheBuilder.newBuilder().softValues(); // if(reloadAfterAccess > 0) // builder.expireAfterAccess(reloadAfterAccess, TimeUnit.SECONDS); if (reloadAfterWrite > 0) builder.expireAfterWrite(reloadAfterWrite, TimeUnit.SECONDS); return builder.build(); }
From source file:com.vityuk.ginger.provider.DefaultLocalizationProvider.java
private static LoadingCache<Locale, PropertyResolver> createPropertyResolverCache(Builder builder, CacheLoader<Locale, PropertyResolver> cacheLoader) { CacheBuilder<Object, Object> cacheBuilder = CacheBuilder.newBuilder(); if (builder.maxCacheTimeInSec >= 0) { cacheBuilder.expireAfterWrite(builder.maxCacheTimeInSec, TimeUnit.SECONDS); }/*from w w w. ja va 2s . c om*/ return cacheBuilder.build(cacheLoader); }
From source file:com.google.gitiles.ConfigUtil.java
/** * Get a {@link CacheBuilder} from a config. * * @param config JGit config object.// w ww .j av a 2 s . c o m * @param name name of the cache subsection under the "cache" section. * @return a new cache builder. */ public static CacheBuilder<Object, Object> getCacheBuilder(Config config, String name) { CacheBuilder<Object, Object> b = CacheBuilder.newBuilder(); try { if (config.getString("cache", name, "maximumWeight") != null) { b.maximumWeight(config.getLong("cache", name, "maximumWeight", 20 << 20)); } if (config.getString("cache", name, "maximumSize") != null) { b.maximumSize(config.getLong("cache", name, "maximumSize", 16384)); } Duration expireAfterWrite = getDuration(config, "cache", name, "expireAfterWrite", null); if (expireAfterWrite != null) { b.expireAfterWrite(expireAfterWrite.getMillis(), TimeUnit.MILLISECONDS); } Duration expireAfterAccess = getDuration(config, "cache", name, "expireAfterAccess", null); if (expireAfterAccess != null) { b.expireAfterAccess(expireAfterAccess.getMillis(), TimeUnit.MILLISECONDS); } // Add other methods as needed. } catch (IllegalArgumentException e) { throw new IllegalArgumentException("Error getting CacheBuilder for " + name, e); } catch (IllegalStateException e) { throw new IllegalStateException("Error getting CacheBuilder for " + name, e); } return b; }
From source file:com.davidbracewell.cache.impl.GuavaCacheUtils.java
/** * Converts a CacheSpec into a CacheBuilder * * @param specification The specification * @param <K> The key type * @param <V> The value type * @return The CacheBuilder/*w w w . j a va 2s .com*/ */ public static <K, V> CacheBuilder<K, V> cacheBuilderFromSpec(CacheSpec<K, V> specification) { CacheBuilder cacheBuilder = CacheBuilder.newBuilder(); if (specification.getMaxSize() > 0) { cacheBuilder.maximumSize(specification.getMaxSize()); } if (specification.getConcurrencyLevel() > 0) { cacheBuilder.concurrencyLevel(specification.getMaxSize()); } if (specification.getInitialCapacity() > 0) { cacheBuilder.initialCapacity(specification.getInitialCapacity()); } if (specification.getExpiresAfterAccess() > 0) { cacheBuilder.expireAfterAccess(specification.getExpiresAfterAccess(), TimeUnit.MILLISECONDS); } if (specification.getExpiresAfterWrite() > 0) { cacheBuilder.expireAfterWrite(specification.getExpiresAfterWrite(), TimeUnit.MILLISECONDS); } if (specification.isWeakKeys()) { cacheBuilder.weakKeys(); } if (specification.isWeakValues()) { cacheBuilder.weakValues(); } return Cast.as(cacheBuilder); }
From source file:io.prestosql.plugin.hive.metastore.CachingHiveMetastore.java
private static CacheBuilder<Object, Object> newCacheBuilder(OptionalLong expiresAfterWriteMillis, OptionalLong refreshMillis, long maximumSize) { CacheBuilder<Object, Object> cacheBuilder = CacheBuilder.newBuilder(); if (expiresAfterWriteMillis.isPresent()) { cacheBuilder = cacheBuilder.expireAfterWrite(expiresAfterWriteMillis.getAsLong(), MILLISECONDS); }/*from w w w .ja v a2s. co m*/ if (refreshMillis.isPresent() && (!expiresAfterWriteMillis.isPresent() || expiresAfterWriteMillis.getAsLong() > refreshMillis.getAsLong())) { cacheBuilder = cacheBuilder.refreshAfterWrite(refreshMillis.getAsLong(), MILLISECONDS); } cacheBuilder = cacheBuilder.maximumSize(maximumSize); return cacheBuilder; }
From source file:org.nuxeo.ecm.core.cache.InMemoryCacheImpl.java
public InMemoryCacheImpl(CacheDescriptor desc) { super(desc);/* w w w .j a va 2 s .c o m*/ CacheBuilder<Object, Object> builder = CacheBuilder.newBuilder(); builder = builder.expireAfterWrite(desc.ttl, TimeUnit.MINUTES); if (desc.options.containsKey("concurrencyLevel")) { builder = builder.concurrencyLevel(Integer.valueOf(desc.options.get("concurrencyLevel")).intValue()); } if (desc.options.containsKey("maxSize")) { builder = builder.maximumSize(Integer.valueOf(desc.options.get("maxSize")).intValue()); } cache = builder.build(); }
From source file:org.cache2k.benchmark.thirdparty.GuavaCacheFactory.java
@Override public BenchmarkCache<Integer, Integer> create(int _maxElements) { MyBenchmarkCacheAdapter c = new MyBenchmarkCacheAdapter(); c.size = _maxElements;/*w w w. j a v a 2 s . c o m*/ CacheBuilder cb = CacheBuilder.newBuilder().maximumSize(_maxElements); if (withExpiry) { cb.expireAfterWrite(5 * 60, TimeUnit.SECONDS); } c.cache = cb.build(); return c; }
From source file:com.hazelcast.client.GuavaNearCacheImpl.java
public GuavaNearCacheImpl(NearCacheConfig nc, final MapClientProxy<K, V> map) { this.map = map; CacheBuilder cacheBuilder = CacheBuilder.newBuilder().maximumSize(nc.getMaxSize()); if (nc.getTimeToLiveSeconds() > 0) cacheBuilder.expireAfterWrite(nc.getTimeToLiveSeconds(), TimeUnit.SECONDS); if (nc.getMaxIdleSeconds() > 0) cacheBuilder.expireAfterAccess(nc.getMaxIdleSeconds(), TimeUnit.SECONDS); cache = cacheBuilder.build(new CacheLoader() { @Override/*from w w w .j a v a2 s . c o m*/ public Object load(Object o) throws Exception { try { return map.get0(o); } catch (Exception e) { throw new ExecutionException(e); } } }); }