diff --git a/common/api/src/main/java/com/dfsek/terra/api/event/events/config/ConfigurationLoadEvent.java b/common/api/src/main/java/com/dfsek/terra/api/event/events/config/ConfigurationLoadEvent.java new file mode 100644 index 000000000..8565c7c17 --- /dev/null +++ b/common/api/src/main/java/com/dfsek/terra/api/event/events/config/ConfigurationLoadEvent.java @@ -0,0 +1,34 @@ +package com.dfsek.terra.api.event.events.config; + +import com.dfsek.tectonic.config.Configuration; +import com.dfsek.terra.api.config.ConfigPack; +import com.dfsek.terra.api.config.Loader; +import com.dfsek.terra.api.event.events.PackEvent; + +import java.util.function.Consumer; + +public class ConfigurationLoadEvent implements PackEvent { + private final ConfigPack pack; + private final Loader loader; + + private final Consumer consumer; + + public ConfigurationLoadEvent(ConfigPack pack, Loader loader, Consumer consumer) { + this.pack = pack; + this.loader = loader; + this.consumer = consumer; + } + + @Override + public ConfigPack getPack() { + return pack; + } + + public Loader getLoader() { + return loader; + } + + public void register(Configuration config) { + consumer.accept(config); + } +}