From 3fbfd27e64de904fafcdbf756c4e5db6e8e269bf Mon Sep 17 00:00:00 2001 From: tastybento Date: Sat, 31 Aug 2024 16:28:09 -0700 Subject: [PATCH] Use a temporary cache for players of 2 hours --- .../world/bentobox/bentobox/managers/PlayersManager.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/main/java/world/bentobox/bentobox/managers/PlayersManager.java b/src/main/java/world/bentobox/bentobox/managers/PlayersManager.java index dd5dd9bb0..a92f4c2e9 100644 --- a/src/main/java/world/bentobox/bentobox/managers/PlayersManager.java +++ b/src/main/java/world/bentobox/bentobox/managers/PlayersManager.java @@ -4,12 +4,11 @@ import java.util.Collections; import java.util.HashSet; import java.util.List; -import java.util.Map; import java.util.Objects; import java.util.Set; import java.util.UUID; import java.util.concurrent.CompletableFuture; -import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.TimeUnit; import org.bukkit.World; import org.bukkit.entity.Player; @@ -23,6 +22,7 @@ import world.bentobox.bentobox.database.objects.Island; import world.bentobox.bentobox.database.objects.Names; import world.bentobox.bentobox.database.objects.Players; +import world.bentobox.bentobox.util.ExpiringMap; import world.bentobox.bentobox.util.Util; public class PlayersManager { @@ -30,7 +30,7 @@ public class PlayersManager { private final BentoBox plugin; private Database handler; private final Database names; - private final Map playerCache = new ConcurrentHashMap<>(); + private final ExpiringMap playerCache = new ExpiringMap<>(2, TimeUnit.HOURS); private final @NonNull List nameCache; private final Set inTeleport; // this needs databasing @@ -61,6 +61,7 @@ public void setHandler(Database handler) { public void shutdown(){ handler.close(); + playerCache.shutdown(); } /**