mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-31 17:39:05 +00:00
Merge branch 'master' of https://git.alfresco.com/records-management/records-management into feature/RM-7066_UpdateToACS62
This commit is contained in:
@@ -82,6 +82,7 @@ import org.alfresco.service.cmr.repository.MLText;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.cmr.repository.NodeService;
|
||||
import org.alfresco.service.cmr.security.AccessStatus;
|
||||
import org.alfresco.service.cmr.security.PermissionService;
|
||||
import org.alfresco.service.cmr.site.SiteInfo;
|
||||
import org.alfresco.service.cmr.site.SiteService;
|
||||
import org.alfresco.service.namespace.NamespaceService;
|
||||
@@ -206,6 +207,7 @@ public class RecordsManagementAuditServiceImpl extends AbstractLifecycleBean
|
||||
private FilePlanService filePlanService;
|
||||
private NamespaceService namespaceService;
|
||||
protected CapabilityService capabilityService;
|
||||
protected PermissionService permissionService;
|
||||
|
||||
private boolean shutdown = false;
|
||||
|
||||
@@ -322,6 +324,15 @@ public class RecordsManagementAuditServiceImpl extends AbstractLifecycleBean
|
||||
this.ignoredAuditProperties = ignoredAuditProperties;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param permissionService
|
||||
*/
|
||||
public void setPermissionService(PermissionService permissionService)
|
||||
{
|
||||
this.permissionService = permissionService;
|
||||
}
|
||||
|
||||
/**
|
||||
* @see org.alfresco.module.org_alfresco_module_rm.audit.RecordsManagementAuditService#registerAuditEvent(java.lang.String, java.lang.String)
|
||||
*/
|
||||
@@ -988,9 +999,10 @@ public class RecordsManagementAuditServiceImpl extends AbstractLifecycleBean
|
||||
}
|
||||
|
||||
if (nodeRef != null && nodeService.exists(nodeRef) &&
|
||||
filePlanService.isFilePlanComponent(nodeRef) &&
|
||||
!AccessStatus.ALLOWED.equals(
|
||||
capabilityService.getCapabilityAccessState(nodeRef, ACCESS_AUDIT_CAPABILITY)))
|
||||
((filePlanService.isFilePlanComponent(nodeRef) &&
|
||||
!AccessStatus.ALLOWED.equals(
|
||||
capabilityService.getCapabilityAccessState(nodeRef, ACCESS_AUDIT_CAPABILITY)))
|
||||
|| (!AccessStatus.ALLOWED.equals(permissionService.hasPermission(nodeRef, PermissionService.READ)))))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
@@ -1522,12 +1534,6 @@ public class RecordsManagementAuditServiceImpl extends AbstractLifecycleBean
|
||||
|
||||
setNodeName(entry, json);
|
||||
|
||||
// TODO: Find another way for checking the event
|
||||
if (entry.getEvent().equals("Delete RM Object"))
|
||||
{
|
||||
json.put("deleteObject", true);
|
||||
}
|
||||
|
||||
json.put("nodeType", entry.getNodeType() == null ? "": entry.getNodeType());
|
||||
json.put("event", entry.getEvent() == null ? "": getAuditEventLabel(entry.getEvent()));
|
||||
json.put("identifier", entry.getIdentifier() == null ? "": entry.getIdentifier());
|
||||
@@ -1626,6 +1632,12 @@ public class RecordsManagementAuditServiceImpl extends AbstractLifecycleBean
|
||||
nodeName = getNodeName(entry.getBeforeProperties(), PARENT_GROUP);
|
||||
break;
|
||||
|
||||
case "Delete RM Object":
|
||||
case "Delete Hold":
|
||||
nodeName = entry.getNodeName();
|
||||
json.put("deleteObject", true);
|
||||
break;
|
||||
|
||||
default:
|
||||
nodeName = entry.getNodeName();
|
||||
break;
|
||||
|
@@ -39,11 +39,11 @@ import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
import org.alfresco.error.AlfrescoRuntimeException;
|
||||
import org.alfresco.model.ContentModel;
|
||||
import org.alfresco.module.org_alfresco_module_rm.audit.RecordsManagementAuditService;
|
||||
import org.alfresco.module.org_alfresco_module_rm.audit.event.AuditEvent;
|
||||
import org.alfresco.module.org_alfresco_module_rm.capability.CapabilityService;
|
||||
import org.alfresco.module.org_alfresco_module_rm.capability.RMPermissionModel;
|
||||
import org.alfresco.module.org_alfresco_module_rm.fileplan.FilePlanService;
|
||||
@@ -104,6 +104,9 @@ public class HoldServiceImpl extends ServiceBaseImpl
|
||||
private static final String MSG_ERR_HOLD_PERMISSION_GENERIC_ERROR = "rm.hold.generic-permission-error";
|
||||
private static final String MSG_ERR_HOLD_PERMISSION_DETAILED_ERROR = "rm.hold.detailed-permission-error";
|
||||
|
||||
/** Maximum number of held items to display in error message */
|
||||
private static final int MAX_HELD_ITEMS_LIST_SIZE = 5;
|
||||
|
||||
/** File Plan Service */
|
||||
private FilePlanService filePlanService;
|
||||
|
||||
@@ -570,13 +573,13 @@ public class HoldServiceImpl extends ServiceBaseImpl
|
||||
if (heldNames.size() > 0)
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for (String name : heldNames)
|
||||
{
|
||||
Stream<String> stream1 = heldNames.stream();
|
||||
stream1.limit(MAX_HELD_ITEMS_LIST_SIZE).forEach(name -> {
|
||||
sb.append("\n ");
|
||||
sb.append("'");
|
||||
sb.append(name);
|
||||
sb.append("'");
|
||||
}
|
||||
});
|
||||
throw new AccessDeniedException(I18NUtil.getMessage(MSG_ERR_HOLD_PERMISSION_DETAILED_ERROR) + sb.toString());
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user