RM-1980 (Can't delete version record if it is the last version of the document)

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/BRANCHES/V2.3@98190 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Tuna Aksoy
2015-02-26 21:10:51 +00:00
parent 199bac798e
commit f212d67b58

View File

@@ -1815,14 +1815,24 @@ public class RecordServiceImpl extends BaseBehaviourBean
)
public void beforeDeleteNode(NodeRef nodeRef)
{
NodeRef versionedNodeRef = (NodeRef) nodeService.getProperty(nodeRef, PROP_VERSIONED_NODEREF);
final NodeRef versionedNodeRef = (NodeRef) nodeService.getProperty(nodeRef, PROP_VERSIONED_NODEREF);
if (versionedNodeRef != null)
{
String versionLabel = (String) nodeService.getProperty(nodeRef, PROP_VERSION_LABEL);
if (isNotBlank(versionLabel))
{
Version version = versionService.getVersionHistory(versionedNodeRef).getVersion(versionLabel);
final Version version = versionService.getVersionHistory(versionedNodeRef).getVersion(versionLabel);
AuthenticationUtil.runAsSystem(new RunAsWork<Void>()
{
@Override
public Void doWork()
{
versionService.deleteVersion(versionedNodeRef, version);
return null;
}
});
}
}
}