code: protected void doAdd(final ItemData item, final WorkspaceStorageConnection con, final Set<QPath> addedNodes,
        ChangedSizeHandler sizeHandler) throws RepositoryException, InvalidItemStateException
     {
        if (item.isNode())
        {
           final NodeData node = (NodeData)item;
  
           checkSameNameSibling(node, con, addedNodes);
           addedNodes.add(node.getQPath());
  
           con.add(node);
        }
        else
        {
           con.add((PropertyData)item, sizeHandler);
        }
     }
docs: Performs actual item data adding.
  
  @param item
  to add
  @param con
  connection
  @param sizeHandler
  accumulates size changing
  @throws RepositoryException
  @throws InvalidItemStateException
  if the item is already added