All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.github.numichi.reactive.logger.reactor.RKLogger.kt Maven / Gradle / Ivy

package io.github.numichi.reactive.logger.reactor

import io.github.numichi.reactive.logger.core.RSnapshot
import io.github.oshai.kotlinlogging.KLoggingEventBuilder
import io.github.oshai.kotlinlogging.Level
import io.github.oshai.kotlinlogging.Marker
import reactor.core.publisher.Mono

/**
 * Reactive mirror of [io.github.oshai.kotlinlogging.KLogger].
 */
interface RKLogger : RSnapshot {
    val name: String

    fun trace(message: () -> Any?): Mono

    fun debug(message: () -> Any?): Mono

    fun info(message: () -> Any?): Mono

    fun warn(message: () -> Any?): Mono

    fun error(message: () -> Any?): Mono

    fun trace(
        throwable: Throwable?,
        message: () -> Any?,
    ): Mono

    fun debug(
        throwable: Throwable?,
        message: () -> Any?,
    ): Mono

    fun info(
        throwable: Throwable?,
        message: () -> Any?,
    ): Mono

    fun warn(
        throwable: Throwable?,
        message: () -> Any?,
    ): Mono

    fun error(
        throwable: Throwable?,
        message: () -> Any?,
    ): Mono

    fun trace(
        throwable: Throwable?,
        marker: Marker?,
        message: () -> Any?,
    ): Mono

    fun debug(
        throwable: Throwable?,
        marker: Marker?,
        message: () -> Any?,
    ): Mono

    fun info(
        throwable: Throwable?,
        marker: Marker?,
        message: () -> Any?,
    ): Mono

    fun warn(
        throwable: Throwable?,
        marker: Marker?,
        message: () -> Any?,
    ): Mono

    fun error(
        throwable: Throwable?,
        marker: Marker?,
        message: () -> Any?,
    ): Mono

    fun atTrace(
        marker: Marker?,
        block: KLoggingEventBuilder.() -> Unit,
    ): Mono

    fun atTrace(block: KLoggingEventBuilder.() -> Unit): Mono

    fun atDebug(
        marker: Marker?,
        block: KLoggingEventBuilder.() -> Unit,
    ): Mono

    fun atDebug(block: KLoggingEventBuilder.() -> Unit): Mono

    fun atInfo(
        marker: Marker?,
        block: KLoggingEventBuilder.() -> Unit,
    ): Mono

    fun atInfo(block: KLoggingEventBuilder.() -> Unit): Mono

    fun atWarn(
        marker: Marker?,
        block: KLoggingEventBuilder.() -> Unit,
    ): Mono

    fun atWarn(block: KLoggingEventBuilder.() -> Unit): Mono

    fun atError(
        marker: Marker?,
        block: KLoggingEventBuilder.() -> Unit,
    ): Mono

    fun atError(block: KLoggingEventBuilder.() -> Unit): Mono

    fun at(
        level: Level,
        marker: Marker? = null,
        block: KLoggingEventBuilder.() -> Unit,
    ): Mono

    fun entry(vararg arguments: Any?): Mono

    fun exit(): Mono

    fun  exit(result: T): Mono

    fun  throwing(throwable: T): Mono where T : Throwable

    fun  catching(throwable: T): Mono where T : Throwable

    fun isTraceEnabled(marker: Marker? = null): Boolean

    fun isDebugEnabled(marker: Marker? = null): Boolean

    fun isInfoEnabled(marker: Marker? = null): Boolean

    fun isWarnEnabled(marker: Marker? = null): Boolean

    fun isErrorEnabled(marker: Marker? = null): Boolean

    fun isLoggingOff(marker: Marker? = null): Boolean

    fun isLoggingEnabledFor(
        level: Level,
        marker: Marker? = null,
    ): Boolean
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy