Merge branch 'feature/RM-7068_ShortenErrorMsgForDeleteHold' into 'master'

Resolve RM-7068 "Feature/ shorten error msg for delete hold"

Closes RM-7068

See merge request records-management/records-management!1313
This commit is contained in:
Sara Aspery
2019-11-28 06:55:02 +00:00
2 changed files with 8 additions and 5 deletions

View File

@@ -7,4 +7,4 @@ rm.hold.delete-node-frozen-children=Can't delete folder because it contains froz
rm.hold.move-frozen-node=Frozen content can't be moved. rm.hold.move-frozen-node=Frozen content can't be moved.
rm.hold.update-frozen-node=Frozen content can't be updated. rm.hold.update-frozen-node=Frozen content can't be updated.
rm.hold.generic-permission-error=Can't delete hold, because you don't have the correct permissions for all the items within the hold. rm.hold.generic-permission-error=Can't delete hold, because you don't have the correct permissions for all the items within the hold.
rm.hold.detailed-permission-error=Can't delete hold, because filing permissions for the following items are needed: rm.hold.detailed-permission-error=Can't delete hold, because filing permissions for at least the following items are needed:

View File

@@ -39,11 +39,11 @@ import java.util.HashSet;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
import java.util.stream.Stream;
import org.alfresco.error.AlfrescoRuntimeException; import org.alfresco.error.AlfrescoRuntimeException;
import org.alfresco.model.ContentModel; import org.alfresco.model.ContentModel;
import org.alfresco.module.org_alfresco_module_rm.audit.RecordsManagementAuditService; 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.CapabilityService;
import org.alfresco.module.org_alfresco_module_rm.capability.RMPermissionModel; import org.alfresco.module.org_alfresco_module_rm.capability.RMPermissionModel;
import org.alfresco.module.org_alfresco_module_rm.fileplan.FilePlanService; 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_GENERIC_ERROR = "rm.hold.generic-permission-error";
private static final String MSG_ERR_HOLD_PERMISSION_DETAILED_ERROR = "rm.hold.detailed-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 */ /** File Plan Service */
private FilePlanService filePlanService; private FilePlanService filePlanService;
@@ -570,13 +573,13 @@ public class HoldServiceImpl extends ServiceBaseImpl
if (heldNames.size() > 0) if (heldNames.size() > 0)
{ {
StringBuilder sb = new StringBuilder(); 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("\n ");
sb.append("'"); sb.append("'");
sb.append(name); sb.append(name);
sb.append("'"); sb.append("'");
} });
throw new AccessDeniedException(I18NUtil.getMessage(MSG_ERR_HOLD_PERMISSION_DETAILED_ERROR) + sb.toString()); throw new AccessDeniedException(I18NUtil.getMessage(MSG_ERR_HOLD_PERMISSION_DETAILED_ERROR) + sb.toString());
} }