public NodeSPI<K, V> createDataNode(Object childName, Fqn fqn, NodeSPI<K, V> parent, Map<K, V> data, boolean mapSafe)
{
UnversionedNode un = optimistic ? new VersionedNode<K, V>(fqn, parent, data, cache) : new UnversionedNode<K, V>(childName, fqn, data, mapSafe, cache);
// always assume that new nodes do not have data loaded
un.setDataLoaded(false);
NodeInvocationDelegate<K, V> nid = new NodeInvocationDelegate(un);
// Too slow to have these autowired for now. Look at manually wiring them.
nid.initialize(configuration, invocationContextContainer, componentRegistry, interceptorChain);
nid.injectDependencies(cache);
un.injectDependencies(cache, commandsFactory, lockStrategyFactory);
// componentRegistry.wireDependencies(nid);
// componentRegistry.wireDependencies(un);
// back ref