ktlint (again)
This commit is contained in:
parent
dc14e3ee1e
commit
23afb34a97
|
@ -14,9 +14,9 @@ application {
|
||||||
tasks.withType<Jar> {
|
tasks.withType<Jar> {
|
||||||
manifest {
|
manifest {
|
||||||
attributes(
|
attributes(
|
||||||
mapOf(
|
mapOf(
|
||||||
"Main-Class" to botMainClass
|
"Main-Class" to botMainClass
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -47,4 +47,4 @@ dependencies {
|
||||||
|
|
||||||
tasks.withType<KotlinCompile> {
|
tasks.withType<KotlinCompile> {
|
||||||
kotlinOptions.jvmTarget = "1.8"
|
kotlinOptions.jvmTarget = "1.8"
|
||||||
}
|
}
|
||||||
|
|
|
@ -16,4 +16,4 @@ object Globals {
|
||||||
lateinit var systemConfig: SystemConfig
|
lateinit var systemConfig: SystemConfig
|
||||||
lateinit var features: Features
|
lateinit var features: Features
|
||||||
var commandCounter: AtomicInteger = AtomicInteger(0)
|
var commandCounter: AtomicInteger = AtomicInteger(0)
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,7 +2,10 @@ package moe.kageru.kagebot
|
||||||
|
|
||||||
import java.time.ZoneId
|
import java.time.ZoneId
|
||||||
import java.time.format.DateTimeFormatter
|
import java.time.format.DateTimeFormatter
|
||||||
import java.util.logging.*
|
import java.util.logging.FileHandler
|
||||||
|
import java.util.logging.Formatter
|
||||||
|
import java.util.logging.LogRecord
|
||||||
|
import java.util.logging.Logger
|
||||||
|
|
||||||
object Log {
|
object Log {
|
||||||
val log: Logger by lazy {
|
val log: Logger by lazy {
|
||||||
|
@ -17,9 +20,9 @@ object Log {
|
||||||
|
|
||||||
private class LogFormatter : Formatter() {
|
private class LogFormatter : Formatter() {
|
||||||
private val timeFormatter: DateTimeFormatter =
|
private val timeFormatter: DateTimeFormatter =
|
||||||
DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss").withZone(ZoneId.systemDefault())
|
DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss").withZone(ZoneId.systemDefault())
|
||||||
|
|
||||||
override fun format(record: LogRecord): String {
|
override fun format(record: LogRecord): String {
|
||||||
return "[${record.level}] ${timeFormatter.format(record.instant)}: ${record.message}\n"
|
return "[${record.level}] ${timeFormatter.format(record.instant)}: ${record.message}\n"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,7 +10,7 @@ import org.javacord.api.entity.permission.Role
|
||||||
import org.javacord.api.entity.user.User
|
import org.javacord.api.entity.user.User
|
||||||
import org.javacord.api.event.message.MessageCreateEvent
|
import org.javacord.api.event.message.MessageCreateEvent
|
||||||
import java.awt.Color
|
import java.awt.Color
|
||||||
import java.util.*
|
import java.util.Optional
|
||||||
import java.util.concurrent.CompletableFuture
|
import java.util.concurrent.CompletableFuture
|
||||||
import java.util.concurrent.CompletionException
|
import java.util.concurrent.CompletionException
|
||||||
|
|
||||||
|
@ -23,7 +23,7 @@ object Util {
|
||||||
* Mimics the behavior of [Optional.ifPresent], but returns null if the optional is empty,
|
* Mimics the behavior of [Optional.ifPresent], but returns null if the optional is empty,
|
||||||
* allowing easier fallback behavior via Kotlin’s ?: operator.
|
* allowing easier fallback behavior via Kotlin’s ?: operator.
|
||||||
*/
|
*/
|
||||||
inline fun <T, R> Optional<T>.ifNotEmpty(op: (T) -> R): R? {
|
private inline fun <T, R> Optional<T>.ifNotEmpty(op: (T) -> R): R? {
|
||||||
if (this.isPresent) {
|
if (this.isPresent) {
|
||||||
return op(this.get())
|
return op(this.get())
|
||||||
}
|
}
|
||||||
|
@ -114,4 +114,4 @@ object Util {
|
||||||
Globals.server.getMemberById(id).orElse(null)
|
Globals.server.getMemberById(id).orElse(null)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -34,4 +34,3 @@ class MessageActions(rawActions: RawMessageActions) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -38,4 +38,4 @@ internal class MessageRedirect(rawRedirect: RawRedirect) {
|
||||||
log.warning("Could not redirect message to channel $target")
|
log.warning("Could not redirect message to channel $target")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,4 +14,4 @@ internal class RoleAssignment(rawAssignment: RawAssignment) {
|
||||||
Util.userFromMessage(message)?.addRole(role, "Requested via command.")
|
Util.userFromMessage(message)?.addRole(role, "Requested via command.")
|
||||||
?: log.warning("Could not find user ${message.messageAuthor.name} for role assign")
|
?: log.warning("Could not find user ${message.messageAuthor.name} for role assign")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,7 +7,8 @@ class RawCommand(
|
||||||
val response: String?,
|
val response: String?,
|
||||||
val matchType: String?,
|
val matchType: String?,
|
||||||
val permissions: RawPermissions?,
|
val permissions: RawPermissions?,
|
||||||
@SerializedName("action") val actions: RawMessageActions?,
|
@SerializedName("action")
|
||||||
|
val actions: RawMessageActions?,
|
||||||
val embed: List<String>?,
|
val embed: List<String>?,
|
||||||
val feature: String?
|
val feature: String?
|
||||||
)
|
)
|
||||||
|
@ -15,4 +16,4 @@ class RawCommand(
|
||||||
class RawPermissions(val hasOneOf: List<String>?, val hasNoneOf: List<String>?, val onlyDM: Boolean)
|
class RawPermissions(val hasOneOf: List<String>?, val hasNoneOf: List<String>?, val onlyDM: Boolean)
|
||||||
class RawMessageActions(val delete: Boolean, val redirect: RawRedirect?, val assign: RawAssignment?)
|
class RawMessageActions(val delete: Boolean, val redirect: RawRedirect?, val assign: RawAssignment?)
|
||||||
class RawRedirect(val target: String?, val anonymous: Boolean)
|
class RawRedirect(val target: String?, val anonymous: Boolean)
|
||||||
class RawAssignment(var role: String?)
|
class RawAssignment(var role: String?)
|
||||||
|
|
|
@ -7,13 +7,15 @@ import java.io.File
|
||||||
class RawConfig(
|
class RawConfig(
|
||||||
val system: RawSystemConfig?,
|
val system: RawSystemConfig?,
|
||||||
val localization: RawLocalization?,
|
val localization: RawLocalization?,
|
||||||
@SerializedName("command") val commands: List<RawCommand>?,
|
@SerializedName("command")
|
||||||
@SerializedName("feature") val features: RawFeatures?
|
val commands: List<RawCommand>?,
|
||||||
|
@SerializedName("feature")
|
||||||
|
val features: RawFeatures?
|
||||||
) {
|
) {
|
||||||
companion object {
|
companion object {
|
||||||
const val DEFAULT_CONFIG_PATH = "config.toml"
|
private const val DEFAULT_CONFIG_PATH = "config.toml"
|
||||||
|
|
||||||
fun readFromString(tomlContent: String) = Toml().read(tomlContent).to(RawConfig::class.java)
|
fun readFromString(tomlContent: String): RawConfig = Toml().read(tomlContent).to(RawConfig::class.java)
|
||||||
|
|
||||||
fun read(path: String = DEFAULT_CONFIG_PATH): RawConfig {
|
fun read(path: String = DEFAULT_CONFIG_PATH): RawConfig {
|
||||||
val toml: Toml = Toml().read(run {
|
val toml: Toml = Toml().read(run {
|
||||||
|
|
|
@ -62,4 +62,4 @@ class DebugFeature : MessageFeature() {
|
||||||
|
|
||||||
private fun getOsInfo() = "Running on ${System.getProperty("os.name")} " +
|
private fun getOsInfo() = "Running on ${System.getProperty("os.name")} " +
|
||||||
"${System.getProperty("os.version")}-${System.getProperty("os.arch")}.\n"
|
"${System.getProperty("os.version")}-${System.getProperty("os.arch")}.\n"
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,4 +12,4 @@ class Features(val welcome: WelcomeFeature?, debug: DebugFeature, help: HelpFeat
|
||||||
private val featureMap = mapOf("help" to help, "debug" to debug, "welcome" to welcome)
|
private val featureMap = mapOf("help" to help, "debug" to debug, "welcome" to welcome)
|
||||||
|
|
||||||
fun findByString(feature: String) = featureMap[feature]
|
fun findByString(feature: String) = featureMap[feature]
|
||||||
}
|
}
|
||||||
|
|
|
@ -17,4 +17,4 @@ class HelpFeature : MessageFeature() {
|
||||||
private fun listCommands(message: MessageCreateEvent) = Globals.commands
|
private fun listCommands(message: MessageCreateEvent) = Globals.commands
|
||||||
.filter { it.matchType == MatchType.PREFIX && it.isAllowed(message) }
|
.filter { it.matchType == MatchType.PREFIX && it.isAllowed(message) }
|
||||||
.map { it.trigger }
|
.map { it.trigger }
|
||||||
.joinToString("\n")
|
.joinToString("\n")
|
||||||
|
|
|
@ -8,4 +8,4 @@ abstract class MessageFeature {
|
||||||
}
|
}
|
||||||
|
|
||||||
internal abstract fun handleInternal(message: MessageCreateEvent)
|
internal abstract fun handleInternal(message: MessageCreateEvent)
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,4 +22,4 @@ class WelcomeFeature(rawWelcome: RawWelcomeFeature) : MessageFeature() {
|
||||||
Util.findChannel(it)
|
Util.findChannel(it)
|
||||||
}
|
}
|
||||||
val fallbackMessage: String? = rawWelcome.fallbackMessage
|
val fallbackMessage: String? = rawWelcome.fallbackMessage
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,4 +11,4 @@ class ConfigTest : StringSpec({
|
||||||
Globals.systemConfig shouldNotBe null
|
Globals.systemConfig shouldNotBe null
|
||||||
Globals.commands.size shouldBe 2
|
Globals.commands.size shouldBe 2
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
|
@ -15,7 +15,7 @@ import org.javacord.api.entity.message.embed.EmbedBuilder
|
||||||
import org.javacord.api.entity.user.User
|
import org.javacord.api.entity.user.User
|
||||||
import org.javacord.api.event.message.MessageCreateEvent
|
import org.javacord.api.event.message.MessageCreateEvent
|
||||||
import org.javacord.core.entity.message.embed.EmbedBuilderDelegateImpl
|
import org.javacord.core.entity.message.embed.EmbedBuilderDelegateImpl
|
||||||
import java.util.*
|
import java.util.Optional
|
||||||
|
|
||||||
object TestUtil {
|
object TestUtil {
|
||||||
fun mockMessage(
|
fun mockMessage(
|
||||||
|
@ -119,4 +119,4 @@ object TestUtil {
|
||||||
replyString shouldNotContain string
|
replyString shouldNotContain string
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -276,4 +276,4 @@ class CommandTest : StringSpec({
|
||||||
roles shouldBe mutableListOf(Util.findRole("testrole"))
|
roles shouldBe mutableListOf(Util.findRole("testrole"))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
|
@ -29,4 +29,4 @@ class DebugFeatureTest : StringSpec({
|
||||||
DebugFeature().handle(message)
|
DebugFeature().handle(message)
|
||||||
verify(exactly = 1) { message.channel.sendMessage(any<EmbedBuilder>()) }
|
verify(exactly = 1) { message.channel.sendMessage(any<EmbedBuilder>()) }
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
Loading…
Reference in New Issue
Block a user