From 88c311a78576285f6a4f7c434b938eac5c1e275a Mon Sep 17 00:00:00 2001 From: Vrganj <43708436+Vrganj@users.noreply.github.com> Date: Sun, 5 May 2024 17:51:49 +0200 Subject: [PATCH] Use injected field rather than getInstance for worldManager & playerManager, optimize PlayyerManager#getPlayer --- .../main/java/com/plotsquared/bukkit/BukkitPlatform.java | 8 ++------ .../java/com/plotsquared/core/util/PlayerManager.java | 7 +------ 2 files changed, 3 insertions(+), 12 deletions(-) diff --git a/Bukkit/src/main/java/com/plotsquared/bukkit/BukkitPlatform.java b/Bukkit/src/main/java/com/plotsquared/bukkit/BukkitPlatform.java index 8aa3fb7c0..1f4dda1f7 100644 --- a/Bukkit/src/main/java/com/plotsquared/bukkit/BukkitPlatform.java +++ b/Bukkit/src/main/java/com/plotsquared/bukkit/BukkitPlatform.java @@ -24,7 +24,6 @@ import com.google.inject.Injector; import com.google.inject.Key; import com.google.inject.Singleton; import com.google.inject.Stage; -import com.google.inject.TypeLiteral; import com.plotsquared.bukkit.generator.BukkitPlotGenerator; import com.plotsquared.bukkit.inject.BackupModule; import com.plotsquared.bukkit.inject.BukkitModule; @@ -45,7 +44,6 @@ import com.plotsquared.bukkit.listener.SpigotListener; import com.plotsquared.bukkit.listener.WorldEvents; import com.plotsquared.bukkit.placeholder.PAPIPlaceholders; import com.plotsquared.bukkit.placeholder.PlaceholderFormatter; -import com.plotsquared.bukkit.player.BukkitPlayer; import com.plotsquared.bukkit.player.BukkitPlayerManager; import com.plotsquared.bukkit.util.BukkitUtil; import com.plotsquared.bukkit.util.BukkitWorld; @@ -1271,15 +1269,13 @@ public final class BukkitPlatform extends JavaPlugin implements Listener, PlotPl @Override public @NonNull PlatformWorldManager worldManager() { - return injector().getInstance(Key.get(new TypeLiteral>() { - })); + return worldManager; } @Override @NonNull - @SuppressWarnings("unchecked") public PlayerManager, ? extends Player> playerManager() { - return (PlayerManager) injector().getInstance(PlayerManager.class); + return playerManager; } @Override diff --git a/Core/src/main/java/com/plotsquared/core/util/PlayerManager.java b/Core/src/main/java/com/plotsquared/core/util/PlayerManager.java index 0d5f66e22..d699caafa 100644 --- a/Core/src/main/java/com/plotsquared/core/util/PlayerManager.java +++ b/Core/src/main/java/com/plotsquared/core/util/PlayerManager.java @@ -331,12 +331,7 @@ public abstract class PlayerManager

, T> { */ public @NonNull P getPlayer(final @NonNull UUID uuid) { synchronized (playerLock) { - P player = this.playerMap.get(uuid); - if (player == null) { - player = createPlayer(uuid); - this.playerMap.put(uuid, player); - } - return player; + return this.playerMap.computeIfAbsent(uuid, this::createPlayer); } }