aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/api/0215-Add-getOfflinePlayerIfCached-String.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/api/0215-Add-getOfflinePlayerIfCached-String.patch')
-rw-r--r--patches/api/0215-Add-getOfflinePlayerIfCached-String.patch68
1 files changed, 68 insertions, 0 deletions
diff --git a/patches/api/0215-Add-getOfflinePlayerIfCached-String.patch b/patches/api/0215-Add-getOfflinePlayerIfCached-String.patch
new file mode 100644
index 0000000000..402eff8c38
--- /dev/null
+++ b/patches/api/0215-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 79db7b5c25a7c824b107a5c79f40c61983d2757c..732ed3724e784ad659cb4411dbd73b42a8330a2c 100644
+--- a/src/main/java/org/bukkit/Bukkit.java
++++ b/src/main/java/org/bukkit/Bukkit.java
+@@ -1373,6 +1373,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 8aba385b9d1a9b71c3304f1d802f18d4434f34d5..395f7910f535bfd33a5676b011ab62a53e30e140 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.