From 0ca4160d7b3ded2ad75546e8d3efdd983d97551d Mon Sep 17 00:00:00 2001 From: Matthew Cech Date: Fri, 24 May 2019 04:01:56 -0700 Subject: [PATCH] = Updated db upkeep frequency --- src/main/Superintendent.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/main/Superintendent.java b/src/main/Superintendent.java index 7a93c29..207a642 100644 --- a/src/main/Superintendent.java +++ b/src/main/Superintendent.java @@ -1,5 +1,7 @@ package main; +import java.util.concurrent.atomic.AtomicInteger; + import core.DatabaseManager; import core.LocCommands; import core.LocStrings; @@ -79,13 +81,20 @@ public class Superintendent return true; } + private static final Integer delayTimerReset = 5; + private static AtomicInteger delayTimerCurrent = new AtomicInteger(delayTimerReset); + // This is for stuff that we need to do on a regular basis, but don't // necessarily want running at all points in time. // Happens just after the command / plugin runs. public static boolean PerCommandUpkeepPost(JDA bot, DatabaseManager databaseManager) { - // Upkeep database - databaseManager.Upkeep(); + // Upkeep database lazily on occasion + if(delayTimerCurrent.decrementAndGet() < 0) + { + databaseManager.Upkeep(); + delayTimerCurrent.set(delayTimerReset); + } // Update command-specific RPManager.Upkeep(bot);