mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-10-08 14:51:49 +00:00
MNT-18502 - filtered out dod properties if the node is not a dod record
This commit is contained in:
@@ -33,6 +33,7 @@ import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
import org.alfresco.model.ContentModel;
|
||||
import org.alfresco.module.org_alfresco_module_rm.dod5015.DOD5015Model;
|
||||
import org.alfresco.module.org_alfresco_module_rm.model.RecordsManagementModel;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.cmr.repository.NodeService;
|
||||
@@ -69,7 +70,13 @@ public class RFC822MetadataExtracter extends org.alfresco.repo.content.metadata.
|
||||
protected void filterSystemProperties(Map<QName, Serializable> systemProperties, Map<QName, Serializable> targetProperties)
|
||||
{
|
||||
NodeRef nodeRef = getNodeRef(targetProperties);
|
||||
if (nodeRef == null || !nodeService.hasAspect(nodeRef, RecordsManagementModel.ASPECT_RECORD))
|
||||
if(nodeRef == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
// Remove record properties from non-record nodes
|
||||
if (!nodeService.hasAspect(nodeRef, RecordsManagementModel.ASPECT_RECORD))
|
||||
{
|
||||
// Remove all rm namespace properties from the system map
|
||||
Map<QName, Serializable> clone = new HashMap<QName, Serializable>(systemProperties);
|
||||
@@ -81,6 +88,20 @@ public class RFC822MetadataExtracter extends org.alfresco.repo.content.metadata.
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Remove dod5015 properties from non-dod5015 nodes
|
||||
if (!nodeService.hasAspect(nodeRef, DOD5015Model.ASPECT_DOD_5015_RECORD))
|
||||
{
|
||||
// Remove all dod5015 namespace properties from the system map
|
||||
Map<QName, Serializable> clone = new HashMap<>(systemProperties);
|
||||
for (QName propName : clone.keySet())
|
||||
{
|
||||
if (DOD5015Model.DOD_URI.equals(propName.getNamespaceURI()))
|
||||
{
|
||||
systemProperties.remove(propName);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user