protected Cache<String, Long> makeSimpleCache(boolean statsEnabled) { // Build a Cache using the builder final Cache<String, Long> cache = factory.getCache("mycache", null, settingsBuilder(statsEnabled).build()); assertEmpty(cache); return cache; }
protected Cache<String, Long> makeExceptionalCache() { // Build a Cache using the builder CacheLoader<String, Long> loader = new CacheLoader<String, Long>() { @Nonnull @Override public Long load(@Nonnull final String key) { return Long.valueOf(key); } }; final Cache<String, Long> cache = factory.getCache("mycache", loader, settingsBuilder().build()); assertEmpty(cache); return cache; }
protected Cache<String, Long> makeSizeLimitedCache(int maxEntries) { CacheSettings required = settingsBuilder().maxEntries(maxEntries).build(); final Cache<String, Long> cache = factory.getCache("mycache", null, required); assertEmpty(cache); return cache; }
protected Cache<String, Long> makeNullReturningCache() { // Build a Cache using the builder CacheLoader<String, Long> loader = new CacheLoader<String, Long>() { @Nonnull @Override public Long load(@Nonnull final String key) { try { return Long.valueOf(key); } catch (NumberFormatException e) { return null; } } }; final Cache<String, Long> cache = factory.getCache("mycache", loader, settingsBuilder().build()); assertEmpty(cache); return cache; }
protected Cache<String, Long> makeSlowCache() { CacheLoader<String, Long> loader = new CacheLoader<String, Long>() { @Nonnull @Override public Long load(@Nonnull final String key) { try { Thread.sleep(100); return Long.valueOf(key); } catch (InterruptedException | NumberFormatException e) { return -21L; } } }; final Cache<String, Long> cache = factory.getCache("mycache", loader, settingsBuilder().build()); assertEmpty(cache); return cache; }
protected Cache<String, Long> makeUnexpiringCache() { // Build a Cache using the builder CacheLoader<String, Long> loader = new CacheLoader<String, Long>() { @Nonnull @Override public Long load(@Nonnull final String key) { try { return Long.valueOf(key); } catch (NumberFormatException e) { return -21L; } } }; final Cache<String, Long> cache = factory.getCache("mycache", loader, settingsBuilder().build()); assertEmpty(cache); return cache; }
protected Cache<String, Long> makeSizeLimitedCache(final int maxEntries, final AtomicInteger loadCounter) { // Build a Cache using the builder CacheLoader<String, Long> loader = new CacheLoader<String, Long>() { @Nonnull @Override public Long load(@Nonnull final String key) { loadCounter.incrementAndGet(); return Long.valueOf(key); } }; CacheSettings settings = settingsBuilder().maxEntries(maxEntries).build(); final Cache<String, Long> cache = factory.getCache("mycache", loader, settings); assertEmpty(cache); return cache; }
protected Cache<String, Long> makeExpiringCache() { // Build a Cache using the builder CacheLoader<String, Long> loader = new CacheLoader<String, Long>() { @Nonnull @Override public Long load(@Nonnull final String key) { try { return Long.valueOf(key); } catch (NumberFormatException e) { return -21L; } } }; CacheSettings settings = settingsBuilder().expireAfterAccess(10, TimeUnit.MILLISECONDS).build(); final Cache<String, Long> cache = factory.getCache("mycache", loader, settings); assertEmpty(cache); return cache; }