Class ReloadableResourceManagerImpl
- All Implemented Interfaces:
AutoCloseable
,ResourceFactory
,ResourceManager
It starts with an empty active resource manager, and swaps the active resource manager whenever it reloads; in addition, closing it will replace the active resource manager with an empty one, and the reloadable manager itself is still accessible to users, as opposed to the lifecycled resource manager.
- Mappings:
Namespace Name official afy
intermediary net/minecraft/class_3304
named net/minecraft/resource/ReloadableResourceManagerImpl
-
Nested Class Summary
Nested classes/interfaces inherited from interface net.minecraft.resource.ResourceManager
ResourceManager.Empty
-
Field Summary
Modifier and TypeFieldDescriptionprivate LifecycledResourceManager
private static final org.slf4j.Logger
private final List<ResourceReloader>
private final ResourceType
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
boolean
Checks whether any of the currently-loaded resource packs contain an entry for the given id.findResources
(String startingPath, Predicate<String> pathPredicate) Returns a sorted list of identifiers matching a path predicate.Gets a set of all namespaces offered by the resource packs loaded by this manager.Gets all of the available resources to the corresponding resource identifier.Finds and returns the corresponding resource for a resource's identifier.void
registerReloader
(ResourceReloader reloader) Registers a reloader to all future reloads on this resource manager.reload
(Executor prepareExecutor, Executor applyExecutor, CompletableFuture<Unit> initialStage, List<ResourcePack> packs) Swaps the active resource manager with another one backed by the givenpacks
and start a reload.Gets a stream of loaded resource packs in increasing order of priority.
-
Field Details
-
LOGGER
private static final org.slf4j.Logger LOGGER- Mappings:
Namespace Name Mixin selector official a
Lafy;a:Lorg/slf4j/Logger;
intermediary field_14295
Lnet/minecraft/class_3304;field_14295:Lorg/slf4j/Logger;
named LOGGER
Lnet/minecraft/resource/ReloadableResourceManagerImpl;LOGGER:Lorg/slf4j/Logger;
-
activeManager
- Mappings:
Namespace Name Mixin selector official b
Lafy;b:Lafs;
intermediary field_36391
Lnet/minecraft/class_3304;field_36391:Lnet/minecraft/class_6860;
named activeManager
Lnet/minecraft/resource/ReloadableResourceManagerImpl;activeManager:Lnet/minecraft/resource/LifecycledResourceManager;
-
reloaders
- Mappings:
Namespace Name Mixin selector official c
Lafy;c:Ljava/util/List;
intermediary field_17935
Lnet/minecraft/class_3304;field_17935:Ljava/util/List;
named reloaders
Lnet/minecraft/resource/ReloadableResourceManagerImpl;reloaders:Ljava/util/List;
-
type
- Mappings:
Namespace Name Mixin selector official d
Lafy;d:Lafb;
intermediary field_14294
Lnet/minecraft/class_3304;field_14294:Lnet/minecraft/class_3264;
named type
Lnet/minecraft/resource/ReloadableResourceManagerImpl;type:Lnet/minecraft/resource/ResourceType;
-
-
Constructor Details
-
ReloadableResourceManagerImpl
- Mappings:
Namespace Name Mixin selector official <init>
Lafy;<init>(Lafb;)V
intermediary <init>
Lnet/minecraft/class_3304;<init>(Lnet/minecraft/class_3264;)V
named <init>
Lnet/minecraft/resource/ReloadableResourceManagerImpl;<init>(Lnet/minecraft/resource/ResourceType;)V
-
-
Method Details
-
close
public void close()- Specified by:
close
in interfaceAutoCloseable
-
registerReloader
Registers a reloader to all future reloads on this resource manager.- Mappings:
Namespace Name Mixin selector official a
Lafy;a(Lafv;)V
intermediary method_14477
Lnet/minecraft/class_3304;method_14477(Lnet/minecraft/class_3302;)V
named registerReloader
Lnet/minecraft/resource/ReloadableResourceManagerImpl;registerReloader(Lnet/minecraft/resource/ResourceReloader;)V
-
reload
public ResourceReload reload(Executor prepareExecutor, Executor applyExecutor, CompletableFuture<Unit> initialStage, List<ResourcePack> packs) Swaps the active resource manager with another one backed by the givenpacks
and start a reload.- Mappings:
Namespace Name Mixin selector official a
Lafy;a(Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Ljava/util/concurrent/CompletableFuture;Ljava/util/List;)Lafx;
intermediary method_18232
Lnet/minecraft/class_3304;method_18232(Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Ljava/util/concurrent/CompletableFuture;Ljava/util/List;)Lnet/minecraft/class_4011;
named reload
Lnet/minecraft/resource/ReloadableResourceManagerImpl;reload(Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Ljava/util/concurrent/CompletableFuture;Ljava/util/List;)Lnet/minecraft/resource/ResourceReload;
-
getResource
Finds and returns the corresponding resource for a resource's identifier.Starts by scanning each resource pack from highest priority to lowest. If no resource packs were found to contain the requested entry, will throw a
FileNotFoundException
.The returned resource must be closed to avoid resource leaks.
- Specified by:
getResource
in interfaceResourceFactory
- Parameters:
id
- the resource identifier to search for- Throws:
FileNotFoundException
- if the identified resource could not be found, or could not be loaded.IOException
- if the identified resource was found but a stream to it could not be opened.- Mappings:
Namespace Name Mixin selector official getResource
Lagc;getResource(Lyt;)Lafz;
intermediary method_14486
Lnet/minecraft/class_5912;method_14486(Lnet/minecraft/class_2960;)Lnet/minecraft/class_3298;
named getResource
Lnet/minecraft/resource/ResourceFactory;getResource(Lnet/minecraft/util/Identifier;)Lnet/minecraft/resource/Resource;
-
getAllNamespaces
Gets a set of all namespaces offered by the resource packs loaded by this manager.- Specified by:
getAllNamespaces
in interfaceResourceManager
- Mappings:
Namespace Name Mixin selector official a
Laga;a()Ljava/util/Set;
intermediary method_14487
Lnet/minecraft/class_3300;method_14487()Ljava/util/Set;
named getAllNamespaces
Lnet/minecraft/resource/ResourceManager;getAllNamespaces()Ljava/util/Set;
-
containsResource
Checks whether any of the currently-loaded resource packs contain an entry for the given id.Starts by querying the resource pack with the highest priority to lowest until it finds one that responds to the requested identifier.
- Specified by:
containsResource
in interfaceResourceManager
- Parameters:
id
- the resource identifier to search for- Mappings:
Namespace Name Mixin selector official a
Laga;a(Lyt;)Z
intermediary method_18234
Lnet/minecraft/class_3300;method_18234(Lnet/minecraft/class_2960;)Z
named containsResource
Lnet/minecraft/resource/ResourceManager;containsResource(Lnet/minecraft/util/Identifier;)Z
-
getAllResources
Gets all of the available resources to the corresponding resource identifier.Resources are returned in load order, or ascending order of priority, so the last element in the returned list is what would be returned normally by
ResourceFactory.getResource(net.minecraft.util.Identifier)
Each resource in this returned list must be closed to avoid resource leaks.
- Specified by:
getAllResources
in interfaceResourceManager
- Parameters:
id
- the resource identifier to search for- Throws:
FileNotFoundException
- if no matching resources could be found (i.e. if the list would be empty)IOException
- if resources were found, but any one of them could not be opened to be read.- Mappings:
Namespace Name Mixin selector official b
Laga;b(Lyt;)Ljava/util/List;
intermediary method_14489
Lnet/minecraft/class_3300;method_14489(Lnet/minecraft/class_2960;)Ljava/util/List;
named getAllResources
Lnet/minecraft/resource/ResourceManager;getAllResources(Lnet/minecraft/util/Identifier;)Ljava/util/List;
-
findResources
Returns a sorted list of identifiers matching a path predicate.Scanning begins in
startingPath
and each candidate file present under that directory will be offered up to the predicate to decide whether it should be included or not.Elements in the returned list may not, necessarily be unique. Additional effort is advised to ensure that duplicates in the returned list are discarded before loading.
- Specified by:
findResources
in interfaceResourceManager
- Parameters:
startingPath
- the starting path to begin scanning frompathPredicate
- a predicate to determine whether a path should be included or not- Returns:
- the list matching identifiers
- Mappings:
Namespace Name Mixin selector official a
Laga;a(Ljava/lang/String;Ljava/util/function/Predicate;)Ljava/util/Collection;
intermediary method_14488
Lnet/minecraft/class_3300;method_14488(Ljava/lang/String;Ljava/util/function/Predicate;)Ljava/util/Collection;
named findResources
Lnet/minecraft/resource/ResourceManager;findResources(Ljava/lang/String;Ljava/util/function/Predicate;)Ljava/util/Collection;
-
streamResourcePacks
Gets a stream of loaded resource packs in increasing order of priority.- Specified by:
streamResourcePacks
in interfaceResourceManager
- Mappings:
Namespace Name Mixin selector official b
Laga;b()Ljava/util/stream/Stream;
intermediary method_29213
Lnet/minecraft/class_3300;method_29213()Ljava/util/stream/Stream;
named streamResourcePacks
Lnet/minecraft/resource/ResourceManager;streamResourcePacks()Ljava/util/stream/Stream;
-