From b75a4fa22cf8cfd4b57bde52d8aa29e2651111b7 Mon Sep 17 00:00:00 2001 From: A248 Date: Thu, 29 Feb 2024 16:19:41 -0500 Subject: [PATCH] Update the expiration time in OnDemandMuteCache#restart --- .../selector/cache/AlwaysAvailableMuteCache.java | 14 ++++---------- .../core/selector/cache/OnDemandMuteCache.java | 2 +- 2 files changed, 5 insertions(+), 11 deletions(-) diff --git a/bans-core/src/main/java/space/arim/libertybans/core/selector/cache/AlwaysAvailableMuteCache.java b/bans-core/src/main/java/space/arim/libertybans/core/selector/cache/AlwaysAvailableMuteCache.java index cf87566d..40e09abe 100644 --- a/bans-core/src/main/java/space/arim/libertybans/core/selector/cache/AlwaysAvailableMuteCache.java +++ b/bans-core/src/main/java/space/arim/libertybans/core/selector/cache/AlwaysAvailableMuteCache.java @@ -44,7 +44,6 @@ import java.util.UUID; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.TimeUnit; -import java.util.function.Function; import java.util.function.Predicate; /** @@ -84,8 +83,7 @@ public AlwaysAvailableMuteCache(Configs configs, FactoryOfTheFuture futuresFacto @Override public void startup() { installCache((expirationTime, expirationSemantic) -> { - ConcurrentHashMap map = new ConcurrentHashMap<>(); - Cache cache = new Cache(map, expirationTime); + Cache cache = new Cache(new ConcurrentHashMap<>(), expirationTime); cache.startPurgeTask(); this.cache = cache; }); @@ -127,18 +125,14 @@ private CentralisedFuture formatMessage(Punishment mute) { @Override public CentralisedFuture> getCachedMute(UUID uuid, NetworkAddress address) { - return cacheRequestTo(uuid, address, MuteAndMessage::mute); + return cacheRequest(new MuteCacheKey(uuid, address)) + .thenApply((opt) -> opt.map(MuteAndMessage::mute)); } @Override public CentralisedFuture> getCachedMuteMessage(UUID uuid, NetworkAddress address) { - return cacheRequestTo(uuid, address, MuteAndMessage::message); - } - - private CentralisedFuture> cacheRequestTo(UUID uuid, NetworkAddress address, - Function toWhich) { return cacheRequest(new MuteCacheKey(uuid, address)) - .thenApply((muteAndMessage) -> muteAndMessage.map(toWhich)); + .thenApply((opt) -> opt.map(MuteAndMessage::message)); } private CentralisedFuture> cacheRequest(MuteCacheKey cacheKey) { diff --git a/bans-core/src/main/java/space/arim/libertybans/core/selector/cache/OnDemandMuteCache.java b/bans-core/src/main/java/space/arim/libertybans/core/selector/cache/OnDemandMuteCache.java index 5b950839..8d496cba 100644 --- a/bans-core/src/main/java/space/arim/libertybans/core/selector/cache/OnDemandMuteCache.java +++ b/bans-core/src/main/java/space/arim/libertybans/core/selector/cache/OnDemandMuteCache.java @@ -86,7 +86,7 @@ public void startup() { @Override public void restart() { - cache.synchronous().invalidateAll(); + startup(); } @Override