From 5ecd17621225bf574478a2972e16fcedc8b84e6a Mon Sep 17 00:00:00 2001 From: ThiagoROX <51332006+SrBedrock@users.noreply.github.com> Date: Thu, 12 Sep 2024 02:47:00 -0300 Subject: [PATCH] Use TreeMap with CASE_INSENSITIVE_ORDER --- .../votifier/support/forwarding/cache/FileVoteCache.java | 7 ++++--- .../votifier/support/forwarding/cache/MemoryVoteCache.java | 3 ++- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/common/src/main/java/com/vexsoftware/votifier/support/forwarding/cache/FileVoteCache.java b/common/src/main/java/com/vexsoftware/votifier/support/forwarding/cache/FileVoteCache.java index 1c940c68..617e2447 100644 --- a/common/src/main/java/com/vexsoftware/votifier/support/forwarding/cache/FileVoteCache.java +++ b/common/src/main/java/com/vexsoftware/votifier/support/forwarding/cache/FileVoteCache.java @@ -157,13 +157,14 @@ public JsonObject serializeMap(Map } else { array.add(vote.serialize()); } - } // if, during our iteration, we TTL invalidated all the votes - if (entry.getValue().isEmpty()) + if (entry.getValue().isEmpty()) { entryItr.remove(); - o.add(entry.getKey(), array); + } else { + o.add(entry.getKey(), array); + } } return o; } diff --git a/common/src/main/java/com/vexsoftware/votifier/support/forwarding/cache/MemoryVoteCache.java b/common/src/main/java/com/vexsoftware/votifier/support/forwarding/cache/MemoryVoteCache.java index 0c2ba06c..f718a8fc 100644 --- a/common/src/main/java/com/vexsoftware/votifier/support/forwarding/cache/MemoryVoteCache.java +++ b/common/src/main/java/com/vexsoftware/votifier/support/forwarding/cache/MemoryVoteCache.java @@ -13,6 +13,7 @@ import java.util.HashSet; import java.util.Iterator; import java.util.Map; +import java.util.TreeMap; import java.util.concurrent.TimeUnit; import java.util.concurrent.locks.ReentrantLock; @@ -29,7 +30,7 @@ public class MemoryVoteCache implements VoteCache { public MemoryVoteCache(VotifierPlugin p, long voteTTL) { voteCache = new HashMap<>(); - playerVoteCache = new HashMap<>(); + playerVoteCache = new TreeMap<>(String.CASE_INSENSITIVE_ORDER); this.voteTTL = voteTTL;