mirror of
https://github.com/ebean-orm/ebean.git
synced 2024-04-21 10:51:47 +00:00
Fix for #229 - EbeanCacheWarmer timer not canceled
This commit is contained in:
@@ -1721,6 +1721,7 @@ public class ServerConfig {
|
||||
dbEncrypt = createInstance(p, DbEncrypt.class, "dbEncrypt");
|
||||
serverCacheFactory = createInstance(p, ServerCacheFactory.class, "serverCacheFactory");
|
||||
serverCacheManager = createInstance(p, ServerCacheManager.class, "serverCacheManager");
|
||||
cacheWarmingDelay = p.getInt("cacheWarmingDelay", cacheWarmingDelay);
|
||||
|
||||
String jarsProp = p.get("search.jars", p.get("jars", null));
|
||||
if (jarsProp != null) {
|
||||
|
||||
@@ -174,8 +174,8 @@ public class DefaultServerFactory implements BootupEbeanManager {
|
||||
// warm the cache in 30 seconds
|
||||
long sleepMillis = 1000 * serverConfig.getCacheWarmingDelay();
|
||||
if (sleepMillis > 0) {
|
||||
Timer t = new Timer("EbeanCacheWarmer", true);
|
||||
t.schedule(new CacheWarmer(server), sleepMillis);
|
||||
Timer timer = new Timer("EbeanCacheWarmer", true);
|
||||
timer.schedule(new CacheWarmer(server, timer), sleepMillis);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -374,12 +374,16 @@ public class DefaultServerFactory implements BootupEbeanManager {
|
||||
|
||||
private final EbeanServer server;
|
||||
|
||||
CacheWarmer(EbeanServer server) {
|
||||
private final Timer timer;
|
||||
|
||||
CacheWarmer(EbeanServer server, Timer timer) {
|
||||
this.server = server;
|
||||
this.timer = timer;
|
||||
}
|
||||
|
||||
public void run() {
|
||||
server.runCacheWarming();
|
||||
timer.cancel();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user