throws NoSuchWorkspaceException, AccessDeniedException, MergeException, LockException, InvalidItemStateException, RepositoryException {
final SessionInfoImpl sInfo = getSessionInfoImpl(sessionInfo);
return (Iterator) executeWithLocalEvents(new Callable() {
public Object run() throws RepositoryException {
Node n = getNode(nodeId, sInfo);
NodeIterator it = n.merge(srcWorkspaceName, bestEffort);
List ids = new ArrayList();
while (it.hasNext()) {
ids.add(idFactory.createNodeId(it.nextNode(),
sInfo.getNamePathResolver()));
}