mirror of
https://github.com/GayPizzaSpecifications/foundation.git
synced 2025-08-03 05:30:55 +00:00
Add annotation for marking plugin main class.
This commit is contained in:
@ -0,0 +1,3 @@
|
|||||||
|
package gay.pizza.foundation.common
|
||||||
|
|
||||||
|
annotation class PluginMainClass
|
@ -2,6 +2,7 @@ package gay.pizza.foundation.bifrost
|
|||||||
|
|
||||||
import com.charleskorn.kaml.Yaml
|
import com.charleskorn.kaml.Yaml
|
||||||
import gay.pizza.foundation.bifrost.model.BifrostConfig
|
import gay.pizza.foundation.bifrost.model.BifrostConfig
|
||||||
|
import gay.pizza.foundation.common.PluginMainClass
|
||||||
import gay.pizza.foundation.core.FoundationCorePlugin
|
import gay.pizza.foundation.core.FoundationCorePlugin
|
||||||
import gay.pizza.foundation.core.Util
|
import gay.pizza.foundation.core.Util
|
||||||
import gay.pizza.foundation.core.util.AdvancementTitleCache
|
import gay.pizza.foundation.core.util.AdvancementTitleCache
|
||||||
@ -29,6 +30,7 @@ import kotlin.io.path.inputStream
|
|||||||
import net.dv8tion.jda.api.hooks.EventListener as DiscordEventListener
|
import net.dv8tion.jda.api.hooks.EventListener as DiscordEventListener
|
||||||
import org.bukkit.event.Listener as BukkitEventListener
|
import org.bukkit.event.Listener as BukkitEventListener
|
||||||
|
|
||||||
|
@PluginMainClass
|
||||||
class FoundationBifrostPlugin : JavaPlugin(), DiscordEventListener, BukkitEventListener {
|
class FoundationBifrostPlugin : JavaPlugin(), DiscordEventListener, BukkitEventListener {
|
||||||
private lateinit var config: BifrostConfig
|
private lateinit var config: BifrostConfig
|
||||||
private var jda: JDA? = null
|
private var jda: JDA? = null
|
||||||
@ -158,7 +160,7 @@ class FoundationBifrostPlugin : JavaPlugin(), DiscordEventListener, BukkitEventL
|
|||||||
if (!config.channel.sendPlayerDeath) return
|
if (!config.channel.sendPlayerDeath) return
|
||||||
@Suppress("DEPRECATION")
|
@Suppress("DEPRECATION")
|
||||||
var deathMessage = e.deathMessage
|
var deathMessage = e.deathMessage
|
||||||
if (deathMessage == null || deathMessage.isBlank()) {
|
if (deathMessage.isNullOrBlank()) {
|
||||||
deathMessage = "${e.player.name} died"
|
deathMessage = "${e.player.name} died"
|
||||||
}
|
}
|
||||||
sendEmbedMessage(Color.YELLOW, deathMessage)
|
sendEmbedMessage(Color.YELLOW, deathMessage)
|
||||||
|
@ -2,11 +2,13 @@ package gay.pizza.foundation.chaos
|
|||||||
|
|
||||||
import com.charleskorn.kaml.Yaml
|
import com.charleskorn.kaml.Yaml
|
||||||
import gay.pizza.foundation.chaos.model.ChaosConfig
|
import gay.pizza.foundation.chaos.model.ChaosConfig
|
||||||
|
import gay.pizza.foundation.common.PluginMainClass
|
||||||
import gay.pizza.foundation.core.FoundationCorePlugin
|
import gay.pizza.foundation.core.FoundationCorePlugin
|
||||||
import gay.pizza.foundation.core.Util
|
import gay.pizza.foundation.core.Util
|
||||||
import org.bukkit.plugin.java.JavaPlugin
|
import org.bukkit.plugin.java.JavaPlugin
|
||||||
import kotlin.io.path.inputStream
|
import kotlin.io.path.inputStream
|
||||||
|
|
||||||
|
@PluginMainClass
|
||||||
class FoundationChaosPlugin : JavaPlugin() {
|
class FoundationChaosPlugin : JavaPlugin() {
|
||||||
lateinit var config: ChaosConfig
|
lateinit var config: ChaosConfig
|
||||||
|
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
package gay.pizza.foundation.core
|
package gay.pizza.foundation.core
|
||||||
|
|
||||||
|
import gay.pizza.foundation.common.PluginMainClass
|
||||||
import gay.pizza.foundation.core.abstraction.FoundationPlugin
|
import gay.pizza.foundation.core.abstraction.FoundationPlugin
|
||||||
import gay.pizza.foundation.core.features.backup.BackupFeature
|
import gay.pizza.foundation.core.features.backup.BackupFeature
|
||||||
import gay.pizza.foundation.core.features.dev.DevFeature
|
import gay.pizza.foundation.core.features.dev.DevFeature
|
||||||
@ -13,13 +14,14 @@ import gay.pizza.foundation.core.features.world.WorldFeature
|
|||||||
import org.koin.dsl.module
|
import org.koin.dsl.module
|
||||||
import java.nio.file.Path
|
import java.nio.file.Path
|
||||||
|
|
||||||
|
@PluginMainClass
|
||||||
class FoundationCorePlugin : FoundationPlugin() {
|
class FoundationCorePlugin : FoundationPlugin() {
|
||||||
private lateinit var _pluginDataPath: Path
|
private lateinit var _pluginDataPath: Path
|
||||||
|
|
||||||
var pluginDataPath: Path
|
var pluginDataPath: Path
|
||||||
/**
|
/**
|
||||||
* Data path of the core plugin.
|
* Data path of the core plugin.
|
||||||
* Can be used as a sanity check of sorts for dependencies to be sure the plugin is loaded.
|
* Can be used as a check of sorts for dependencies to be sure the plugin is loaded.
|
||||||
*/
|
*/
|
||||||
get() {
|
get() {
|
||||||
if (!::_pluginDataPath.isInitialized) {
|
if (!::_pluginDataPath.isInitialized) {
|
||||||
|
@ -3,6 +3,7 @@ package gay.pizza.foundation.heimdall.plugin
|
|||||||
import com.charleskorn.kaml.Yaml
|
import com.charleskorn.kaml.Yaml
|
||||||
import com.zaxxer.hikari.HikariConfig
|
import com.zaxxer.hikari.HikariConfig
|
||||||
import com.zaxxer.hikari.HikariDataSource
|
import com.zaxxer.hikari.HikariDataSource
|
||||||
|
import gay.pizza.foundation.common.PluginMainClass
|
||||||
import gay.pizza.foundation.core.Util
|
import gay.pizza.foundation.core.Util
|
||||||
import gay.pizza.foundation.heimdall.plugin.buffer.BufferFlushThread
|
import gay.pizza.foundation.heimdall.plugin.buffer.BufferFlushThread
|
||||||
import gay.pizza.foundation.heimdall.plugin.buffer.EventBuffer
|
import gay.pizza.foundation.heimdall.plugin.buffer.EventBuffer
|
||||||
@ -26,7 +27,8 @@ import java.util.*
|
|||||||
import java.util.concurrent.ConcurrentHashMap
|
import java.util.concurrent.ConcurrentHashMap
|
||||||
import kotlin.io.path.inputStream
|
import kotlin.io.path.inputStream
|
||||||
|
|
||||||
class HeimdallPlugin : JavaPlugin(), Listener {
|
@PluginMainClass
|
||||||
|
class FoundationHeimdallPlugin : JavaPlugin(), Listener {
|
||||||
private lateinit var config: HeimdallConfig
|
private lateinit var config: HeimdallConfig
|
||||||
private lateinit var pool: HikariDataSource
|
private lateinit var pool: HikariDataSource
|
||||||
internal var db: Database? = null
|
internal var db: Database? = null
|
||||||
@ -45,7 +47,7 @@ class HeimdallPlugin : JavaPlugin(), Listener {
|
|||||||
val pluginDataPath = dataFolder.toPath()
|
val pluginDataPath = dataFolder.toPath()
|
||||||
pluginDataPath.toFile().mkdir()
|
pluginDataPath.toFile().mkdir()
|
||||||
|
|
||||||
val configPath = Util.copyDefaultConfig<HeimdallPlugin>(
|
val configPath = Util.copyDefaultConfig<FoundationHeimdallPlugin>(
|
||||||
slF4JLogger,
|
slF4JLogger,
|
||||||
pluginDataPath,
|
pluginDataPath,
|
||||||
"heimdall.yaml"
|
"heimdall.yaml"
|
||||||
@ -67,7 +69,7 @@ class HeimdallPlugin : JavaPlugin(), Listener {
|
|||||||
idleTimeout = Duration.ofMinutes(5).toMillis()
|
idleTimeout = Duration.ofMinutes(5).toMillis()
|
||||||
maxLifetime = Duration.ofMinutes(10).toMillis()
|
maxLifetime = Duration.ofMinutes(10).toMillis()
|
||||||
})
|
})
|
||||||
val initMigrationContent = HeimdallPlugin::class.java.getResourceAsStream(
|
val initMigrationContent = FoundationHeimdallPlugin::class.java.getResourceAsStream(
|
||||||
"/init.sql"
|
"/init.sql"
|
||||||
)?.readAllBytes()?.decodeToString() ?: throw RuntimeException("Unable to find Heimdall init.sql")
|
)?.readAllBytes()?.decodeToString() ?: throw RuntimeException("Unable to find Heimdall init.sql")
|
||||||
|
|
@ -1,10 +1,10 @@
|
|||||||
package gay.pizza.foundation.heimdall.plugin.buffer
|
package gay.pizza.foundation.heimdall.plugin.buffer
|
||||||
|
|
||||||
import gay.pizza.foundation.heimdall.plugin.HeimdallPlugin
|
import gay.pizza.foundation.heimdall.plugin.FoundationHeimdallPlugin
|
||||||
import org.jetbrains.exposed.sql.transactions.transaction
|
import org.jetbrains.exposed.sql.transactions.transaction
|
||||||
import java.util.concurrent.atomic.AtomicBoolean
|
import java.util.concurrent.atomic.AtomicBoolean
|
||||||
|
|
||||||
class BufferFlushThread(val plugin: HeimdallPlugin, val buffer: EventBuffer) {
|
class BufferFlushThread(val plugin: FoundationHeimdallPlugin, val buffer: EventBuffer) {
|
||||||
private val running = AtomicBoolean(false)
|
private val running = AtomicBoolean(false)
|
||||||
private var thread: Thread? = null
|
private var thread: Thread? = null
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user