org.slf4j.helpers
Class BasicMDCAdapter

java.lang.Object
  extended by org.slf4j.helpers.BasicMDCAdapter
All Implemented Interfaces:
MDCAdapter

public class BasicMDCAdapter
extends Object
implements MDCAdapter

Basic MDC implementation, which can be used with logging systems that lack out-of-the-box MDC support. This code is largely based on logback's LogbackMDCAdapter.

Since:
1.5.0
Author:
Ceki Gulcu, Maarten Bosteels

Constructor Summary
BasicMDCAdapter()
           
 
Method Summary
 void clear()
          Clear all entries in the MDC.
 String get(String key)
          Get the context identified by the key parameter.
 Map getCopyOfContextMap()
          Return a copy of the current thread's context map.
 Set getKeys()
          Returns the keys in the MDC as a Set of Strings The returned value can be null.
 void put(String key, String val)
          Put a context value (the val parameter) as identified with the key parameter into the current thread's context map.
 void remove(String key)
          Remove the the context identified by the key parameter.
 void setContextMap(Map contextMap)
          Set the current thread's context map by first clearing any existing map and then copying the map passed as parameter.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BasicMDCAdapter

public BasicMDCAdapter()
Method Detail

put

public void put(String key,
                String val)
Put a context value (the val parameter) as identified with the key parameter into the current thread's context map. Note that contrary to log4j, the val 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 interface MDCAdapter
Throws:
IllegalArgumentException - in case the "key" parameter is null

get

public String get(String key)
Get the context identified by the key parameter.

Specified by:
get in interface MDCAdapter
Returns:
the string value identified by the key parameter.

remove

public void remove(String key)
Remove the the context identified by the key parameter.

Specified by:
remove in interface MDCAdapter

clear

public void clear()
Clear all entries in the MDC.

Specified by:
clear in interface MDCAdapter

getKeys

public Set getKeys()
Returns the keys in the MDC as a Set of Strings The returned value can be null.

Returns:
the keys in the MDC

getCopyOfContextMap

public Map getCopyOfContextMap()
Return a copy of the current thread's context map. Returned value may be null.

Specified by:
getCopyOfContextMap in interface MDCAdapter
Returns:
A copy of the current thread's context map. May be null.

setContextMap

public void setContextMap(Map 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 interface MDCAdapter
Parameters:
contextMap - must contain only keys and values of type String


Copyright © 2005-2009 QOS.ch. All Rights Reserved.