Package org.slf4j.helpers
Class BasicMDCAdapter
- java.lang.Object
-
- org.slf4j.helpers.BasicMDCAdapter
-
- All Implemented Interfaces:
MDCAdapter
public class BasicMDCAdapter extends java.lang.Object implements MDCAdapter
Basic MDC implementation, which can be used with logging systems that lack out-of-the-box MDC support. This code was initially inspired by logback's LogbackMDCAdapter. However, LogbackMDCAdapter has evolved and is now considerably more sophisticated.- Since:
- 1.5.0
-
-
Constructor Summary
Constructors Constructor Description BasicMDCAdapter()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
clear()
Clear all entries in the MDC.java.lang.String
get(java.lang.String key)
Get the context identified by thekey
parameter.java.util.Map<java.lang.String,java.lang.String>
getCopyOfContextMap()
Return a copy of the current thread's context map.java.util.Set<java.lang.String>
getKeys()
Returns the keys in the MDC as aSet
ofString
s The returned value can be null.void
put(java.lang.String key, java.lang.String val)
Put a context value (theval
parameter) as identified with thekey
parameter into the current thread's context map.void
remove(java.lang.String key)
Remove the the context identified by thekey
parameter.void
setContextMap(java.util.Map<java.lang.String,java.lang.String> contextMap)
Set the current thread's context map by first clearing any existing map and then copying the map passed as parameter.
-
-
-
Method Detail
-
put
public void put(java.lang.String key, java.lang.String val)
Put a context value (theval
parameter) as identified with thekey
parameter into the current thread's context map. Note that contrary to log4j, theval
parameter can be null.If the current thread does not have a context map it is created as a side effect of this call.
- Specified by:
put
in interfaceMDCAdapter
- Throws:
java.lang.IllegalArgumentException
- in case the "key" parameter is null
-
get
public java.lang.String get(java.lang.String key)
Get the context identified by thekey
parameter.- Specified by:
get
in interfaceMDCAdapter
- Returns:
- the string value identified by the
key
parameter.
-
remove
public void remove(java.lang.String key)
Remove the the context identified by thekey
parameter.- Specified by:
remove
in interfaceMDCAdapter
-
clear
public void clear()
Clear all entries in the MDC.- Specified by:
clear
in interfaceMDCAdapter
-
getKeys
public java.util.Set<java.lang.String> getKeys()
Returns the keys in the MDC as aSet
ofString
s The returned value can be null.- Returns:
- the keys in the MDC
-
getCopyOfContextMap
public java.util.Map<java.lang.String,java.lang.String> getCopyOfContextMap()
Return a copy of the current thread's context map. Returned value may be null.- Specified by:
getCopyOfContextMap
in interfaceMDCAdapter
- Returns:
- A copy of the current thread's context map. May be null.
-
setContextMap
public void setContextMap(java.util.Map<java.lang.String,java.lang.String> contextMap)
Description copied from interface:MDCAdapter
Set the current thread's context map by first clearing any existing map and then copying the map passed as parameter. The context map parameter must only contain keys and values of type String.- Specified by:
setContextMap
in interfaceMDCAdapter
- Parameters:
contextMap
- must contain only keys and values of type String
-
-