UpdatableValueContainer<Value> (final Key key) { return myMap.computeIfAbsent(key, k -> { return new TransientChangeTrackingValueContainer<>(() -> { try { return myBackendStorage.read(key); } catch (StorageException e) { throw new RuntimeException(e); } }); }); }