Package org.terracotta.utilities.logging
Class LoggerBridge
- java.lang.Object
-
- org.terracotta.utilities.logging.LoggerBridge
-
public final class LoggerBridge extends java.lang.ObjectBridge to permit variable-level use of SLF4j.This class maintains a static reference to the
LoggerBridgeinstances created bygetInstance(Logger, Level).
-
-
Field Summary
Fields Modifier and Type Field Description private static java.util.Map<org.slf4j.Logger,java.util.Map<org.slf4j.event.Level,LoggerBridge>>INSTANCESprivate static java.util.Map<org.slf4j.event.Level,java.lang.invoke.MethodHandle>IS_LEVEL_ENABLEDprivate java.lang.invoke.MethodHandleisLevelEnabledprivate java.lang.invoke.MethodHandlelogprivate static java.util.Map<org.slf4j.event.Level,java.lang.invoke.MethodHandle>LOGprivate static java.util.Map<org.slf4j.event.Level,java.lang.invoke.MethodHandle>LOG_THROWABLEprivate static org.slf4j.LoggerLOGGERprivate java.lang.invoke.MethodHandlelogThrowable
-
Constructor Summary
Constructors Modifier Constructor Description privateLoggerBridge(org.slf4j.Logger delegate, org.slf4j.event.Level level)Creates aLoggerBridgeinstance sending logging calls to the designatedLoggerat the specified level.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static LoggerBridgegetInstance(org.slf4j.Logger delegate, org.slf4j.event.Level level)Creates or gets theLoggerBridgeinstance for the delegateLoggerandLevel.private static java.lang.invoke.MethodHandlegetIsLevelEnabledMethodHandle(org.slf4j.event.Level level)private static java.lang.invoke.MethodHandlegetLogMethodHandle(org.slf4j.event.Level level)private static java.lang.invoke.MethodHandlegetLogThrowableMethodHandle(org.slf4j.event.Level level)booleanisLevelEnabled()Checks if the delegate logger is active for the configured level.voidlog(java.lang.String format, java.lang.Object... arguments)Submits a log event to the delegate logger at the level of thisLoggerBridge.voidlog(java.lang.String message, java.lang.Throwable t)Submits a log event to the delegate logger at the level of thisLoggerBridge.
-
-
-
Field Detail
-
LOGGER
private static final org.slf4j.Logger LOGGER
-
INSTANCES
private static final java.util.Map<org.slf4j.Logger,java.util.Map<org.slf4j.event.Level,LoggerBridge>> INSTANCES
-
IS_LEVEL_ENABLED
private static final java.util.Map<org.slf4j.event.Level,java.lang.invoke.MethodHandle> IS_LEVEL_ENABLED
-
LOG
private static final java.util.Map<org.slf4j.event.Level,java.lang.invoke.MethodHandle> LOG
-
LOG_THROWABLE
private static final java.util.Map<org.slf4j.event.Level,java.lang.invoke.MethodHandle> LOG_THROWABLE
-
isLevelEnabled
private final java.lang.invoke.MethodHandle isLevelEnabled
-
log
private final java.lang.invoke.MethodHandle log
-
logThrowable
private final java.lang.invoke.MethodHandle logThrowable
-
-
Constructor Detail
-
LoggerBridge
private LoggerBridge(org.slf4j.Logger delegate, org.slf4j.event.Level level)Creates aLoggerBridgeinstance sending logging calls to the designatedLoggerat the specified level.- Parameters:
delegate- the delegateLoggerlevel- the level at which thelogmethod records- Throws:
java.lang.AssertionError- if there is an error instantiating the requiredLoggerBridgeinstance
-
-
Method Detail
-
getInstance
public static LoggerBridge getInstance(org.slf4j.Logger delegate, org.slf4j.event.Level level)
Creates or gets theLoggerBridgeinstance for the delegateLoggerandLevel.- Parameters:
delegate- theLoggerto which logging calls are delegatedlevel- theLevelat which the returnedLoggingBridgelogs- Returns:
- a
LoggingBridgeinstance - Throws:
java.lang.AssertionError- if there is an error instantiating the requiredLoggerBridgeinstance
-
getIsLevelEnabledMethodHandle
private static java.lang.invoke.MethodHandle getIsLevelEnabledMethodHandle(org.slf4j.event.Level level)
-
getLogMethodHandle
private static java.lang.invoke.MethodHandle getLogMethodHandle(org.slf4j.event.Level level)
-
getLogThrowableMethodHandle
private static java.lang.invoke.MethodHandle getLogThrowableMethodHandle(org.slf4j.event.Level level)
-
isLevelEnabled
public boolean isLevelEnabled()
Checks if the delegate logger is active for the configured level.- Returns:
trueif the delegate logger is configured to record events of the level of thisLoggerBridge
-
log
public void log(java.lang.String format, java.lang.Object... arguments)Submits a log event to the delegate logger at the level of thisLoggerBridge.- Parameters:
format- the log message formatarguments- the arguments for the message
-
log
public void log(java.lang.String message, java.lang.Throwable t)Submits a log event to the delegate logger at the level of thisLoggerBridge.- Parameters:
message- the log message formatt- theThrowableto log withmessage
-
-