clean up addon registry initialization

This commit is contained in:
dfsek
2021-07-24 20:11:04 -07:00
parent 22aa03cd51
commit 074528003b

View File

@@ -54,13 +54,7 @@ public abstract class AbstractTerraPlugin implements TerraPlugin {
private final CommandManager manager = new TerraCommandManager(this);
private final AddonRegistry addonRegistry = Construct.construct(() -> {
Optional<TerraAddon> addon = getPlatformAddon();
AddonRegistry registry = addon.map(terraAddon -> new AddonRegistry(terraAddon, this)).orElseGet(() -> new AddonRegistry(this));
InternalAddon internalAddon = new InternalAddon(this);
registry.register(internalAddon);
return registry;
});
private final AddonRegistry addonRegistry;
public AbstractTerraPlugin() {
@@ -76,6 +70,9 @@ public abstract class AbstractTerraPlugin implements TerraPlugin {
profiler.start();
}
addonRegistry = getPlatformAddon().map(terraAddon -> new AddonRegistry(terraAddon, this)).orElseGet(() -> new AddonRegistry(this));
addonRegistry.register(new InternalAddon(this));
if(!addonRegistry.loadAll(getClass().getClassLoader())) { // load all addons
throw new IllegalStateException("Failed to load addons. Please correct addon installations to continue.");
}