From 9472d2f237072b1e8d631184fc2b33d86a1ef7cb Mon Sep 17 00:00:00 2001 From: Britt Park Date: Mon, 8 Jan 2007 15:35:21 +0000 Subject: [PATCH] Fixed a wee bug. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4752 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../avm/actions/AVMRevertToVersionAction.java | 22 +++++-------------- 1 file changed, 6 insertions(+), 16 deletions(-) diff --git a/source/java/org/alfresco/repo/avm/actions/AVMRevertToVersionAction.java b/source/java/org/alfresco/repo/avm/actions/AVMRevertToVersionAction.java index 3f50a506a9..3300cadc55 100644 --- a/source/java/org/alfresco/repo/avm/actions/AVMRevertToVersionAction.java +++ b/source/java/org/alfresco/repo/avm/actions/AVMRevertToVersionAction.java @@ -6,6 +6,7 @@ package org.alfresco.repo.avm.actions; import java.util.ArrayList; import java.util.List; +import org.alfresco.error.AlfrescoRuntimeException; import org.alfresco.repo.action.ParameterDefinitionImpl; import org.alfresco.repo.action.executer.ActionExecuterAbstractBase; import org.alfresco.repo.avm.AVMNodeConverter; @@ -62,31 +63,20 @@ public class AVMRevertToVersionAction extends ActionExecuterAbstractBase { Pair versionPath = AVMNodeConverter.ToAVMVersionPath(actionedUponNodeRef); - String [] storePath = versionPath.getSecond().split(":"); - String store = storePath[0]; AVMNodeDescriptor toRevert = (AVMNodeDescriptor)action.getParameterValue(TOREVERT); List> paths = fAVMService.getPaths(toRevert); - Pair found = new Pair(Integer.MAX_VALUE, ""); - for (Pair path : paths) + if (paths.size() == 0) { - if (!path.getSecond().startsWith(store + ':')) - { - continue; - } - if (path.getFirst() < found.getFirst()) - { - found = path; - } + fgLogger.error("Unable to find path for: " + toRevert); + throw new AlfrescoRuntimeException("Could not find path for: " + toRevert); } - // TODO I believe that this should always have found not - // the initial found. Must confirm. - AVMDifference diff = new AVMDifference(found.getFirst(), found.getSecond(), + AVMDifference diff = new AVMDifference(paths.get(0).getFirst(), paths.get(0).getSecond(), -1, versionPath.getSecond(), AVMDifference.NEWER); List diffs = new ArrayList(1); diffs.add(diff); - String message = "Reverted " + versionPath.getSecond() + " to version in snapshot " + found.getFirst() + "."; + String message = "Reverted " + versionPath.getSecond() + " to version in snapshot " + paths.get(0).getFirst() + "."; fAVMSyncService.update(diffs, null, false, false, true, true, "Reverted", message); }