Package org.bukkit
Class NamespacedKey
java.lang.Object
org.bukkit.NamespacedKey
- All Implemented Interfaces:
- Namespaced,- Comparable<net.kyori.adventure.key.Key>,- net.kyori.adventure.key.Key,- net.kyori.adventure.key.Keyed,- net.kyori.adventure.key.Namespaced,- net.kyori.examination.Examinable
Represents a String based key which consists of two components - a namespace
 and a key.
 Namespaces may only contain lowercase alphanumeric characters, periods,
 underscores, and hyphens.
 
Keys may only contain lowercase alphanumeric characters, periods, underscores, hyphens, and forward slashes.
- 
Field SummaryFieldsModifier and TypeFieldDescriptionstatic final StringThe namespace representing all keys generated by Bukkit for backwards compatibility measures.static final StringThe namespace representing all inbuilt keys.Fields inherited from interface net.kyori.adventure.key.KeyDEFAULT_SEPARATOR, MINECRAFT_NAMESPACE
- 
Constructor SummaryConstructorsConstructorDescriptionNamespacedKey(@NotNull String namespace, @NotNull String key) Create a key in a specific namespace.NamespacedKey(@NotNull Plugin plugin, @NotNull String key) Create a key in the plugin's namespace.
- 
Method SummaryModifier and TypeMethodDescriptionasString()booleanstatic @Nullable NamespacedKeyfromString(@NotNull String key) Get a NamespacedKey from the supplied string.static @Nullable NamespacedKeyfromString(@NotNull String string, @Nullable Plugin defaultNamespace) Get a NamespacedKey from the supplied string with a default namespace if a namespace is not defined.getKey()Gets the key corresponding to this resourceGets the namespace this resource is a part ofinthashCode()static @NotNull NamespacedKeyGet a key in the Minecraft namespace.static @NotNull NamespacedKeyDeprecated.should never be used by plugins, for internal use only!!toString()value()Methods inherited from class java.lang.Objectclone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface net.kyori.examination.ExaminableexaminableName, examineMethods inherited from interface net.kyori.adventure.key.KeycompareTo, examinableProperties, key
- 
Field Details- 
MINECRAFTThe namespace representing all inbuilt keys.- See Also:
 
- 
BUKKITThe namespace representing all keys generated by Bukkit for backwards compatibility measures.- See Also:
 
 
- 
- 
Constructor Details- 
NamespacedKeyCreate a key in a specific namespace.For most plugin related code, you should prefer using the NamespacedKey(Plugin, String)constructor.- Parameters:
- namespace- namespace
- key- key
- See Also:
 
- 
NamespacedKeyCreate a key in the plugin's namespace.Namespaces may only contain lowercase alphanumeric characters, periods, underscores, and hyphens. Keys may only contain lowercase alphanumeric characters, periods, underscores, hyphens, and forward slashes. - Parameters:
- plugin- the plugin to use for the namespace
- key- the key to create
 
 
- 
- 
Method Details- 
getNamespaceDescription copied from interface:NamespacedGets the namespace this resource is a part ofThis is contractually obligated to only contain lowercase alphanumeric characters, periods, underscores, and hyphens. - Specified by:
- getNamespacein interface- Namespaced
- Returns:
- resource namespace
 
- 
getKeyDescription copied from interface:NamespacedGets the key corresponding to this resourceThis is contractually obligated to only contain lowercase alphanumeric characters, periods, underscores, hyphens, and forward slashes. - Specified by:
- getKeyin interface- Namespaced
- Returns:
- resource key
 
- 
hashCodepublic int hashCode()
- 
equals
- 
toString
- 
randomKeyDeprecated.should never be used by plugins, for internal use only!!Return a new random key in theBUKKITnamespace.- Returns:
- new key
 
- 
minecraftGet a key in the Minecraft namespace.- Parameters:
- key- the key to use
- Returns:
- new key in the Minecraft namespace
 
- 
fromString@Nullable public static @Nullable NamespacedKey fromString(@NotNull @NotNull String string, @Nullable @Nullable Plugin defaultNamespace) Get a NamespacedKey from the supplied string with a default namespace if a namespace is not defined. This is a utility method meant to fetch a NamespacedKey from user input. Please note that casing does matter and any instance of uppercase characters will be considered invalid. The input contract is as follows:fromString("foo", plugin) -> "plugin:foo" fromString("foo:bar", plugin) -> "foo:bar" fromString(":foo", null) -> "minecraft:foo" fromString("foo", null) -> "minecraft:foo" fromString("Foo", plugin) -> null fromString(":Foo", plugin) -> null fromString("foo:bar:bazz", plugin) -> null fromString("", plugin) -> null- Parameters:
- string- the string to convert to a NamespacedKey
- defaultNamespace- the default namespace to use if none was supplied. If null, the- minecraftnamespace (- minecraft(String)) will be used
- Returns:
- the created NamespacedKey. null if invalid key
- See Also:
 
- 
fromStringGet a NamespacedKey from the supplied string. The default namespace will be Minecraft's (i.e.minecraft(String)).- Parameters:
- key- the key to convert to a NamespacedKey
- Returns:
- the created NamespacedKey. null if invalid
- See Also:
 
- 
namespace- Specified by:
- namespacein interface- net.kyori.adventure.key.Key
- Specified by:
- namespacein interface- net.kyori.adventure.key.Namespaced
 
- 
value- Specified by:
- valuein interface- net.kyori.adventure.key.Key
 
- 
asString- Specified by:
- asStringin interface- net.kyori.adventure.key.Key
 
 
-