Merged V3.2 to HEAD

15596: Merged V3.1 to V3.2
        14017: Fix ETHREEOH-1880 - remove (double-)reverse of WCM staging snapshot order
        14112: Fix ETHREEOH-1758 - apply contributed patch
        14447: Merged V2.2 to V3.1
            14276: ETWOTWO-1224 / WCM-948 - browsing staging area during (commit of) large submit can cause AVMNotFoundException: Path /www/avm_webapps not found.
       14452: Add WCM services-based unit test for ETWOTWO-1224 / WCM-948
       14589: ETHREEOH-1646 - User Sandboxes aren't visible for Content Publisher
    15604: Merged V3.1 to V3.2
        14734: Merged V2.2 to V3.1
            14718: ETWOTWO-1244 - unable to revert some snapshots ("Does not exist: xxx")
        14852: Merged V2.2 to V3.1
            14720: ETWOTWO-1183 - "Show All Sandboxes" checkbox should only be visible for "Content Publisher" or "Content Manager"
        15032: Fix ETHREEOH-2240 - delete WCM web project (does not clean-up workflow sandboxes and also appears in archive store)
        15037: Fix ETHREEOH-2240 - follow-on for Alfresco Explorer's Manage (Review) Task Dialog
        15056: Fix ETHREEOH-2297 - WCM layered folder - problem deleting file
        15072: Minor - fix remote AVM test
    15605: Merged V3.1 to V3.2
        15082: Merged V2.2 to V3.1
            15081: AVM - add tests only
        15083: Fix ETHREEOH-2296 - user conflict when updating an AVM layered file
        15118: Merged V2.2 to V3.1
            15115: Fix ETWOTWO-1265 - WCM locking not working as expected (+ add WCM services test)
        15137: Fix ETHREEOH-2309 and ETHREEOH-227 - including refactor (& clean-up) of WCM-related actions
        15156: Fix ETHREEOH-2078 & ETHREEOH-2040 - WCM - deploy to localhost causes "Must have at least one store" errors
        15175: Fix ETHREEOH-2309 and ETHREEOH-227 - further clean-up of WCM submit/undo actions (for consistency)
        15190: Minor: message updates for WCM submit/undo actions


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16858 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Jan Vonka
2009-10-13 11:34:23 +00:00
parent 69f987c456
commit 2eeefe0a72
33 changed files with 2983 additions and 323 deletions

View File

@@ -555,7 +555,18 @@ public class AVMSyncServiceImpl implements AVMSyncService
// This is a delete.
if (toLink == null)
{
fAVMService.removeNode(parentPath, name);
try
{
fAVMService.removeNode(parentPath, name);
}
catch (AVMNotFoundException nfe)
{
// ignore
if (fgLogger.isDebugEnabled())
{
fgLogger.debug("linkIn: Does not exist: "+parentPath+"/"+name);
}
}
return;
}
mkdirs(parentPath, AVMNodeConverter.SplitBase(toLink.getPath())[0]);
@@ -831,11 +842,26 @@ public class AVMSyncServiceImpl implements AVMSyncService
{
return AVMDifference.SAME;
}
// Otherwise we know they are in conflict because they are of different type.
AVMNodeDescriptor common = fAVMService.getCommonAncestor(srcDesc, dstDesc);
if (common == null)
{
return AVMDifference.CONFLICT;
}
if (common.getId() == srcDesc.getId())
{
return AVMDifference.OLDER;
}
if (common.getId() == dstDesc.getId())
{
return AVMDifference.NEWER;
}
return AVMDifference.CONFLICT;
}
// Destination is a plain file.
AVMNodeDescriptor common = fAVMService.getCommonAncestor(srcDesc, dstDesc);
// Conflict case.
if (common == null)
{
@@ -849,7 +875,23 @@ public class AVMSyncServiceImpl implements AVMSyncService
{
return AVMDifference.NEWER;
}
// The must, finally, be in conflict.
if (common.isLayeredFile())
{
AVMNode dstAncNode = AVMDAOs.Instance().fAVMNodeDAO.getByID(dstDesc.getId()).getAncestor();
if ((dstAncNode != null) && (common.getId() == dstAncNode.getId()))
{
return AVMDifference.NEWER;
}
AVMNode srcAncNode = AVMDAOs.Instance().fAVMNodeDAO.getByID(srcDesc.getId()).getAncestor();
if ((srcAncNode != null) && (common.getId() == srcAncNode.getId()))
{
return AVMDifference.OLDER;
}
}
// They must, finally, be in conflict.
return AVMDifference.CONFLICT;
}