Package net.minecraft.util.registry
Class DynamicRegistryManager
java.lang.Object
net.minecraft.util.registry.DynamicRegistryManager
- Direct Known Subclasses:
DynamicRegistryManager.Impl
A manager of dynamic registries. It allows users to access non-hardcoded
registries reliably.
Each minecraft server has a dynamic registry manager for file-loaded registries, while each client play network handler has a dynamic registry manager for server-sent dynamic registries.
The DynamicRegistryManager.Impl
class serves as an immutable implementation of any particular collection
or configuration of dynamic registries.
- Mappings:
Namespace Name official gxintermediary net/minecraft/class_5455named net/minecraft/util/registry/DynamicRegistryManager
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classAn immutable implementation of the dynamic registry manager, representing a specialized configuration of registries.private static classRepresents the serialization behavior of the registries, including the id of the registry, the codec for its elements, and whether the registry should be sent to the client. -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static DynamicRegistryManager.Impl(package private) static Map<RegistryKey<? extends Registry<?>>,DynamicRegistryManager.Info<?>>private static Logger -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static <E> voidaddBuiltinEntries(DynamicRegistryManager.Impl manager, Registry<E> registry)Add all entries of theregistryto the corresponding registry within this manager.private static <R extends Registry<?>>
voidcopyFromBuiltin(DynamicRegistryManager.Impl manager, RegistryKey<R> registryRef)Add all entries of the registry referred byregistryRefto the corresponding registry within this manager.static DynamicRegistryManager.Implcreate()Creates a default dynamic registry manager.<E> Registry<E>get(RegistryKey<? extends Registry<? extends E>> key)Retrieves a registry from this manager, or throws an exception when the registry does not exist.<E> MutableRegistry<E>getMutable(RegistryKey<? extends Registry<? extends E>> key)getOptional(RegistryKey<? extends Registry<? extends E>> key)abstract <E> Optional<MutableRegistry<E>>getOptionalMutable(RegistryKey<? extends Registry<? extends E>> key)Retrieves a registry optionally from this manager.private static <E> voidload(RegistryOps<?> ops, DynamicRegistryManager dynamicRegistryManager, DynamicRegistryManager.Info<E> info)Loads elements from theopsinto the registry specified byinfowithin themanager.static voidload(DynamicRegistryManager dynamicRegistryManager, RegistryOps<?> registryOps)Loads a dynamic registry manager from the resource manager's data files.private static <E> voidmethod_31141(DynamicRegistryManager.Impl registryManager, RegistryOps.EntryLoader.Impl entryLoader, DynamicRegistryManager.Info<E> info)private static <E> voidregister(ImmutableMap.Builder<RegistryKey<? extends Registry<?>>,DynamicRegistryManager.Info<?>> infosBuilder, RegistryKey<? extends Registry<E>> registryRef, com.mojang.serialization.Codec<E> entryCodec)private static <E> voidregister(ImmutableMap.Builder<RegistryKey<? extends Registry<?>>,DynamicRegistryManager.Info<?>> infosBuilder, RegistryKey<? extends Registry<E>> registryRef, com.mojang.serialization.Codec<E> entryCodec, com.mojang.serialization.Codec<E> networkEntryCodec)
-
Field Details
-
LOGGER
- Mappings:
Namespace Name Mixin selector official aLgx;a:Lorg/apache/logging/log4j/Logger;intermediary field_25918Lnet/minecraft/class_5455;field_25918:Lorg/apache/logging/log4j/Logger;named LOGGERLnet/minecraft/util/registry/DynamicRegistryManager;LOGGER:Lorg/apache/logging/log4j/Logger;
-
INFOS
- Mappings:
Namespace Name Mixin selector official bLgx;b:Ljava/util/Map;intermediary field_25919Lnet/minecraft/class_5455;field_25919:Ljava/util/Map;named INFOSLnet/minecraft/util/registry/DynamicRegistryManager;INFOS:Ljava/util/Map;
-
BUILTIN
- Mappings:
Namespace Name Mixin selector official cLgx;c:Lgx$b;intermediary field_26733Lnet/minecraft/class_5455;field_26733:Lnet/minecraft/class_5455$class_5457;named BUILTINLnet/minecraft/util/registry/DynamicRegistryManager;BUILTIN:Lnet/minecraft/util/registry/DynamicRegistryManager$Impl;
-
-
Constructor Details
-
DynamicRegistryManager
public DynamicRegistryManager()
-
-
Method Details
-
getOptionalMutable
public abstract <E> Optional<MutableRegistry<E>> getOptionalMutable(RegistryKey<? extends Registry<? extends E>> key)Retrieves a registry optionally from this manager.- Mappings:
Namespace Name Mixin selector official aLgx;a(Lwv;)Ljava/util/Optional;intermediary method_30527Lnet/minecraft/class_5455;method_30527(Lnet/minecraft/class_5321;)Ljava/util/Optional;named getOptionalMutableLnet/minecraft/util/registry/DynamicRegistryManager;getOptionalMutable(Lnet/minecraft/util/registry/RegistryKey;)Ljava/util/Optional;
-
getMutable
- Mappings:
Namespace Name Mixin selector official bLgx;b(Lwv;)Lhc;intermediary method_33309Lnet/minecraft/class_5455;method_33309(Lnet/minecraft/class_5321;)Lnet/minecraft/class_2385;named getMutableLnet/minecraft/util/registry/DynamicRegistryManager;getMutable(Lnet/minecraft/util/registry/RegistryKey;)Lnet/minecraft/util/registry/MutableRegistry;
-
getOptional
public <E> Optional<? extends Registry<E>> getOptional(RegistryKey<? extends Registry<? extends E>> key)- Mappings:
Namespace Name Mixin selector official cLgx;c(Lwv;)Ljava/util/Optional;intermediary method_33310Lnet/minecraft/class_5455;method_33310(Lnet/minecraft/class_5321;)Ljava/util/Optional;named getOptionalLnet/minecraft/util/registry/DynamicRegistryManager;getOptional(Lnet/minecraft/util/registry/RegistryKey;)Ljava/util/Optional;
-
get
Retrieves a registry from this manager, or throws an exception when the registry does not exist.- Throws:
IllegalStateException- if the registry does not exist- Mappings:
Namespace Name Mixin selector official dLgx;d(Lwv;)Lgw;intermediary method_30530Lnet/minecraft/class_5455;method_30530(Lnet/minecraft/class_5321;)Lnet/minecraft/class_2378;named getLnet/minecraft/util/registry/DynamicRegistryManager;get(Lnet/minecraft/util/registry/RegistryKey;)Lnet/minecraft/util/registry/Registry;
-
register
private static <E> void register(ImmutableMap.Builder<RegistryKey<? extends Registry<?>>,DynamicRegistryManager.Info<?>> infosBuilder, RegistryKey<? extends Registry<E>> registryRef, com.mojang.serialization.Codec<E> entryCodec)- Mappings:
Namespace Name Mixin selector official aLgx;a(Lcom/google/common/collect/ImmutableMap$Builder;Lwv;Lcom/mojang/serialization/Codec;)Vintermediary method_30520Lnet/minecraft/class_5455;method_30520(Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/class_5321;Lcom/mojang/serialization/Codec;)Vnamed registerLnet/minecraft/util/registry/DynamicRegistryManager;register(Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/util/registry/RegistryKey;Lcom/mojang/serialization/Codec;)V
-
register
private static <E> void register(ImmutableMap.Builder<RegistryKey<? extends Registry<?>>,DynamicRegistryManager.Info<?>> infosBuilder, RegistryKey<? extends Registry<E>> registryRef, com.mojang.serialization.Codec<E> entryCodec, com.mojang.serialization.Codec<E> networkEntryCodec)- Mappings:
Namespace Name Mixin selector official aLgx;a(Lcom/google/common/collect/ImmutableMap$Builder;Lwv;Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/Codec;)Vintermediary method_31060Lnet/minecraft/class_5455;method_31060(Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/class_5321;Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/Codec;)Vnamed registerLnet/minecraft/util/registry/DynamicRegistryManager;register(Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/util/registry/RegistryKey;Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/Codec;)V
-
create
Creates a default dynamic registry manager.- Mappings:
Namespace Name Mixin selector official aLgx;a()Lgx$b;intermediary method_30528Lnet/minecraft/class_5455;method_30528()Lnet/minecraft/class_5455$class_5457;named createLnet/minecraft/util/registry/DynamicRegistryManager;create()Lnet/minecraft/util/registry/DynamicRegistryManager$Impl;
-
method_31141
private static <E> void method_31141(DynamicRegistryManager.Impl registryManager, RegistryOps.EntryLoader.Impl entryLoader, DynamicRegistryManager.Info<E> info)- Mappings:
Namespace Name Mixin selector official aLgx;a(Lgx$b;Lwt$b$a;Lgx$a;)Vintermediary method_31141Lnet/minecraft/class_5455;method_31141(Lnet/minecraft/class_5455$class_5457;Lnet/minecraft/class_5382$class_5506$class_5507;Lnet/minecraft/class_5455$class_5456;)Vnamed method_31141Lnet/minecraft/util/registry/DynamicRegistryManager;method_31141(Lnet/minecraft/util/registry/DynamicRegistryManager$Impl;Lnet/minecraft/util/dynamic/RegistryOps$EntryLoader$Impl;Lnet/minecraft/util/registry/DynamicRegistryManager$Info;)V
-
copyFromBuiltin
private static <R extends Registry<?>> void copyFromBuiltin(DynamicRegistryManager.Impl manager, RegistryKey<R> registryRef)Add all entries of the registry referred byregistryRefto the corresponding registry within this manager.- Mappings:
Namespace Name Mixin selector official aLgx;a(Lgx$b;Lwv;)Vintermediary method_30525Lnet/minecraft/class_5455;method_30525(Lnet/minecraft/class_5455$class_5457;Lnet/minecraft/class_5321;)Vnamed copyFromBuiltinLnet/minecraft/util/registry/DynamicRegistryManager;copyFromBuiltin(Lnet/minecraft/util/registry/DynamicRegistryManager$Impl;Lnet/minecraft/util/registry/RegistryKey;)V
-
addBuiltinEntries
private static <E> void addBuiltinEntries(DynamicRegistryManager.Impl manager, Registry<E> registry)Add all entries of theregistryto the corresponding registry within this manager.- Mappings:
Namespace Name Mixin selector official aLgx;a(Lgx$b;Lgw;)Vintermediary method_30524Lnet/minecraft/class_5455;method_30524(Lnet/minecraft/class_5455$class_5457;Lnet/minecraft/class_2378;)Vnamed addBuiltinEntriesLnet/minecraft/util/registry/DynamicRegistryManager;addBuiltinEntries(Lnet/minecraft/util/registry/DynamicRegistryManager$Impl;Lnet/minecraft/util/registry/Registry;)V
-
load
Loads a dynamic registry manager from the resource manager's data files.- Mappings:
Namespace Name Mixin selector official aLgx;a(Lgx;Lwt;)Vintermediary method_30519Lnet/minecraft/class_5455;method_30519(Lnet/minecraft/class_5455;Lnet/minecraft/class_5382;)Vnamed loadLnet/minecraft/util/registry/DynamicRegistryManager;load(Lnet/minecraft/util/registry/DynamicRegistryManager;Lnet/minecraft/util/dynamic/RegistryOps;)V
-
load
private static <E> void load(RegistryOps<?> ops, DynamicRegistryManager dynamicRegistryManager, DynamicRegistryManager.Info<E> info)Loads elements from theopsinto the registry specified byinfowithin themanager. Note that the resource manager instance is kept within theops.- Mappings:
Namespace Name Mixin selector official aLgx;a(Lwt;Lgx;Lgx$a;)Vintermediary method_30526Lnet/minecraft/class_5455;method_30526(Lnet/minecraft/class_5382;Lnet/minecraft/class_5455;Lnet/minecraft/class_5455$class_5456;)Vnamed loadLnet/minecraft/util/registry/DynamicRegistryManager;load(Lnet/minecraft/util/dynamic/RegistryOps;Lnet/minecraft/util/registry/DynamicRegistryManager;Lnet/minecraft/util/registry/DynamicRegistryManager$Info;)V
-