@Test public void shouldCreateChildWithNull() { assertThat(new ThreadLocalMap<String, String>().childValue(null), is(nullValue())); }
@Override protected final Map<K, V> childValue(Map<K, V> parentValue) { if (parentValue == null) { return null; } else { return new HashMap<>(parentValue); } }
ThreadLocalMap extends InheritableThreadLocal<Map<K, V>> { @Override protected final Map<K, V> childValue(Map<K, V> parentValue) { if (parentValue == null) { return null; } else { return new HashMap<>(parentValue); } } }
ThreadLocalMap extends InheritableThreadLocal<Map<K, V>> { @Override protected final Map<K, V> childValue(Map<K, V> parentValue) { if (parentValue == null) { return null; } else { return new HashMap<>(parentValue); } }  }
ThreadLocalMap extends InheritableThreadLocal<Map<K, V>> { @Override protected final Map<K, V> childValue(Map<K, V> parentValue) { if (parentValue == null) { return null; } else { return new HashMap<>(parentValue); } }   }
ThreadLocalMap extends InheritableThreadLocal<Map<K, V>> { @Override protected final Map<K, V> childValue(Map<K, V> parentValue) { if (parentValue == null) { return null; } else { return new HashMap<>(parentValue); } }    }