RM-2873: Browsing version history properties fails when version destroyed

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/BRANCHES/V2.3@120061 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Roy Wetherall
2015-12-10 22:09:07 +00:00
parent 8dabd2f2ba
commit c57c0ed25f

View File

@@ -62,6 +62,7 @@ public class RecordableVersionNodeServiceImpl extends Node2ServiceImpl
/**
* @see org.alfresco.repo.version.Node2ServiceImpl#getProperties(org.alfresco.service.cmr.repository.NodeRef)
*/
@SuppressWarnings("unchecked")
@Override
public Map<QName, Serializable> getProperties(NodeRef nodeRef) throws InvalidNodeRefException
{
@@ -71,10 +72,17 @@ public class RecordableVersionNodeServiceImpl extends Node2ServiceImpl
if (dbNodeService.hasAspect(converted, ASPECT_RECORDED_VERSION))
{
NodeRef record = (NodeRef)dbNodeService.getProperty(converted, PROP_RECORD_NODE_REF);
if (record != null && dbNodeService.exists(record))
{
Map<QName, Serializable> properties = dbNodeService.getProperties(record);
return processProperties(converted, properties);
}
else
{
return (Map<QName, Serializable>)Collections.EMPTY_MAP;
}
}
else
{
return super.getProperties(nodeRef);
}
@@ -192,7 +200,7 @@ public class RecordableVersionNodeServiceImpl extends Node2ServiceImpl
if (dbNodeService.hasAspect(converted, ASPECT_RECORDED_VERSION))
{
NodeRef record = (NodeRef)dbNodeService.getProperty(converted, PROP_RECORD_NODE_REF);
if (dbNodeService.exists(record))
if (record != null && dbNodeService.exists(record))
{
Set<QName> aspects = dbNodeService.getAspects(record);
return processAspects(aspects);