From 075b02baee4fcb60a47fa4e858c98b6b39a2dd7b Mon Sep 17 00:00:00 2001 From: Damian Ujma <92095156+damianujma@users.noreply.github.com> Date: Fri, 23 May 2025 08:34:27 +0200 Subject: [PATCH] ACS-9429 Fix AGS Roles API (#3365) --- .../rm-public-rest-context.xml | 1 + .../api/fileplans/FilePlanRolesRelation.java | 26 ++++++++++++++++++- 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/amps/ags/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-rest-context.xml b/amps/ags/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-rest-context.xml index 67152cf0f6..25205b9104 100644 --- a/amps/ags/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-rest-context.xml +++ b/amps/ags/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-rest-context.xml @@ -81,6 +81,7 @@ + diff --git a/amps/ags/rm-community/rm-community-repo/source/java/org/alfresco/rm/rest/api/fileplans/FilePlanRolesRelation.java b/amps/ags/rm-community/rm-community-repo/source/java/org/alfresco/rm/rest/api/fileplans/FilePlanRolesRelation.java index 183234f42e..a6200e9063 100644 --- a/amps/ags/rm-community/rm-community-repo/source/java/org/alfresco/rm/rest/api/fileplans/FilePlanRolesRelation.java +++ b/amps/ags/rm-community/rm-community-repo/source/java/org/alfresco/rm/rest/api/fileplans/FilePlanRolesRelation.java @@ -30,7 +30,9 @@ import static org.alfresco.util.ParameterCheck.mandatory; import org.springframework.beans.factory.InitializingBean; +import org.alfresco.module.org_alfresco_module_rm.fileplan.FilePlanService; import org.alfresco.module.org_alfresco_module_rm.model.RecordsManagementModel; +import org.alfresco.rest.framework.core.exceptions.EntityNotFoundException; import org.alfresco.rest.framework.resource.RelationshipResource; import org.alfresco.rest.framework.resource.actions.interfaces.RelationshipResourceAction; import org.alfresco.rest.framework.resource.parameters.CollectionWithPagingInfo; @@ -44,6 +46,7 @@ import org.alfresco.service.cmr.repository.NodeRef; public class FilePlanRolesRelation implements RelationshipResourceAction.Read, InitializingBean { private RMRoles rmRoles; + private FilePlanService filePlanService; private FilePlanComponentsApiUtils apiUtils; @Override @@ -51,15 +54,31 @@ public class FilePlanRolesRelation implements RelationshipResourceAction.Read readAll(String filePlanId, Parameters params) { - NodeRef filePlanNodeRef = apiUtils.lookupAndValidateNodeType(filePlanId, RecordsManagementModel.TYPE_FILE_PLAN); + NodeRef filePlanNodeRef = getFilePlan(filePlanId); + if (filePlanNodeRef == null) + { + throw new EntityNotFoundException(filePlanId); + } + return rmRoles.getRoles(filePlanNodeRef, params); } + private NodeRef getFilePlan(String filePlanId) + { + NodeRef filePlanNodeRef = apiUtils.lookupAndValidateNodeType(filePlanId, RecordsManagementModel.TYPE_FILE_PLAN); + if (!FilePlanComponentsApiUtils.FILE_PLAN_ALIAS.equals(filePlanId)) + { + filePlanNodeRef = filePlanService.getFilePlan(filePlanNodeRef); + } + return filePlanNodeRef; + } + public void setRmRoles(RMRoles rmRoles) { this.rmRoles = rmRoles; @@ -69,4 +88,9 @@ public class FilePlanRolesRelation implements RelationshipResourceAction.Read