Added a cross repository copy service. It has a single method copy, which does a recursive

copy of the source node into the destination node. This is a checkpoint; only AVM to AVM and
Repo to AVM work so far.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@5019 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Britt Park
2007-02-02 16:11:28 +00:00
parent 63e3b7453d
commit 29e3335cad
4 changed files with 331 additions and 0 deletions

View File

@@ -42,6 +42,7 @@ import org.alfresco.repo.avm.actions.SimpleAVMPromoteAction;
import org.alfresco.repo.avm.actions.SimpleAVMSubmitAction;
import org.alfresco.repo.avm.util.BulkLoader;
import org.alfresco.repo.domain.PropertyValue;
import org.alfresco.repo.remote.RepoRemoteService;
import org.alfresco.repo.transaction.RetryingTransactionHelper;
import org.alfresco.repo.transaction.TransactionUtil;
import org.alfresco.service.cmr.avm.AVMBadArgumentException;
@@ -56,6 +57,9 @@ import org.alfresco.service.cmr.avm.VersionDescriptor;
import org.alfresco.service.cmr.avmsync.AVMDifference;
import org.alfresco.service.cmr.avmsync.AVMSyncException;
import org.alfresco.service.cmr.model.FileFolderService;
import org.alfresco.service.cmr.remote.RepoRemote;
import org.alfresco.service.cmr.repository.CrossRepositoryCopyService;
import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.service.cmr.repository.NodeService;
import org.alfresco.service.cmr.security.AccessPermission;
import org.alfresco.service.cmr.security.PermissionService;
@@ -226,6 +230,13 @@ public class AVMServiceTest extends AVMServiceTestBase
{
// This is a success.
}
CrossRepositoryCopyService copyService = (CrossRepositoryCopyService)fContext.getBean("CrossRepositoryCopyService");
RepoRemote remoteService = (RepoRemote)fContext.getBean("RepoRemoteService");
Pair<NodeRef, Boolean> toCopy = remoteService.lookup(remoteService.getRoot(), "Guest Home");
copyService.copy(toCopy.getFirst(), AVMNodeConverter.ToNodeRef(-1, "main:/"), "Guest Home");
desc = fService.lookup(-1, "main:/Guest Home");
assertTrue(desc.isDirectory());
System.out.println(this.recursiveList("main", -1, true));
}
catch (Exception e)
{