package net.hareworks.simplymcdb import net.hareworks.simplymcdb.Config import net.hareworks.simplymcdb.database.Database import net.hareworks.simplymcdb.command.smcdb import net.hareworks.kommandlib.KommandLib import org.bukkit.plugin.java.JavaPlugin enum class State { ACTIVE, DISCONNECTED, DISABLED } public class App : JavaPlugin() { public var enabled: State = State.DISABLED private set(value) { field = value Config.config.set("enabled", !value.equals(State.DISABLED)) } companion object { lateinit var instance: App private set } lateinit var command: KommandLib private set override fun onEnable() { instance = this logger.info("simplymcdb enabled.") Config.init() command = KommandLib(this, "smcdb" to smcdb) } override fun onDisable() { enabled = State.DISABLED Database.disconnect() command.unregister() logger.info("simplymcdb disabled.") } public fun enable() { Database.connect() if (Database.instance == null) { enabled = State.DISCONNECTED return } logger.info("simplymcdb enabled.") enabled = State.ACTIVE } public fun disable() { Database.disconnect() logger.info("simplymcdb disabled.") enabled = State.DISABLED } }