package me.eater.hefbrug.logging.message import me.eater.hefbrug.utils.handlebars import org.apache.logging.log4j.message.Message import org.apache.logging.log4j.util.StringBuilderFormattable open class HefbrugMessage(private val message: String, private val items: Map) : Message, StringBuilderFormattable { constructor(message: String, vararg items: Pair) : this(message, items.toMap()) override fun getThrowable(): Throwable? = null override fun getParameters(): Array { return items.entries.toTypedArray() } override fun getFormattedMessage(): String { return format.handlebars(items) } override fun getFormat(): String { return message } override fun formatTo(buffer: StringBuilder) { buffer.append(formattedMessage) } }