Merged HEAD-BUG-FIX (5.1/Cloud) to HEAD (5.0/Cloud)

88172: Merged V4.2-BUG-FIX (4.2.4) to HEAD-BUG-FIX (5.0/Cloud)
      88031: MNT-12414 Action menu renders two 'cancel edit' actions when working copy opened in webdav by second user.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@94566 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Alan Davis
2015-01-31 09:59:21 +00:00
parent 47e7e002a1
commit 1fb964284d

View File

@@ -53,6 +53,7 @@ import org.alfresco.service.cmr.lock.LockService;
import org.alfresco.service.cmr.model.FileFolderService;
import org.alfresco.service.cmr.model.FileInfo;
import org.alfresco.service.cmr.model.FileNotFoundException;
import org.alfresco.service.cmr.repository.AssociationRef;
import org.alfresco.service.cmr.repository.CopyService;
import org.alfresco.service.cmr.repository.MimetypeService;
import org.alfresco.service.cmr.repository.NodeRef;
@@ -1188,6 +1189,15 @@ public class WebDAVHelper
*/
public boolean isLockedAndReadOnly(final NodeRef nodeRef)
{
return LockUtils.isLockedAndReadOnly(nodeRef, m_serviceRegistry.getLockService());
NodeRef iNodeRef = nodeRef;
if (getNodeService().hasAspect(nodeRef, ContentModel.ASPECT_WORKING_COPY))
{
List<AssociationRef> targetAssocs = getNodeService().getTargetAssocs(nodeRef, ContentModel.ASSOC_ORIGINAL);
if (targetAssocs.size() == 1)
{
iNodeRef = targetAssocs.get(0).getTargetRef();
}
}
return LockUtils.isLockedAndReadOnly(iNodeRef, m_serviceRegistry.getLockService());
}
}