From 46b14c30d76080a09200784ee767c3e93802bb1f Mon Sep 17 00:00:00 2001 From: Bukkit/Spigot <noreply+git-bukkit@papermc.io> Date: Fri, 26 Jun 2020 10:49:24 +1000 Subject: [PATCH] #500: Add PersistentDataContainer#getKeys() By: Parker Hawke <hawkeboyz2@hotmail.com> --- .../bukkit/persistence/PersistentDataContainer.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/paper-api/src/main/java/org/bukkit/persistence/PersistentDataContainer.java b/paper-api/src/main/java/org/bukkit/persistence/PersistentDataContainer.java index 05a93aa314..bf2a957be5 100644 --- a/paper-api/src/main/java/org/bukkit/persistence/PersistentDataContainer.java +++ b/paper-api/src/main/java/org/bukkit/persistence/PersistentDataContainer.java @@ -1,5 +1,6 @@ package org.bukkit.persistence; +import java.util.Set; import org.bukkit.NamespacedKey; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -114,6 +115,18 @@ public interface PersistentDataContainer { @NotNull <T, Z> Z getOrDefault(@NotNull NamespacedKey key, @NotNull PersistentDataType<T, Z> type, @NotNull Z defaultValue); + /** + * Get a set of keys present on this {@link PersistentDataContainer} + * instance. + * + * Any changes made to the returned set will not be reflected on the + * instance. + * + * @return the key set + */ + @NotNull + Set<NamespacedKey> getKeys(); + /** * Removes a custom key from the {@link PersistentDataHolder} instance. *