You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by rp...@apache.org on 2016/09/22 02:04:31 UTC
[4/8] logging-log4j2 git commit: LOG4J2-1447 change the contract of
ThreadContextMap2 to include the role of MutableContextDataSupplier
LOG4J2-1447 change the contract of ThreadContextMap2 to include the role of MutableContextDataSupplier
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/e1b86f51
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/e1b86f51
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/e1b86f51
Branch: refs/heads/master
Commit: e1b86f515e6f97866fa2e6ff8a3ba054c315a934
Parents: fc68248
Author: rpopma <rp...@apache.org>
Authored: Thu Sep 22 11:01:04 2016 +0900
Committer: rpopma <rp...@apache.org>
Committed: Thu Sep 22 11:01:04 2016 +0900
----------------------------------------------------------------------
.../src/main/java/org/apache/logging/log4j/ThreadContext.java | 3 +++
.../org/apache/logging/log4j/spi/DefaultThreadContextMap.java | 3 +--
.../main/java/org/apache/logging/log4j/spi/ThreadContextMap2.java | 2 +-
3 files changed, 5 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/e1b86f51/log4j-api/src/main/java/org/apache/logging/log4j/ThreadContext.java
----------------------------------------------------------------------
diff --git a/log4j-api/src/main/java/org/apache/logging/log4j/ThreadContext.java b/log4j-api/src/main/java/org/apache/logging/log4j/ThreadContext.java
index 4636469..f282397 100644
--- a/log4j-api/src/main/java/org/apache/logging/log4j/ThreadContext.java
+++ b/log4j-api/src/main/java/org/apache/logging/log4j/ThreadContext.java
@@ -27,6 +27,7 @@ import java.util.Map;
import java.util.NoSuchElementException;
import org.apache.logging.log4j.message.ParameterizedMessage;
+import org.apache.logging.log4j.spi.DefaultThreadContextMap;
import org.apache.logging.log4j.spi.DefaultThreadContextStack;
import org.apache.logging.log4j.spi.NoOpThreadContextMap;
import org.apache.logging.log4j.spi.ThreadContextMap;
@@ -249,6 +250,8 @@ public final class ThreadContext {
public static void putAll(final Map<String, String> m) {
if (contextMap instanceof ThreadContextMap2) {
((ThreadContextMap2) contextMap).putAll(m);
+ } else if (contextMap instanceof DefaultThreadContextMap) {
+ ((DefaultThreadContextMap) contextMap).putAll(m);
} else {
for (final Map.Entry<String, String> entry: m.entrySet()) {
contextMap.put(entry.getKey(), entry.getValue());
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/e1b86f51/log4j-api/src/main/java/org/apache/logging/log4j/spi/DefaultThreadContextMap.java
----------------------------------------------------------------------
diff --git a/log4j-api/src/main/java/org/apache/logging/log4j/spi/DefaultThreadContextMap.java b/log4j-api/src/main/java/org/apache/logging/log4j/spi/DefaultThreadContextMap.java
index 1c01c0b..143c2e1 100644
--- a/log4j-api/src/main/java/org/apache/logging/log4j/spi/DefaultThreadContextMap.java
+++ b/log4j-api/src/main/java/org/apache/logging/log4j/spi/DefaultThreadContextMap.java
@@ -30,7 +30,7 @@ import org.apache.logging.log4j.util.TriConsumer;
* expected that the Map will be passed to many more log events than the number of keys it contains the performance
* should be much better than if the Map was copied for each event.
*/
-public class DefaultThreadContextMap implements ThreadContextMap2, ContextData {
+public class DefaultThreadContextMap implements ThreadContextMap, ContextData {
/**
* Property name ({@value} ) for selecting {@code InheritableThreadLocal} (value "true") or plain
@@ -80,7 +80,6 @@ public class DefaultThreadContextMap implements ThreadContextMap2, ContextData {
localMap.set(Collections.unmodifiableMap(map));
}
- @Override
public void putAll(final Map<String, String> m) {
if (!useMap) {
return;
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/e1b86f51/log4j-api/src/main/java/org/apache/logging/log4j/spi/ThreadContextMap2.java
----------------------------------------------------------------------
diff --git a/log4j-api/src/main/java/org/apache/logging/log4j/spi/ThreadContextMap2.java b/log4j-api/src/main/java/org/apache/logging/log4j/spi/ThreadContextMap2.java
index 4def1b3..6f831c3 100644
--- a/log4j-api/src/main/java/org/apache/logging/log4j/spi/ThreadContextMap2.java
+++ b/log4j-api/src/main/java/org/apache/logging/log4j/spi/ThreadContextMap2.java
@@ -25,7 +25,7 @@ import java.util.Map;
* @see ThreadContextMap
* @since 2.7
*/
-public interface ThreadContextMap2 extends ThreadContextMap {
+public interface ThreadContextMap2 extends ThreadContextMap, MutableContextDataSupplier {
/**
* Puts all given context map entries into the current thread's