aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/api/0214-Add-getOfflinePlayerIfCached-String.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/api/0214-Add-getOfflinePlayerIfCached-String.patch')
-rw-r--r--patches/api/0214-Add-getOfflinePlayerIfCached-String.patch68
1 files changed, 68 insertions, 0 deletions
diff --git a/patches/api/0214-Add-getOfflinePlayerIfCached-String.patch b/patches/api/0214-Add-getOfflinePlayerIfCached-String.patch
new file mode 100644
index 0000000000..065ab10dd0
--- /dev/null
+++ b/patches/api/0214-Add-getOfflinePlayerIfCached-String.patch
@@ -0,0 +1,68 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: oxygencraft <[email protected]>
+Date: Sun, 25 Oct 2020 18:35:58 +1100
+Subject: [PATCH] Add getOfflinePlayerIfCached(String)
+
+
+diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
+index f2fa4c419f212ea5d7ca0aab4ead4bd44dac5947..3210587c341bc8d80ddc7f387ca4030dbd0074c9 100644
+--- a/src/main/java/org/bukkit/Bukkit.java
++++ b/src/main/java/org/bukkit/Bukkit.java
+@@ -1370,6 +1370,27 @@ public final class Bukkit {
+ return server.getOfflinePlayer(name);
+ }
+
++ // Paper start
++ /**
++ * Gets the player by the given name, regardless if they are offline or
++ * online.
++ * <p>
++ * This will not make a web request to get the UUID for the given name,
++ * thus this method will not block. However this method will return
++ * {@code null} if the player is not cached.
++ * </p>
++ *
++ * @param name the name of the player to retrieve
++ * @return an offline player if cached, {@code null} otherwise
++ * @see #getOfflinePlayer(String)
++ * @see #getOfflinePlayer(java.util.UUID)
++ */
++ @Nullable
++ public static OfflinePlayer getOfflinePlayerIfCached(@NotNull String name) {
++ return server.getOfflinePlayerIfCached(name);
++ }
++ // Paper end
++
+ /**
+ * Gets the player by the given UUID, regardless if they are offline or
+ * online.
+diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
+index 711de014b7cf69459526e6c20c94f29ee4db11c4..f0c1d16c6bee58826a3cde3c4988e02690207fce 100644
+--- a/src/main/java/org/bukkit/Server.java
++++ b/src/main/java/org/bukkit/Server.java
+@@ -1157,6 +1157,25 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
+ @NotNull
+ public OfflinePlayer getOfflinePlayer(@NotNull String name);
+
++ // Paper start
++ /**
++ * Gets the player by the given name, regardless if they are offline or
++ * online.
++ * <p>
++ * This will not make a web request to get the UUID for the given name,
++ * thus this method will not block. However this method will return
++ * {@code null} if the player is not cached.
++ * </p>
++ *
++ * @param name the name of the player to retrieve
++ * @return an offline player if cached, {@code null} otherwise
++ * @see #getOfflinePlayer(String)
++ * @see #getOfflinePlayer(java.util.UUID)
++ */
++ @Nullable
++ public OfflinePlayer getOfflinePlayerIfCached(@NotNull String name);
++ // Paper end
++
+ /**
+ * Gets the player by the given UUID, regardless if they are offline or
+ * online.