KotlinLogging - option to globally disable logging
This commit is contained in:
@@ -1,18 +1,16 @@
|
||||
package com.shr4pnel.ferretirc.net
|
||||
|
||||
import com.shr4pnel.ferretirc.irc.util.Helpers
|
||||
import com.shr4pnel.ferretirc.net.messages.ServerMessage
|
||||
import io.github.oshai.kotlinlogging.KotlinLogging
|
||||
import io.ktor.http.parameters
|
||||
import io.ktor.network.selector.SelectInterest
|
||||
import io.ktor.util.toUpperCasePreservingASCIIRules
|
||||
import io.github.oshai.kotlinlogging.slf4j.logger
|
||||
import kotlinx.coroutines.channels.Channel
|
||||
import org.slf4j.helpers.NOPLogger
|
||||
|
||||
class MessageParser(val incoming: Channel<String>) {
|
||||
private val logger = KotlinLogging.logger("MessageParser")
|
||||
val incomingParsedMessages = Channel<ServerMessage>()
|
||||
|
||||
private companion object MessageBuilder {
|
||||
val logger = KotlinLogging.logger("MessageParser.MessageBuilder")
|
||||
fun getTrailingParameterIndex(params: List<String>) = params.indexOfLast { it.startsWith(":") }
|
||||
|
||||
sealed interface Command {
|
||||
@@ -58,6 +56,7 @@ class MessageParser(val incoming: Channel<String>) {
|
||||
}
|
||||
}
|
||||
}
|
||||
private val logger = if (Helpers.enableLogging) KotlinLogging.logger {} else KotlinLogging.logger(NOPLogger.NOP_LOGGER)
|
||||
|
||||
class NumericCommand(val number: Int, val parameters: List<String>?) : Command {
|
||||
override fun toServerMessage(): ServerMessage {
|
||||
@@ -106,6 +105,7 @@ class MessageParser(val incoming: Channel<String>) {
|
||||
suspend fun start() {
|
||||
for (msg in incoming) {
|
||||
incomingParsedMessages.send(build(msg))
|
||||
logger.trace { "Receiving: $msg" }
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user