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()); } }
