From df94f342d8c8ef87e1a4855f20d8dce56b04e3cd Mon Sep 17 00:00:00 2001 From: Derek Hulley Date: Wed, 14 Jun 2006 15:40:27 +0000 Subject: [PATCH] Added getArchivedNode(NodeRef originalNodeRef) method for quick retrieval of archived node reference git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@3102 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../repo/node/archive/NodeArchiveService.java | 9 +++++++++ .../repo/node/archive/NodeArchiveServiceImpl.java | 11 +++++++++++ 2 files changed, 20 insertions(+) diff --git a/source/java/org/alfresco/repo/node/archive/NodeArchiveService.java b/source/java/org/alfresco/repo/node/archive/NodeArchiveService.java index 72dd318b94..8ba5d9c02e 100644 --- a/source/java/org/alfresco/repo/node/archive/NodeArchiveService.java +++ b/source/java/org/alfresco/repo/node/archive/NodeArchiveService.java @@ -40,6 +40,15 @@ public interface NodeArchiveService */ public NodeRef getStoreArchiveNode(StoreRef originalStoreRef); + /** + * Get the likely node reference for the original node. There is no + * guarantee that the node exists in the archive store. + * + * @param originalNodeRef the original node reference + * @return Returns the node ref of the node if it was archived. + */ + public NodeRef getArchivedNode(NodeRef originalNodeRef); + /** * Attempt to restore the given archived node into its original location. *

diff --git a/source/java/org/alfresco/repo/node/archive/NodeArchiveServiceImpl.java b/source/java/org/alfresco/repo/node/archive/NodeArchiveServiceImpl.java index 0fc0f48441..82840572f5 100644 --- a/source/java/org/alfresco/repo/node/archive/NodeArchiveServiceImpl.java +++ b/source/java/org/alfresco/repo/node/archive/NodeArchiveServiceImpl.java @@ -72,6 +72,17 @@ public class NodeArchiveServiceImpl implements NodeArchiveService return nodeService.getStoreArchiveNode(originalStoreRef); } + public NodeRef getArchivedNode(NodeRef originalNodeRef) + { + StoreRef orginalStoreRef = originalNodeRef.getStoreRef(); + NodeRef archiveRootNodeRef = nodeService.getStoreArchiveNode(orginalStoreRef); + // create the likely location of the archived node + NodeRef archivedNodeRef = new NodeRef( + archiveRootNodeRef.getStoreRef(), + originalNodeRef.getId()); + return archivedNodeRef; + } + /** * Get all the nodes that were archived from the given store. */