Class DefaultThreadContextMap
- All Implemented Interfaces:
Serializable
,ThreadContextMap
,ReadOnlyStringMap
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
Property name ("isThreadContextMapInheritable" ) for selectingInheritableThreadLocal
(value "true") or plainThreadLocal
(value is not "true") in the implementation. -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
clear()
Clears the context.boolean
containsKey
(String key) Determines if the key is in the context.boolean
<V> void
forEach
(BiConsumer<String, ? super V> action) Performs the given action for each key-value pair in this data structure until all entries have been processed or the action throws an exception.<V,
S> void forEach
(TriConsumer<String, ? super V, S> action, S state) Performs the given action for each key-value pair in this data structure until all entries have been processed or the action throws an exception.Gets the context identified by thekey
parameter.getCopy()
Gets a non-null
mutable copy of current thread's context Map.Returns an immutable view on the context Map ornull
if the context map is empty.<V> V
Returns the value for the specified key, ornull
if the specified key does not exist in this collection.int
hashCode()
boolean
isEmpty()
Returns true if the Map is empty.void
Puts a context value (theo
parameter) as identified with thekey
parameter into the current thread's context map.void
void
Removes the context identified by thekey
parameter.void
int
size()
Returns the number of key-value pairs in this collection.toMap()
Returns a non-null
mutableMap<String, String>
containing a snapshot of this data structure.toString()
-
Field Details
-
INHERITABLE_MAP
Property name ("isThreadContextMapInheritable" ) for selectingInheritableThreadLocal
(value "true") or plainThreadLocal
(value is not "true") in the implementation.- See Also:
-
-
Constructor Details
-
DefaultThreadContextMap
public DefaultThreadContextMap() -
DefaultThreadContextMap
public DefaultThreadContextMap(boolean useMap)
-
-
Method Details
-
put
Description copied from interface:ThreadContextMap
Puts a context value (theo
parameter) as identified with thekey
parameter into the current thread's context map.If the current thread does not have a context map it is created as a side effect.
- Specified by:
put
in interfaceThreadContextMap
- Parameters:
key
- The key name.value
- The key value.
-
putAll
-
get
Description copied from interface:ThreadContextMap
Gets the context identified by thekey
parameter.This method has no side effects.
- Specified by:
get
in interfaceThreadContextMap
- Parameters:
key
- The key to locate.- Returns:
- The value associated with the key or null.
-
remove
Description copied from interface:ThreadContextMap
Removes the context identified by thekey
parameter.- Specified by:
remove
in interfaceThreadContextMap
- Parameters:
key
- The key to remove.
-
removeAll
-
clear
public void clear()Description copied from interface:ThreadContextMap
Clears the context.- Specified by:
clear
in interfaceThreadContextMap
-
toMap
Description copied from interface:ReadOnlyStringMap
Returns a non-null
mutableMap<String, String>
containing a snapshot of this data structure.- Specified by:
toMap
in interfaceReadOnlyStringMap
- Returns:
- a mutable copy of this data structure in
Map<String, String>
form.
-
containsKey
Description copied from interface:ThreadContextMap
Determines if the key is in the context.- Specified by:
containsKey
in interfaceReadOnlyStringMap
- Specified by:
containsKey
in interfaceThreadContextMap
- Parameters:
key
- The key to locate.- Returns:
- True if the key is in the context, false otherwise.
-
forEach
Description copied from interface:ReadOnlyStringMap
Performs the given action for each key-value pair in this data structure until all entries have been processed or the action throws an exception.Some implementations may not support structural modifications (adding new elements or removing elements) while iterating over the contents. In such implementations, attempts to add or remove elements from the
BiConsumer
'sBiConsumer.accept(Object, Object)
accept} method may cause aConcurrentModificationException
to be thrown.- Specified by:
forEach
in interfaceReadOnlyStringMap
- Type Parameters:
V
- type of the value.- Parameters:
action
- The action to be performed for each key-value pair in this collection.
-
forEach
Description copied from interface:ReadOnlyStringMap
Performs the given action for each key-value pair in this data structure until all entries have been processed or the action throws an exception.The third parameter lets callers pass in a stateful object to be modified with the key-value pairs, so the TriConsumer implementation itself can be stateless and potentially reusable.
Some implementations may not support structural modifications (adding new elements or removing elements) while iterating over the contents. In such implementations, attempts to add or remove elements from the
TriConsumer
'saccept
method may cause aConcurrentModificationException
to be thrown.- Specified by:
forEach
in interfaceReadOnlyStringMap
- Type Parameters:
V
- type of the value.S
- type of the third parameter.- Parameters:
action
- The action to be performed for each key-value pair in this collection.state
- the object to be passed as the third parameter to each invocation on the specified triconsumer.
-
getValue
Description copied from interface:ReadOnlyStringMap
Returns the value for the specified key, ornull
if the specified key does not exist in this collection.- Specified by:
getValue
in interfaceReadOnlyStringMap
- Parameters:
key
- the key whose value to return.- Returns:
- the value for the specified key or
null
.
-
getCopy
Description copied from interface:ThreadContextMap
Gets a non-null
mutable copy of current thread's context Map.- Specified by:
getCopy
in interfaceThreadContextMap
- Returns:
- a mutable copy of the context.
-
getImmutableMapOrNull
Description copied from interface:ThreadContextMap
Returns an immutable view on the context Map ornull
if the context map is empty.- Specified by:
getImmutableMapOrNull
in interfaceThreadContextMap
- Returns:
- an immutable context Map or
null
.
-
isEmpty
public boolean isEmpty()Description copied from interface:ThreadContextMap
Returns true if the Map is empty.- Specified by:
isEmpty
in interfaceReadOnlyStringMap
- Specified by:
isEmpty
in interfaceThreadContextMap
- Returns:
- true if the Map is empty, false otherwise.
-
size
public int size()Description copied from interface:ReadOnlyStringMap
Returns the number of key-value pairs in this collection.- Specified by:
size
in interfaceReadOnlyStringMap
- Returns:
- the number of key-value pairs in this collection.
-
toString
-
hashCode
public int hashCode() -
equals
-