Stash stash = inMemoryCache ? new MemoryStash(cacheSize) : new FileStash(Long.MAX_VALUE, cacheSize, new File[]{cacheTypeDirectory}, true);
// eviction can't be used in testing as the policy creates a thread
// which is only stopped on JVM exit, hence breaking the tests
boolean isTestMode = "true".equals(SystemProperties.get("adito.testing", "false"));
EvictionPolicy evictionPolicy = isTestMode ? null : new LRUEvictionPolicy();
SimpleCache cache = new SimpleCache(stash, evictionPolicy, null, new GroupMapImpl());
cache.registerStorageListener(getStorageListener(messageBundle, cacheFullText));
return cache;
}