+ @Override
+ public <K, V, N extends IdentifierNamespace<K, V>> V putToLocalStorage(final Class<N> type, final K key,
+ final V value) {
+ final V ret = ensureLocalNamespace(type).put(key, value);
+ onNamespaceElementAdded(type, key, value);
+ return ret;
+ }
+
+ @Override
+ public <K, V, N extends IdentifierNamespace<K, V>> V putToLocalStorageIfAbsent(final Class<N> type, final K key,
+ final V value) {
+ final V ret = ensureLocalNamespace(type).putIfAbsent(key, value);
+ if (ret == null) {
+ onNamespaceElementAdded(type, key, value);
+ }
+ return ret;
+ }