Version. 1.1.0

This commit is contained in:
2024-10-27 11:24:11 +01:00
parent efe5a84d5a
commit 1d86216c5d
3 changed files with 34 additions and 3 deletions

View File

@@ -8,7 +8,7 @@ plugins {
}
group = "nl.astraeus"
version = "1.0.2-SNAPSHOT"
version = "1.1.0"
repositories {
mavenCentral()

View File

@@ -17,9 +17,10 @@ expect fun getCaller(): String?
class Logger(
var level: LogLevel = LogLevel.INFO,
val name: String = ""
val name: String = "",
val keepRecent: Int = 1000,
) {
val recentMessages = StringArrayRing(keepRecent)
fun trace(message: () -> String?) = log(LogLevel.TRACE, null, message)
fun debug(message: () -> String?) = log(LogLevel.DEBUG, null, message)
@@ -47,6 +48,11 @@ class Logger(
val logEntry = StringBuilder()
if (name.isNotEmpty()) {
logEntry.append("[")
logEntry.append(name)
logEntry.append("] ")
}
logEntry.append(timestamp)
logEntry.append(" - ")
logEntry.append(level.name)
@@ -63,6 +69,8 @@ class Logger(
println(logEntry)
thrown?.printStackTrace()
recentMessages.add(logEntry.toString())
}
}
}

View File

@@ -0,0 +1,23 @@
package nl.astraeus.logger
class StringArrayRing(
val size: Int = 1000
) {
private var writeIndex = 0
private val array = Array(size) { "" }
fun add(str: String) {
array[writeIndex] = str
writeIndex = (writeIndex + 1) % size
}
fun get(): List<String> {
var readIndex = (writeIndex + 1) % size
val result = mutableListOf<String>()
repeat(size) {
result.add(array[readIndex])
readIndex = (readIndex + 1) % size
}
return result
}
}