diff --git a/patches/api/Add-new-overload-to-PersistentDataContainer-has.patch b/patches/api/Add-new-overload-to-PersistentDataContainer-has.patch new file mode 100644 index 000000000..12f229698 --- /dev/null +++ b/patches/api/Add-new-overload-to-PersistentDataContainer-has.patch @@ -0,0 +1,30 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: u9g +Date: Mon, 3 Jan 2022 23:27:21 -0500 +Subject: [PATCH] Add new overload to PersistentDataContainer#has + +Adds the new overload: PersistentDataContainer#has(NamespacedKey key) + +diff --git a/src/main/java/org/bukkit/persistence/PersistentDataContainer.java b/src/main/java/org/bukkit/persistence/PersistentDataContainer.java +index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +--- a/src/main/java/org/bukkit/persistence/PersistentDataContainer.java ++++ b/src/main/java/org/bukkit/persistence/PersistentDataContainer.java +@@ -0,0 +0,0 @@ public interface PersistentDataContainer { + */ + @NotNull + PersistentDataAdapterContext getAdapterContext(); ++ ++ // Paper start ++ /** ++ * Returns if the persistent metadata provider has metadata registered ++ * matching the provided key. ++ * ++ * @param key the key for which existence should be checked. ++ * ++ * @return whether the key exists ++ * ++ * @throws NullPointerException if the key to look up is null ++ */ ++ boolean has(@NotNull NamespacedKey key); ++ // Paper end + } diff --git a/patches/server/Add-new-overload-to-PersistentDataContainer-has.patch b/patches/server/Add-new-overload-to-PersistentDataContainer-has.patch new file mode 100644 index 000000000..454cacd91 --- /dev/null +++ b/patches/server/Add-new-overload-to-PersistentDataContainer-has.patch @@ -0,0 +1,24 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: u9g +Date: Mon, 3 Jan 2022 23:32:42 -0500 +Subject: [PATCH] Add new overload to PersistentDataContainer#has + +Adds the new overload: PersistentDataContainer#has(NamespacedKey key) + +diff --git a/src/main/java/org/bukkit/craftbukkit/persistence/CraftPersistentDataContainer.java b/src/main/java/org/bukkit/craftbukkit/persistence/CraftPersistentDataContainer.java +index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +--- a/src/main/java/org/bukkit/craftbukkit/persistence/CraftPersistentDataContainer.java ++++ b/src/main/java/org/bukkit/craftbukkit/persistence/CraftPersistentDataContainer.java +@@ -0,0 +0,0 @@ public class CraftPersistentDataContainer implements PersistentDataContainer { + public void clear() { + this.customDataTags.clear(); + } ++ ++ @Override ++ public boolean has(NamespacedKey key) { ++ Validate.notNull(key, "The provided key for the custom value was null"); ++ ++ return this.customDataTags.containsKey(key.toString()); ++ } + // Paper end + }