28 lines
675 B
Kotlin
28 lines
675 B
Kotlin
package org.moire.ultrasonic.log
|
|
|
|
import org.koin.core.logger.Level
|
|
import org.koin.core.logger.Logger
|
|
import org.koin.core.logger.MESSAGE
|
|
import timber.log.Timber
|
|
|
|
/**
|
|
* Timber Logger implementation for Koin
|
|
*/
|
|
class TimberKoinLogger(level: Level = Level.INFO) : Logger(level) {
|
|
|
|
override fun log(level: Level, msg: MESSAGE) {
|
|
if (this.level <= level) {
|
|
logOnLevel(msg, level)
|
|
}
|
|
}
|
|
|
|
private fun logOnLevel(msg: MESSAGE, level: Level) {
|
|
when (level) {
|
|
Level.DEBUG -> Timber.d(msg)
|
|
Level.INFO -> Timber.i(msg)
|
|
Level.ERROR -> Timber.e(msg)
|
|
else -> Timber.e(msg)
|
|
}
|
|
}
|
|
}
|