Package org.apache.logging.log4j.spi
Interface LoggerContext
-
- All Known Implementing Classes:
AsyncLoggerContext
,LoggerContext
,SimpleLoggerContext
,SLF4JLoggerContext
public interface LoggerContext
Anchor point for logging implementations.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description Object
getExternalContext()
An anchor for some other context, such as a ClassLoader or ServletContext.ExtendedLogger
getLogger(String name)
Returns an ExtendedLogger.ExtendedLogger
getLogger(String name, MessageFactory messageFactory)
Returns an ExtendedLogger.default Object
getObject(String key)
Retrieve an object by its name.boolean
hasLogger(String name)
Detects if a Logger with the specified name exists.boolean
hasLogger(String name, Class<? extends MessageFactory> messageFactoryClass)
Detects if a Logger with the specified name and MessageFactory type exists.boolean
hasLogger(String name, MessageFactory messageFactory)
Detects if a Logger with the specified name and MessageFactory exists.default Object
putObject(String key, Object value)
Store an object into the LoggerContext by name for later use.default Object
putObjectIfAbsent(String key, Object value)
Store an object into the LoggerContext by name for later use if an object is not already stored with that key.default Object
removeObject(String key)
Remove an object if it is present.default boolean
removeObject(String key, Object value)
Remove an object if it is present and the provided object is stored.
-
-
-
Method Detail
-
getExternalContext
Object getExternalContext()
An anchor for some other context, such as a ClassLoader or ServletContext.- Returns:
- The external context.
-
getObject
default Object getObject(String key)
Retrieve an object by its name.- Parameters:
key
- The object's key.- Since:
- 2.13.0
-
putObject
default Object putObject(String key, Object value)
Store an object into the LoggerContext by name for later use.- Parameters:
key
- The object's key.value
- The object.- Returns:
- The previous object or null.
- Since:
- 2.13.0
-
putObjectIfAbsent
default Object putObjectIfAbsent(String key, Object value)
Store an object into the LoggerContext by name for later use if an object is not already stored with that key.- Parameters:
key
- The object's key.value
- The object.- Returns:
- The previous object or null.
- Since:
- 2.13.0
-
removeObject
default Object removeObject(String key)
Remove an object if it is present.- Parameters:
key
- The object's key.- Returns:
- The object if it was present, null if it was not.
- Since:
- 2.13.0
-
removeObject
default boolean removeObject(String key, Object value)
Remove an object if it is present and the provided object is stored.- Parameters:
key
- The object's key.value
- The object.- Returns:
- The object if it was present, null if it was not.
- Since:
- 2.13.0
-
getLogger
ExtendedLogger getLogger(String name)
Returns an ExtendedLogger.- Parameters:
name
- The name of the Logger to return.- Returns:
- The logger with the specified name.
-
getLogger
ExtendedLogger getLogger(String name, MessageFactory messageFactory)
Returns an ExtendedLogger.- Parameters:
name
- The name of the Logger to return.messageFactory
- The message factory is used only when creating a logger, subsequent use does not change the logger but will log a warning if mismatched.- Returns:
- The logger with the specified name.
-
hasLogger
boolean hasLogger(String name)
Detects if a Logger with the specified name exists.- Parameters:
name
- The Logger name to search for.- Returns:
- true if the Logger exists, false otherwise.
-
hasLogger
boolean hasLogger(String name, MessageFactory messageFactory)
Detects if a Logger with the specified name and MessageFactory exists.- Parameters:
name
- The Logger name to search for.messageFactory
- The message factory to search for.- Returns:
- true if the Logger exists, false otherwise.
- Since:
- 2.5
-
hasLogger
boolean hasLogger(String name, Class<? extends MessageFactory> messageFactoryClass)
Detects if a Logger with the specified name and MessageFactory type exists.- Parameters:
name
- The Logger name to search for.messageFactoryClass
- The message factory class to search for.- Returns:
- true if the Logger exists, false otherwise.
- Since:
- 2.5
-
-