code: protected NodeData removeChildNode(final String parentIdentifier, final String childIdentifier)
     {
        final List<NodeData> childNodes = nodesCache.get(parentIdentifier);
        if (childNodes != null)
        {
           synchronized (childNodes)
           { // [PN] 17.01.07
              for (Iterator<NodeData> i = childNodes.iterator(); i.hasNext();)
              {
                 NodeData cn = i.next();
                 if (cn.getIdentifier().equals(childIdentifier))
                 {
                    i.remove();
                    return cn;
                 }
              }
           }
        }
        return null;
     }
docs: Remove child node by id if parent child nodes are cached in CN.
  
  @param parentIdentifier
  - parebt if
  @param childIdentifier
  - node id
  @return removed node or null if node not cached or parent child nodes are not cached