Skip to content
This repository was archived by the owner on May 21, 2021. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 29 additions & 0 deletions pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
<?xml version='1.0' encoding='UTF-8'?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>com.weiglewilczek.slf4s</groupId>
<artifactId>slf4s_2.8.1</artifactId>
<packaging>jar</packaging>
<version>1.0.3-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.6.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>2.8.1</version>
<scope>compile</scope>
</dependency>
</dependencies>
<repositories>
<repository>
<id>ScalaToolsMaven2Repository</id>
<name>Scala-Tools Maven2 Repository</name>
<url>http://scala-tools.org/repo-releases/</url>
</repository>
</repositories>
</project>
3 changes: 3 additions & 0 deletions project/build/project.scala
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ import sbt._

class SLF4SProject(info: ProjectInfo) extends DefaultProject(info) with BNDPlugin {


// ===================================================================================================================
// Dependencies
// ===================================================================================================================
Expand Down Expand Up @@ -50,4 +51,6 @@ class SLF4SProject(info: ProjectInfo) extends DefaultProject(info) with BNDPlugi
override def bndExportPackage =
"com.weiglewilczek.slf4s;version=\"%s\"".format(projectVersion.value) :: Nil
override def bndVersionPolicy = Some("[$(@),$(version;=+;$(@)))")

override def compileOptions = super.compileOptions ++ compileOptions("-Xelide-below", "-1")
}
22 changes: 12 additions & 10 deletions src/main/scala/logger.scala
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,8 @@ object Logger {
* Thin wrapper for SLF4J making use of by-name parameters to improve performance.
*/
trait Logger {
import scala.annotation.elidable
import scala.annotation.elidable._

/**
* The name of this Logger.
Expand All @@ -47,7 +49,7 @@ trait Logger {
* Log a message with ERROR level.
* @param msg The message to be logged
*/
def error(msg: => String) {
@elidable(SEVERE) def error(msg: => String) {
if (slf4jLogger.isErrorEnabled) slf4jLogger error msg
}

Expand All @@ -56,15 +58,15 @@ trait Logger {
* @param msg The message to be logged
* @param t The Throwable to be logged
*/
def error(msg: => String, t: Throwable) {
@elidable(SEVERE) def error(msg: => String, t: Throwable) {
if (slf4jLogger.isErrorEnabled) slf4jLogger.error(msg, t)
}

/**
* Log a message with WARN level.
* @param msg The message to be logged
*/
def warn(msg: => String) {
@elidable(WARNING) def warn(msg: => String) {
if (slf4jLogger.isWarnEnabled) slf4jLogger warn msg
}

Expand All @@ -73,15 +75,15 @@ trait Logger {
* @param msg The message to be logged
* @param t The Throwable to be logged
*/
def warn(msg: => String, t: Throwable) {
@elidable(WARNING) def warn(msg: => String, t: Throwable) {
if (slf4jLogger.isWarnEnabled) slf4jLogger.warn(msg, t)
}

/**
* Log a message with INFO level.
* @param msg The message to be logged
*/
def info(msg: => String) {
@elidable(INFO) def info(msg: => String) {
if (slf4jLogger.isInfoEnabled) slf4jLogger info msg
}

Expand All @@ -90,15 +92,15 @@ trait Logger {
* @param msg The message to be logged
* @param t The Throwable to be logged
*/
def info(msg: => String, t: Throwable) {
@elidable(INFO) def info(msg: => String, t: Throwable) {
if (slf4jLogger.isInfoEnabled) slf4jLogger.info(msg, t)
}

/**
* Log a message with DEBUG level.
* @param msg The message to be logged
*/
def debug(msg: => String) {
@elidable(FINER) def debug(msg: => String) {
if (slf4jLogger.isDebugEnabled) slf4jLogger debug msg
}

Expand All @@ -107,15 +109,15 @@ trait Logger {
* @param msg The message to be logged
* @param t The Throwable to be logged
*/
def debug(msg: => String, t: Throwable) {
@elidable(FINER) def debug(msg: => String, t: Throwable) {
if (slf4jLogger.isDebugEnabled) slf4jLogger.debug(msg, t)
}

/**
* Log a message with TRACE level.
* @param msg The message to be logged
*/
def trace(msg: => String) {
@elidable(FINEST) def trace(msg: => String) {
if (slf4jLogger.isTraceEnabled) slf4jLogger trace msg
}

Expand All @@ -124,7 +126,7 @@ trait Logger {
* @param msg The message to be logged
* @param t The Throwable to be logged
*/
def trace(msg: => String, t: Throwable) {
@elidable(FINEST) def trace(msg: => String, t: Throwable) {
if (slf4jLogger.isTraceEnabled) slf4jLogger.trace(msg, t)
}

Expand Down