Package net.minecraft.resources
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 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 location, char separator) intintcompareTo(Identifier other) private 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) toLanguageKey(String type) toLanguageKey(String type, String key) toString()static @Nullable Identifierstatic @Nullable IdentifiertryBySeparator(String location, char separator) static @Nullable IdentifierAttempts to parse the specifiedlocationas anIdentifierby splitting it into a namespace and path by a colon.static booleanvalidNamespaceChar(char namespaceChar) static booleanvalidPathChar(char pathChar) static IdentifierwithDefaultNamespace(String location) withPath(UnaryOperator<String> pathOperator) withPrefix(String pathPrefix) withSuffix(String pathSuffix)
-
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:
-
namespace
-
path
-
-
Constructor Details
-
Identifier
-
-
Method Details
-
createUntrusted
-
fromNamespaceAndPath
-
parse
-
withDefaultNamespace
-
tryParse
Attempts to parse the specifiedlocationas anIdentifierby 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:
location- the location string to try to parse as anIdentifier- 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
public int hashCode() -
compareTo
- Specified by:
compareToin interfaceComparable<Identifier>
-
compareNamespaced
-
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 pathChar) -
validNamespaceChar
public static boolean validNamespaceChar(char namespaceChar) -
assertValidPath
-