revert to putAll(Map<? extends K, ? extends V>), and don't implement 
ThreadContextMap2


Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/2ab025ec
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/2ab025ec
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/2ab025ec

Branch: refs/heads/LOG4J2-1349-gcfree-threadcontext
Commit: 2ab025ecfe4840043870a877e4f79e6ba12ee428
Parents: 4182abd
Author: rpopma <[email protected]>
Authored: Sat Aug 20 11:15:24 2016 +0900
Committer: rpopma <[email protected]>
Committed: Tue Aug 23 00:31:08 2016 +0900

----------------------------------------------------------------------
 .../logging/log4j/spi/OpenHashMapContextData.java      | 13 +++++--------
 1 file changed, 5 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ab025ec/log4j-api/src/main/java/org/apache/logging/log4j/spi/OpenHashMapContextData.java
----------------------------------------------------------------------
diff --git 
a/log4j-api/src/main/java/org/apache/logging/log4j/spi/OpenHashMapContextData.java
 
b/log4j-api/src/main/java/org/apache/logging/log4j/spi/OpenHashMapContextData.java
index 00712cc..72f5622 100644
--- 
a/log4j-api/src/main/java/org/apache/logging/log4j/spi/OpenHashMapContextData.java
+++ 
b/log4j-api/src/main/java/org/apache/logging/log4j/spi/OpenHashMapContextData.java
@@ -140,8 +140,7 @@ public class OpenHashMapContextData<K, V> implements 
MutableContextData, ThreadC
      * @param map
      *            a {@link Map} to be copied into the new hash map.
      */
-    // TODO public OpenHashMapContextData(final Map<? extends K, ? extends V> 
map) {
-    public OpenHashMapContextData(final Map<String, String> map) {
+    public OpenHashMapContextData(final Map<? extends K, ? extends V> map) {
         this(map, DEFAULT_LOAD_FACTOR);
     }
     /**
@@ -152,8 +151,7 @@ public class OpenHashMapContextData<K, V> implements 
MutableContextData, ThreadC
      * @param f
      *            the load factor.
      */
-    // TODO public OpenHashMapContextData(final Map<? extends K, ? extends V> 
map, final float f) {
-    public OpenHashMapContextData(final Map<String, String> map, final float 
f) {
+    public OpenHashMapContextData(final Map<? extends K, ? extends V> map, 
final float f) {
         this(map.size(), f);
         putAll(map);
     }
@@ -460,8 +458,7 @@ public class OpenHashMapContextData<K, V> implements 
MutableContextData, ThreadC
     }
 
     /** {@inheritDoc} */
-    //TODO public void putAll(Map<? extends K, ? extends V> map) {
-    public void putAll(Map<String, String> map) {
+    public void putAll(Map<? extends K, ? extends V> map) {
         if (loadFactor <= .5) {
             // The resulting map will be sized for m.size() elements
             ensureCapacity(map.size());
@@ -469,8 +466,8 @@ public class OpenHashMapContextData<K, V> implements 
MutableContextData, ThreadC
             // The resulting map will be tentatively sized for size() +  
m.size() elements
             tryCapacity(size() + map.size());
         }
-        for (Map.Entry<String, String> entry : map.entrySet()) {
-            putValue(entry.getKey(), entry.getValue());
+        for (Map.Entry<? extends K, ? extends V> entry : map.entrySet()) {
+            putObjectValue(entry.getKey(), entry.getValue());
         }
     }
 

Reply via email to