RM-1429 (The user with read-only permissions on the item can unfreeze it via deleting hold)

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@73493 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Tuna Aksoy
2014-06-10 13:24:19 +00:00
parent f81f99a5e8
commit c66bcfd0f0

View File

@@ -409,7 +409,7 @@ public class HoldServiceImpl extends ServiceBaseImpl
* @see org.alfresco.module.org_alfresco_module_rm.hold.HoldService#deleteHold(org.alfresco.service.cmr.repository.NodeRef)
*/
@Override
public void deleteHold(NodeRef hold)
public void deleteHold(final NodeRef hold)
{
ParameterCheck.mandatory("hold", hold);
@@ -418,7 +418,15 @@ public class HoldServiceImpl extends ServiceBaseImpl
throw new AlfrescoRuntimeException("Can't delete hold, becuase passed node is not a hold. (hold=" + hold.toString() + ")");
}
List<NodeRef> held = getHeld(hold);
List<NodeRef> held = AuthenticationUtil.runAsSystem(new RunAsWork<List<NodeRef>>()
{
@Override
public List<NodeRef> doWork()
{
return getHeld(hold);
}
});
List<String> heldNames = new ArrayList<String>();
for (NodeRef nodeRef : held)
{