Class RegistriesHolder
java.lang.Object
net.mathias2246.buildmc.util.RegistriesHolder
A registry-holder stores a collection of
DeferredRegistry instances under a certain key.
BuildMC and Extension plugins should all register static or type instances inside DeferredRegistries.
Storing certain types in registries allows other plugins to access them and add or remove entries before the server finishes loading all plugins.
Other extension plugins can retrieve the BuildMC registry-holder through the api using api.getRegistriesHolder();
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classA Builder class used to create new instances ofRegistriesHolders. -
Method Summary
Modifier and TypeMethodDescription<T extends org.bukkit.Keyed>
DeferredRegistry<T> addRegistry(@NotNull String key, @NotNull DeferredRegistry<T> registry) Adds aDeferredRegistryto this holder under a certain key.@Nullable DeferredRegistry<?> Retrieves aDeferredRegistryinstance from this holder by its key.<T extends org.bukkit.Keyed>
@Nullable DeferredRegistry<T> Retrieves aDeferredRegistryinstance from this holder by its key.<T extends org.bukkit.Keyed>
Optional<DeferredRegistry<T>> getOptional(@Nullable String key) Optionally retrieves aDeferredRegistryinstance from this holder by its key.
-
Method Details
-
get
Retrieves aDeferredRegistryinstance from this holder by its key.- Returns:
- The
DeferredRegistryinstance stored under the given key, or null if not existing.
-
getAsType
@Nullable public <T extends org.bukkit.Keyed> @Nullable DeferredRegistry<T> getAsType(@NotNull @NotNull String key) Retrieves aDeferredRegistryinstance from this holder by its key.- Returns:
- The
DeferredRegistryinstance stored under the given key, or null if not existing.
-
addRegistry
public <T extends org.bukkit.Keyed> DeferredRegistry<T> addRegistry(@NotNull @NotNull String key, @NotNull @NotNull DeferredRegistry<T> registry) Adds aDeferredRegistryto this holder under a certain key. -
getOptional
public <T extends org.bukkit.Keyed> Optional<DeferredRegistry<T>> getOptional(@Nullable @Nullable String key) Optionally retrieves aDeferredRegistryinstance from this holder by its key.Usage
This method optionally returns aDeferredRegistry.
You could use the returnedOptionallike this:holder.getOptional("some_registry") .ifPresent( (registry) -> { registry.addEntry(...); // You can do anything here } );
-