summaryrefslogtreecommitdiffstats
path: root/EssentialsAntiCheat/src/com/earth2me/essentials/anticheat/debug/LagMeasureTask.java
diff options
context:
space:
mode:
Diffstat (limited to 'EssentialsAntiCheat/src/com/earth2me/essentials/anticheat/debug/LagMeasureTask.java')
-rw-r--r--EssentialsAntiCheat/src/com/earth2me/essentials/anticheat/debug/LagMeasureTask.java99
1 files changed, 0 insertions, 99 deletions
diff --git a/EssentialsAntiCheat/src/com/earth2me/essentials/anticheat/debug/LagMeasureTask.java b/EssentialsAntiCheat/src/com/earth2me/essentials/anticheat/debug/LagMeasureTask.java
deleted file mode 100644
index 4acb5a5f2..000000000
--- a/EssentialsAntiCheat/src/com/earth2me/essentials/anticheat/debug/LagMeasureTask.java
+++ /dev/null
@@ -1,99 +0,0 @@
-package com.earth2me.essentials.anticheat.debug;
-
-import com.earth2me.essentials.anticheat.NoCheat;
-import org.bukkit.World;
-
-
-/**
- * A task running in the background that measures tick time vs. real time
- *
- */
-public class LagMeasureTask implements Runnable
-{
- private int ingameseconds = 1;
- private long lastIngamesecondTime = System.currentTimeMillis();
- private long lastIngamesecondDuration = 2000L;
- private boolean skipCheck = false;
- private int lagMeasureTaskId = -1;
- private final NoCheat plugin;
-
- public LagMeasureTask(NoCheat plugin)
- {
- this.plugin = plugin;
- }
-
- public void start()
- {
- // start measuring with a delay of 10 seconds
- lagMeasureTaskId = plugin.getServer().getScheduler().scheduleSyncRepeatingTask(plugin, this, 20, 20);
- }
-
- public void run()
- {
- try
- {
- boolean oldStatus = skipCheck;
- // If the previous second took to long, skip checks during
- // this second
- skipCheck = lastIngamesecondDuration > 2000;
-
- if (plugin.getConfig((World)null).logging.debugmessages)
- {
- if (oldStatus != skipCheck && skipCheck)
- {
- plugin.getLogger().warning("detected server lag, some checks will not work.");
- }
- else if (oldStatus != skipCheck && !skipCheck)
- {
- plugin.getLogger().info("server lag seems to have stopped, reenabling checks.");
- }
- }
-
- long time = System.currentTimeMillis();
- lastIngamesecondDuration = time - lastIngamesecondTime;
- if (lastIngamesecondDuration < 1000)
- {
- lastIngamesecondDuration = 1000;
- }
- else if (lastIngamesecondDuration > 3600000)
- {
- lastIngamesecondDuration = 3600000; // top limit of 1
- // hour per "second"
- }
- lastIngamesecondTime = time;
- ingameseconds++;
-
- // Check if some data is outdated now and let it be removed
- if (ingameseconds % 62 == 0)
- {
- plugin.cleanDataMap();
- }
- }
- catch (Exception e)
- {
- // Just prevent this thread from dying for whatever reason
- }
-
- }
-
- public void cancel()
- {
- if (lagMeasureTaskId != -1)
- {
- try
- {
- plugin.getServer().getScheduler().cancelTask(lagMeasureTaskId);
- }
- catch (Exception e)
- {
- plugin.getLogger().warning("Couldn't cancel LagMeasureTask: " + e.getMessage());
- }
- lagMeasureTaskId = -1;
- }
- }
-
- public boolean skipCheck()
- {
- return skipCheck;
- }
-}