From ac8a327805ff65ef1462a73d91d96d7ab8fcb50d Mon Sep 17 00:00:00 2001 From: danicheg Date: Thu, 16 Jun 2022 19:36:22 +0400 Subject: [PATCH] Return unsafe methods of Slf4jLogger --- .../log4cats/slf4j/Slf4jLoggerCompat.scala | 5 +++-- .../typelevel/log4cats/slf4j/Slf4jLogger.scala | 16 ++++++++++++++++ 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/slf4j/src/main/scala-3/org/typelevel/log4cats/slf4j/Slf4jLoggerCompat.scala b/slf4j/src/main/scala-3/org/typelevel/log4cats/slf4j/Slf4jLoggerCompat.scala index 3ad71219..9f79cab0 100644 --- a/slf4j/src/main/scala-3/org/typelevel/log4cats/slf4j/Slf4jLoggerCompat.scala +++ b/slf4j/src/main/scala-3/org/typelevel/log4cats/slf4j/Slf4jLoggerCompat.scala @@ -25,9 +25,10 @@ import scala.annotation.nowarn trait Slf4jLoggerCompat { // for binary compability - private[slf4j] inline def create[F[_]](F: Sync[F]): F[SelfAwareStructuredLogger[F]] = + private[slf4j] inline def createMacro[F[_]](F: Sync[F]): F[SelfAwareStructuredLogger[F]] = ${ GetLoggerMacros.createImpl('F) } - private[slf4j] inline def getLogger[F[_]](using F: Sync[F]): SelfAwareStructuredLogger[F] = + + private[slf4j] inline def getLoggerMacro[F[_]](using F: Sync[F]): SelfAwareStructuredLogger[F] = ${ GetLoggerMacros.getLoggerImpl('F) } } diff --git a/slf4j/src/main/scala/org/typelevel/log4cats/slf4j/Slf4jLogger.scala b/slf4j/src/main/scala/org/typelevel/log4cats/slf4j/Slf4jLogger.scala index 3fb97803..7a01124a 100644 --- a/slf4j/src/main/scala/org/typelevel/log4cats/slf4j/Slf4jLogger.scala +++ b/slf4j/src/main/scala/org/typelevel/log4cats/slf4j/Slf4jLogger.scala @@ -26,15 +26,31 @@ object Slf4jLogger extends Slf4jLoggerCompat { def getLogger[F[_]](implicit f: Sync[F], name: LoggerName): SelfAwareStructuredLogger[F] = getLoggerFromName(name.value) + @deprecated("0.3.0", "Use getLogger instead") + def unsafeCreate[F[_]: Sync](implicit name: LoggerName): SelfAwareStructuredLogger[F] = + getLogger[F] + def getLoggerFromName[F[_]: Sync](name: String): SelfAwareStructuredLogger[F] = getLoggerFromSlf4j(org.slf4j.LoggerFactory.getLogger(name)) + @deprecated("0.3.0", "Use getLoggerFromName") + def unsafeFromName[F[_]: Sync](name: String): SelfAwareStructuredLogger[F] = + getLoggerFromName[F](name) + def getLoggerFromClass[F[_]: Sync](clazz: Class[_]): SelfAwareStructuredLogger[F] = getLoggerFromSlf4j[F](org.slf4j.LoggerFactory.getLogger(clazz)) + @deprecated("0.3.0", "Use getLoggerFromClass") + def unsafeFromClass[F[_]: Sync](clazz: Class[_]): SelfAwareStructuredLogger[F] = + getLoggerFromClass[F](clazz) + def getLoggerFromSlf4j[F[_]: Sync](logger: JLogger): SelfAwareStructuredLogger[F] = new Slf4jLoggerInternal.Slf4jLogger(logger) + @deprecated("0.3.0", "Use getLoggerFromSlf4J instead") + def unsafeFromSlf4j[F[_]: Sync](logger: JLogger): SelfAwareStructuredLogger[F] = + getLoggerFromSlf4j[F](logger) + def create[F[_]: Sync](implicit name: LoggerName): F[SelfAwareStructuredLogger[F]] = Sync[F].delay(getLoggerFromName(name.value))