org.apache.log
Class ContextMap

java.lang.Object
  extended byorg.apache.log.ContextMap
All Implemented Interfaces:
java.io.Serializable

public final class ContextMap
extends java.lang.Object
implements java.io.Serializable

The ContextMap contains non-hierarchical context information relevant to a particular LogEvent. It may include information such as;

The context is bound to a thread (and inherited by sub-threads) but it can also be added to by LogTargets.

Author:
Avalon Development Team, Peter Donald
See Also:
Serialized Form

Constructor Summary
ContextMap()
          Default constructor.
ContextMap(ContextMap parent)
          Constructor that sets parent contextMap.
 
Method Summary
static void bind(ContextMap context)
          Bind a particular ContextMap to current thread.
 void clear()
          Empty the context map.
 java.lang.Object get(java.lang.String key)
          Get an entry from the context.
 java.lang.Object get(java.lang.String key, java.lang.Object defaultObject)
          Get an entry from the context.
static ContextMap getCurrentContext()
          Get the Current ContextMap.
static ContextMap getCurrentContext(boolean autocreate)
          Get the Current ContextMap.
 int getSize()
          Get the number of contexts in map.
 boolean isReadOnly()
          Determine if context is read-only.
 void makeReadOnly()
          Make the context read-only.
 void set(java.lang.String key, java.lang.Object value)
          Set a value in context
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ContextMap

public ContextMap()
Default constructor.


ContextMap

public ContextMap(ContextMap parent)
Constructor that sets parent contextMap.

Parameters:
parent - the parent ContextMap
Method Detail

getCurrentContext

public static final ContextMap getCurrentContext()
Get the Current ContextMap. This method returns a ContextMap associated with current thread. If the thread doesn't have a ContextMap associated with it then a new ContextMap is created.

Returns:
the current ContextMap

getCurrentContext

public static final ContextMap getCurrentContext(boolean autocreate)
Get the Current ContextMap. This method returns a ContextMap associated with current thread. If the thread doesn't have a ContextMap associated with it and autocreate is true then a new ContextMap is created.

Parameters:
autocreate - true if a ContextMap is to be created if it doesn't exist
Returns:
the current ContextMap

bind

public static final void bind(ContextMap context)
Bind a particular ContextMap to current thread.

Parameters:
context - the context map (may be null)

makeReadOnly

public void makeReadOnly()
Make the context read-only. This makes it safe to allow untrusted code reference to ContextMap.


isReadOnly

public boolean isReadOnly()
Determine if context is read-only.

Returns:
true if Context is read only, false otherwise

clear

public void clear()
Empty the context map.


get

public java.lang.Object get(java.lang.String key,
                            java.lang.Object defaultObject)
Get an entry from the context.

Parameters:
key - the key to map
defaultObject - a default object to return if key does not exist
Returns:
the object in context

get

public java.lang.Object get(java.lang.String key)
Get an entry from the context.

Parameters:
key - the key to map
Returns:
the object in context or null if none with specified key

set

public void set(java.lang.String key,
                java.lang.Object value)
Set a value in context

Parameters:
key - the key
value - the value (may be null)

getSize

public int getSize()
Get the number of contexts in map.

Returns:
the number of contexts in map


Copyright © 1997-2005 The Apache Software Foundation. All Rights Reserved.