[#707] Task for refreshing the /players page
Run every 5 minutes - I'll make it configurable later in a config update
This commit is contained in:
parent
7bb97f4ffc
commit
7689457d1f
|
@ -40,7 +40,8 @@ public class BukkitTaskSystem extends ServerTaskSystem {
|
|||
BootAnalysisTask bootAnalysisTask,
|
||||
PeriodicAnalysisTask periodicAnalysisTask,
|
||||
PingCountTimerBukkit pingCountTimer,
|
||||
LogsFolderCleanTask logsFolderCleanTask
|
||||
LogsFolderCleanTask logsFolderCleanTask,
|
||||
PlayersPageRefreshTask playersPageRefreshTask
|
||||
) {
|
||||
super(
|
||||
runnableFactory,
|
||||
|
@ -48,8 +49,8 @@ public class BukkitTaskSystem extends ServerTaskSystem {
|
|||
config,
|
||||
bootAnalysisTask,
|
||||
periodicAnalysisTask,
|
||||
logsFolderCleanTask
|
||||
);
|
||||
logsFolderCleanTask,
|
||||
playersPageRefreshTask);
|
||||
this.plugin = plugin;
|
||||
this.pingCountTimer = pingCountTimer;
|
||||
}
|
||||
|
|
|
@ -29,6 +29,7 @@ public class BungeeTaskSystem extends TaskSystem {
|
|||
private final NetworkPageRefreshTask networkPageRefreshTask;
|
||||
private final PingCountTimerBungee pingCountTimer;
|
||||
private final LogsFolderCleanTask logsFolderCleanTask;
|
||||
private final PlayersPageRefreshTask playersPageRefreshTask;
|
||||
|
||||
@Inject
|
||||
public BungeeTaskSystem(
|
||||
|
@ -38,8 +39,8 @@ public class BungeeTaskSystem extends TaskSystem {
|
|||
BungeeTPSCountTimer bungeeTPSCountTimer,
|
||||
NetworkPageRefreshTask networkPageRefreshTask,
|
||||
PingCountTimerBungee pingCountTimer,
|
||||
LogsFolderCleanTask logsFolderCleanTask
|
||||
) {
|
||||
LogsFolderCleanTask logsFolderCleanTask,
|
||||
PlayersPageRefreshTask playersPageRefreshTask) {
|
||||
super(runnableFactory, bungeeTPSCountTimer);
|
||||
this.plugin = plugin;
|
||||
this.config = config;
|
||||
|
@ -47,6 +48,7 @@ public class BungeeTaskSystem extends TaskSystem {
|
|||
this.networkPageRefreshTask = networkPageRefreshTask;
|
||||
this.pingCountTimer = pingCountTimer;
|
||||
this.logsFolderCleanTask = logsFolderCleanTask;
|
||||
this.playersPageRefreshTask = playersPageRefreshTask;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -68,5 +70,8 @@ public class BungeeTaskSystem extends TaskSystem {
|
|||
plugin.registerListener(pingCountTimer);
|
||||
long startDelay = TimeAmount.toTicks(config.getNumber(Settings.PING_SERVER_ENABLE_DELAY), TimeUnit.SECONDS);
|
||||
runnableFactory.create("PingCountTimer", pingCountTimer).runTaskTimer(startDelay, PingCountTimerBungee.PING_INTERVAL);
|
||||
|
||||
registerTask(playersPageRefreshTask)
|
||||
.runTaskTimerAsynchronously(TimeAmount.toTicks(5L, TimeUnit.MINUTES), TimeAmount.toTicks(5L, TimeUnit.MINUTES));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,15 @@
|
|||
package com.djrapitops.plan.system.tasks;
|
||||
|
||||
import com.djrapitops.plan.system.webserver.cache.PageId;
|
||||
import com.djrapitops.plan.system.webserver.cache.ResponseCache;
|
||||
import com.djrapitops.plugin.task.AbsRunnable;
|
||||
|
||||
import javax.inject.Singleton;
|
||||
|
||||
@Singleton
|
||||
public class PlayersPageRefreshTask extends AbsRunnable {
|
||||
@Override
|
||||
public void run() {
|
||||
ResponseCache.clearResponse(PageId.PLAYERS.id());
|
||||
}
|
||||
}
|
|
@ -21,6 +21,7 @@ public abstract class ServerTaskSystem extends TaskSystem {
|
|||
private final BootAnalysisTask bootAnalysisTask;
|
||||
private final PeriodicAnalysisTask periodicAnalysisTask;
|
||||
private final LogsFolderCleanTask logsFolderCleanTask;
|
||||
private final PlayersPageRefreshTask playersPageRefreshTask;
|
||||
|
||||
public ServerTaskSystem(
|
||||
RunnableFactory runnableFactory,
|
||||
|
@ -28,13 +29,14 @@ public abstract class ServerTaskSystem extends TaskSystem {
|
|||
PlanConfig config,
|
||||
BootAnalysisTask bootAnalysisTask,
|
||||
PeriodicAnalysisTask periodicAnalysisTask,
|
||||
LogsFolderCleanTask logsFolderCleanTask
|
||||
) {
|
||||
LogsFolderCleanTask logsFolderCleanTask,
|
||||
PlayersPageRefreshTask playersPageRefreshTask) {
|
||||
super(runnableFactory, tpsCountTimer);
|
||||
this.config = config;
|
||||
this.bootAnalysisTask = bootAnalysisTask;
|
||||
this.periodicAnalysisTask = periodicAnalysisTask;
|
||||
this.logsFolderCleanTask = logsFolderCleanTask;
|
||||
this.playersPageRefreshTask = playersPageRefreshTask;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -62,5 +64,7 @@ public abstract class ServerTaskSystem extends TaskSystem {
|
|||
config.getNetworkSettings().loadSettingsFromDB();
|
||||
}
|
||||
}).runTaskAsynchronously();
|
||||
registerTask(playersPageRefreshTask)
|
||||
.runTaskTimerAsynchronously(TimeAmount.toTicks(5L, TimeUnit.MINUTES), TimeAmount.toTicks(5L, TimeUnit.MINUTES));
|
||||
}
|
||||
}
|
|
@ -29,7 +29,8 @@ public class SpongeTaskSystem extends ServerTaskSystem {
|
|||
BootAnalysisTask bootAnalysisTask,
|
||||
PeriodicAnalysisTask periodicAnalysisTask,
|
||||
PingCountTimerSponge pingCountTimer,
|
||||
LogsFolderCleanTask logsFolderCleanTask
|
||||
LogsFolderCleanTask logsFolderCleanTask,
|
||||
PlayersPageRefreshTask playersPageRefreshTask
|
||||
) {
|
||||
super(
|
||||
runnableFactory,
|
||||
|
@ -37,8 +38,8 @@ public class SpongeTaskSystem extends ServerTaskSystem {
|
|||
config,
|
||||
bootAnalysisTask,
|
||||
periodicAnalysisTask,
|
||||
logsFolderCleanTask
|
||||
);
|
||||
logsFolderCleanTask,
|
||||
playersPageRefreshTask);
|
||||
this.plugin = plugin;
|
||||
this.pingCountTimer = pingCountTimer;
|
||||
}
|
||||
|
|
|
@ -30,6 +30,7 @@ public class VelocityTaskSystem extends TaskSystem {
|
|||
private final NetworkPageRefreshTask networkPageRefreshTask;
|
||||
private final PingCountTimerVelocity pingCountTimer;
|
||||
private final LogsFolderCleanTask logsFolderCleanTask;
|
||||
private final PlayersPageRefreshTask playersPageRefreshTask;
|
||||
|
||||
@Inject
|
||||
public VelocityTaskSystem(
|
||||
|
@ -39,8 +40,8 @@ public class VelocityTaskSystem extends TaskSystem {
|
|||
VelocityTPSCountTimer velocityTPSCountTimer,
|
||||
NetworkPageRefreshTask networkPageRefreshTask,
|
||||
PingCountTimerVelocity pingCountTimer,
|
||||
LogsFolderCleanTask logsFolderCleanTask
|
||||
) {
|
||||
LogsFolderCleanTask logsFolderCleanTask,
|
||||
PlayersPageRefreshTask playersPageRefreshTask) {
|
||||
super(runnableFactory, velocityTPSCountTimer);
|
||||
this.plugin = plugin;
|
||||
this.config = config;
|
||||
|
@ -48,6 +49,7 @@ public class VelocityTaskSystem extends TaskSystem {
|
|||
this.networkPageRefreshTask = networkPageRefreshTask;
|
||||
this.pingCountTimer = pingCountTimer;
|
||||
this.logsFolderCleanTask = logsFolderCleanTask;
|
||||
this.playersPageRefreshTask = playersPageRefreshTask;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -69,5 +71,8 @@ public class VelocityTaskSystem extends TaskSystem {
|
|||
plugin.registerListener(pingCountTimer);
|
||||
long startDelay = TimeAmount.toTicks(config.getNumber(Settings.PING_SERVER_ENABLE_DELAY), TimeUnit.SECONDS);
|
||||
runnableFactory.create("PingCountTimer", pingCountTimer).runTaskTimer(startDelay, PingCountTimerBungee.PING_INTERVAL);
|
||||
|
||||
registerTask(playersPageRefreshTask)
|
||||
.runTaskTimerAsynchronously(TimeAmount.toTicks(5L, TimeUnit.MINUTES), TimeAmount.toTicks(5L, TimeUnit.MINUTES));
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue