Implement common configuration loading mechanism.

This commit is contained in:
2023-03-19 16:35:09 -07:00
parent 59fbea0a37
commit a043e0852f
9 changed files with 48 additions and 63 deletions

View File

@ -1,12 +1,9 @@
package gay.pizza.foundation.chaos
import com.charleskorn.kaml.Yaml
import gay.pizza.foundation.chaos.model.ChaosConfig
import gay.pizza.foundation.common.BaseFoundationPlugin
import gay.pizza.foundation.common.FoundationCoreLoader
import gay.pizza.foundation.shared.PluginMainClass
import gay.pizza.foundation.shared.copyDefaultConfig
import kotlin.io.path.inputStream
@PluginMainClass
class FoundationChaosPlugin : BaseFoundationPlugin() {
@ -18,12 +15,11 @@ class FoundationChaosPlugin : BaseFoundationPlugin() {
override fun onEnable() {
val foundation = FoundationCoreLoader.get(server)
val configPath = copyDefaultConfig<FoundationChaosPlugin>(
slF4JLogger,
foundation.pluginDataPath,
"chaos.yaml"
config = loadConfigurationWithDefault(
foundation,
ChaosConfig.serializer(),
"heimdall.yaml"
)
config = Yaml.default.decodeFromStream(ChaosConfig.serializer(), configPath.inputStream())
registerCommandExecutor("chaos", ChaosToggleCommand())
}
}