From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Lulu13022002 <41980282+Lulu13022002@users.noreply.github.com> Date: Sat, 9 Jul 2022 17:17:04 +0200 Subject: [PATCH] Add Offline PDC API diff --git a/src/main/java/org/bukkit/OfflinePlayer.java b/src/main/java/org/bukkit/OfflinePlayer.java index 18720a965b814d02e783d5039da90af0e966025d..5622fe3165baad8138c22cfc016ed6c3834cf702 100644 --- a/src/main/java/org/bukkit/OfflinePlayer.java +++ b/src/main/java/org/bukkit/OfflinePlayer.java @@ -19,7 +19,7 @@ import org.jetbrains.annotations.Nullable; * player that is stored on the disk and can, thus, be retrieved without the * player needing to be online. */ -public interface OfflinePlayer extends ServerOperator, AnimalTamer, ConfigurationSerializable { +public interface OfflinePlayer extends ServerOperator, AnimalTamer, ConfigurationSerializable, io.papermc.paper.persistence.PersistentDataViewHolder { // Paper - Add Offline PDC API /** * Checks if this player is currently online @@ -557,4 +557,20 @@ public interface OfflinePlayer extends ServerOperator, AnimalTamer, Configuratio */ @Nullable public Location getLocation(); + // Paper start - add pdc to offline player + /** + * Yields a view of the persistent data container for this offline player. + * In case this {@link OfflinePlayer} instance was created for an offline player, the returned view will wrap the persistent + * data on disk. + *
+ * As such, this method as well as queries to the {@link io.papermc.paper.persistence.PersistentDataContainerView} + * may produce blocking IO requests to read the requested data from disk. + * Caution in its usage is hence advised. + * + * @return the persistent data container view + * @see io.papermc.paper.persistence.PersistentDataViewHolder#getPersistentDataContainer() + */ + @Override + io.papermc.paper.persistence.@NotNull PersistentDataContainerView getPersistentDataContainer(); + // Paper end - add pdc to offline player }