Class Identifier
java.lang.Object
net.minecraft.resources.Identifier
- All Implemented Interfaces:
Comparable<Identifier>
An immutable location of a resource, in terms of a path and namespace.
This is used as an identifier for a resource, usually for those housed in a Registry, such as blocks and items.
minecraft is always taken as the default namespace for a resource location when none is explicitly stated. When using this for registering objects, this namespace should only be used for resources added by Minecraft itself.
Generally, and by the implementation of toString(), the string representation of this class is expressed in the form namespace:path. The colon is also used as the default separator for parsing strings as an Identifier.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringstatic final com.mojang.serialization.Codec<Identifier> static final Stringstatic final com.mojang.brigadier.exceptions.SimpleCommandExceptionTypeprivate final Stringstatic final charprivate final Stringstatic final Stringstatic final StreamCodec<io.netty.buffer.ByteBuf, Identifier> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static StringassertValidNamespace(String namespace, String path) private static StringassertValidPath(String namespace, String path) static IdentifierbySeparator(String identifier, char separator) intintprivate static IdentifiercreateUntrusted(String namespace, String path) booleanstatic IdentifierfromNamespaceAndPath(String namespace, String path) getPath()inthashCode()static booleanisAllowedInIdentifier(char c) static booleanisValidNamespace(String namespace) static booleanisValidPath(String path) static Identifierstatic Identifierread(com.mojang.brigadier.StringReader reader) static com.mojang.serialization.DataResult<Identifier> private static StringreadGreedy(com.mojang.brigadier.StringReader reader) static IdentifierreadNonEmpty(com.mojang.brigadier.StringReader reader) resolveAgainst(Path root) toLanguageKey(String prefix) toLanguageKey(String prefix, String suffix) toString()static @Nullable Identifierstatic @Nullable IdentifiertryBySeparator(String identifier, char separator) static @Nullable IdentifierAttempts to parse the specifiedlocationas aResourceLocationby splitting it into a namespace and path by a colon.static booleanvalidNamespaceChar(char c) static booleanvalidPathChar(char c) static IdentifierwithDefaultNamespace(String path) withPath(UnaryOperator<String> modifier) withPrefix(String prefix) withSuffix(String suffix)
-
Field Details
-
CODEC
-
STREAM_CODEC
-
ERROR_INVALID
public static final com.mojang.brigadier.exceptions.SimpleCommandExceptionType ERROR_INVALID -
NAMESPACE_SEPARATOR
public static final char NAMESPACE_SEPARATOR- See Also:
-
DEFAULT_NAMESPACE
- See Also:
-
REALMS_NAMESPACE
- See Also:
-
ALLOWED_NAMESPACE_CHARACTERS
- See Also:
-
namespace
-
path
-
-
Constructor Details
-
Identifier
-
-
Method Details
-
createUntrusted
-
fromNamespaceAndPath
-
parse
-
withDefaultNamespace
-
tryParse
Attempts to parse the specifiedlocationas aResourceLocationby splitting it into a namespace and path by a colon.If no colon is present in the
location, the namespace defaults tominecraft, taking thelocationas the path.- Parameters:
identifier- the location string to try to parse as aResourceLocation- Returns:
- the parsed resource location; otherwise
nullif there is a non[a-z0-9_.-]character in the decomposed namespace or a non[a-z0-9/._-]character in the decomposed path - See Also:
-
tryBuild
-
bySeparator
-
tryBySeparator
-
read
-
getPath
-
getNamespace
-
withPath
-
withPath
-
withPrefix
-
withSuffix
-
toString
-
equals
-
hashCode
-
compareNamespaced
-
compareTo
- Specified by:
compareToin interfaceComparable<Identifier>
-
resolveAgainst
-
toDebugFileName
-
toLanguageKey
-
toShortLanguageKey
-
toShortString
-
toLanguageKey
-
toLanguageKey
-
readGreedy
-
read
public static Identifier read(com.mojang.brigadier.StringReader reader) throws com.mojang.brigadier.exceptions.CommandSyntaxException - Throws:
com.mojang.brigadier.exceptions.CommandSyntaxException
-
readNonEmpty
public static Identifier readNonEmpty(com.mojang.brigadier.StringReader reader) throws com.mojang.brigadier.exceptions.CommandSyntaxException - Throws:
com.mojang.brigadier.exceptions.CommandSyntaxException
-
isAllowedInIdentifier
public static boolean isAllowedInIdentifier(char c) -
isValidPath
- Returns:
trueif the specifiedpathis valid: consists only of[a-z0-9/._-]characters
-
isValidNamespace
- Returns:
trueif the specifiednamespaceis valid: consists only of[a-z0-9_.-]characters
-
assertValidNamespace
-
validPathChar
public static boolean validPathChar(char c) -
validNamespaceChar
public static boolean validNamespaceChar(char c) -
assertValidPath
-