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/11 06:27:48 UTC
[07/50] logging-log4j2 git commit: LOG4J2-1349 implement the new
ContextDataInjector::rawContextData() method introduced in LOG4J2-1010 in an
efficient manner
LOG4J2-1349 implement the new ContextDataInjector::rawContextData() method introduced in LOG4J2-1010 in an efficient manner
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/1600bb2f
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/1600bb2f
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/1600bb2f
Branch: refs/heads/master
Commit: 1600bb2f705580a8a92f7ae8bb30ab7d7aed6d07
Parents: 7994789
Author: rpopma <rp...@apache.org>
Authored: Mon Aug 29 00:30:41 2016 +0900
Committer: rpopma <rp...@apache.org>
Committed: Mon Aug 29 00:30:41 2016 +0900
----------------------------------------------------------------------
.../log4j/core/impl/ThreadContextDataInjector.java | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/1600bb2f/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/ThreadContextDataInjector.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/ThreadContextDataInjector.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/ThreadContextDataInjector.java
index 0e31a9a..65980f7 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/ThreadContextDataInjector.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/ThreadContextDataInjector.java
@@ -25,6 +25,7 @@ import org.apache.logging.log4j.core.config.Property;
import org.apache.logging.log4j.spi.ContextData;
import org.apache.logging.log4j.spi.MutableContextData;
import org.apache.logging.log4j.spi.MutableContextDataSupplier;
+import org.apache.logging.log4j.spi.ThreadContextMap;
/**
* {@code ThreadContextDataInjector} contains a number of strategies for copying key-value pairs from the various
@@ -71,7 +72,10 @@ public class ThreadContextDataInjector {
@Override
public ContextData rawContextData() {
- // TODO LOG4J2-1349: DefaultThreadContextMap itself implements the ContextData interface
+ final ThreadContextMap map = ThreadContextAccess.getThreadContextMap();
+ if (map instanceof ContextData) {
+ return (ContextData) map;
+ }
final MutableContextData result = ContextDataFactory.createContextData();
copyThreadContextMap(ThreadContext.getImmutableContext(), result);
return result;
@@ -122,9 +126,7 @@ public class ThreadContextDataInjector {
@Override
public ContextData rawContextData() {
- // TODO LOG4J2-1349
- //return ((AbstractGarbageFreeMutableThreadContext) ThreadContext.getThreadContextMap()).getContextData();
- return null;
+ return ((MutableContextDataSupplier) ThreadContextAccess.getThreadContextMap()).getMutableContextData();
}
}
@@ -164,9 +166,7 @@ public class ThreadContextDataInjector {
@Override
public ContextData rawContextData() {
- // TODO LOG4J2-1349
- //return ((AbstractCopyOnWriteMutableThreadContext) ThreadContext.getThreadContextMap()).getContextData();
- return null;
+ return ((MutableContextDataSupplier) ThreadContextAccess.getThreadContextMap()).getMutableContextData();
}
}