mirror of
https://github.com/FabricMC/fabric.git
synced 2025-04-21 03:10:54 -04:00
optimize removeAll in ResourceManagerHelperImpl.sort (#298)
This commit is contained in:
parent
eff46b3d8e
commit
232e294c2c
2 changed files with 11 additions and 3 deletions
fabric-resource-loader-v0
|
@ -1,2 +1,2 @@
|
|||
archivesBaseName = "fabric-resource-loader-v0"
|
||||
version = getSubprojectVersion(project, "0.1.1")
|
||||
version = getSubprojectVersion(project, "0.1.2")
|
||||
|
|
|
@ -31,7 +31,8 @@ public class ResourceManagerHelperImpl implements ResourceManagerHelper {
|
|||
private static final Map<ResourceType, ResourceManagerHelperImpl> registryMap = new HashMap<>();
|
||||
private static final Logger LOGGER = LogManager.getLogger();
|
||||
|
||||
private final List<IdentifiableResourceReloadListener> addedListeners = new ArrayList<>();
|
||||
private final Set<Identifier> addedListenerIds = new HashSet<>();
|
||||
private final Set<IdentifiableResourceReloadListener> addedListeners = new LinkedHashSet<>();
|
||||
|
||||
public static ResourceManagerHelper get(ResourceType type) {
|
||||
return registryMap.computeIfAbsent(type, (t) -> new ResourceManagerHelperImpl());
|
||||
|
@ -83,6 +84,13 @@ public class ResourceManagerHelperImpl implements ResourceManagerHelper {
|
|||
|
||||
@Override
|
||||
public void registerReloadListener(IdentifiableResourceReloadListener listener) {
|
||||
addedListeners.add(listener);
|
||||
if (!addedListenerIds.add(listener.getFabricId())) {
|
||||
LOGGER.warn("Tried to register resource reload listener " + listener.getFabricId() + " twice!");
|
||||
return;
|
||||
}
|
||||
|
||||
if (!addedListeners.add(listener)) {
|
||||
throw new RuntimeException("Listener with previously unknown ID " + listener.getFabricId() + " already in listener set!");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue