diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-service-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-service-context.xml
index ee1b0044e6..197429a496 100644
--- a/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-service-context.xml
+++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-service-context.xml
@@ -440,7 +440,7 @@
parent="baseService"
class="org.alfresco.module.org_alfresco_module_rm.fileplan.FilePlanServiceImpl">
-
+
@@ -607,8 +607,8 @@
org.alfresco.module.org_alfresco_module_rm.role.FilePlanRoleService.getUsersAssignedToRole=RM.Read.0
org.alfresco.module.org_alfresco_module_rm.role.FilePlanRoleService.getGroupsAssignedToRole=RM.Read.0
org.alfresco.module.org_alfresco_module_rm.role.FilePlanRoleService.getAllAssignedToRole=RM.Read.0
- org.alfresco.module.org_alfresco_module_rm.role.FilePlanRoleService.assignRoleToAuthority=RM_ALLOW
- org.alfresco.module.org_alfresco_module_rm.role.FilePlanRoleService.unassignRoleFromAuthority=RM_ALLOW
+ org.alfresco.module.org_alfresco_module_rm.role.FilePlanRoleService.assignRoleToAuthority=RM_CAP.0.rma:filePlanComponent.CreateModifyDestroyUsersAndGroups
+ org.alfresco.module.org_alfresco_module_rm.role.FilePlanRoleService.unassignRoleFromAuthority=RM_CAP.0.rma:filePlanComponent.CreateModifyDestroyUsersAndGroups
org.alfresco.module.org_alfresco_module_rm.role.FilePlanRoleService.getAllRolesContainerGroup=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.role.FilePlanRoleService.*=RM_DENY
]]>
@@ -1160,9 +1160,9 @@
-
+
-
+
diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-webscript-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-webscript-context.xml
index 9636dafab8..36935015bb 100644
--- a/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-webscript-context.xml
+++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-webscript-context.xml
@@ -539,18 +539,18 @@
-
-
+
-
-
+
diff --git a/rm-server/config/alfresco/templates/webscripts/org/alfresco/repository/groups/rm-children.delete.desc.xml b/rm-server/config/alfresco/templates/webscripts/org/alfresco/repository/roles/rm-authorities.delete.desc.xml
similarity index 64%
rename from rm-server/config/alfresco/templates/webscripts/org/alfresco/repository/groups/rm-children.delete.desc.xml
rename to rm-server/config/alfresco/templates/webscripts/org/alfresco/repository/roles/rm-authorities.delete.desc.xml
index 2aaf104c0f..6bd7f8162d 100644
--- a/rm-server/config/alfresco/templates/webscripts/org/alfresco/repository/groups/rm-children.delete.desc.xml
+++ b/rm-server/config/alfresco/templates/webscripts/org/alfresco/repository/roles/rm-authorities.delete.desc.xml
@@ -4,8 +4,8 @@
Removes a group or a user from a role.
]]>
- /api/rm/role/{roleId}/children/{authorityName}
- /api/rm/{store_type}/{store_id}/{id}/role/{roleId}/children/{authorityName}
+ /api/rm/roles/{roleId}/authorities/{authorityName}
+ /api/rm/{store_type}/{store_id}/{id}/roles/{roleId}/authorities/{authorityName}
argument
user
required
diff --git a/rm-server/config/alfresco/templates/webscripts/org/alfresco/repository/groups/rm-children.delete.json.ftl b/rm-server/config/alfresco/templates/webscripts/org/alfresco/repository/roles/rm-authorities.delete.json.ftl
similarity index 100%
rename from rm-server/config/alfresco/templates/webscripts/org/alfresco/repository/groups/rm-children.delete.json.ftl
rename to rm-server/config/alfresco/templates/webscripts/org/alfresco/repository/roles/rm-authorities.delete.json.ftl
diff --git a/rm-server/config/alfresco/templates/webscripts/org/alfresco/repository/groups/rm-children.post.desc.xml b/rm-server/config/alfresco/templates/webscripts/org/alfresco/repository/roles/rm-authorities.post.desc.xml
similarity index 63%
rename from rm-server/config/alfresco/templates/webscripts/org/alfresco/repository/groups/rm-children.post.desc.xml
rename to rm-server/config/alfresco/templates/webscripts/org/alfresco/repository/roles/rm-authorities.post.desc.xml
index 7ddf219242..75ee4da9dc 100644
--- a/rm-server/config/alfresco/templates/webscripts/org/alfresco/repository/groups/rm-children.post.desc.xml
+++ b/rm-server/config/alfresco/templates/webscripts/org/alfresco/repository/roles/rm-authorities.post.desc.xml
@@ -4,8 +4,8 @@
Adds a group or a user to a role.
]]>
- /api/rm/role/{roleId}/children/{authorityName}
- /api/rm/{store_type}/{store_id}/{id}/role/{roleId}/children/{authorityName}
+ /api/rm/roles/{roleId}/authorities/{authorityName}
+ /api/rm/{store_type}/{store_id}/{id}/roles/{roleId}/authorities/{authorityName}
argument
user
required
diff --git a/rm-server/config/alfresco/templates/webscripts/org/alfresco/repository/groups/rm-children.post.json.ftl b/rm-server/config/alfresco/templates/webscripts/org/alfresco/repository/roles/rm-authorities.post.json.ftl
similarity index 100%
rename from rm-server/config/alfresco/templates/webscripts/org/alfresco/repository/groups/rm-children.post.json.ftl
rename to rm-server/config/alfresco/templates/webscripts/org/alfresco/repository/roles/rm-authorities.post.json.ftl
diff --git a/rm-server/source/java/org/alfresco/repo/web/scripts/groups/RmChildrenAbstract.java b/rm-server/source/java/org/alfresco/repo/web/scripts/roles/AbstractRmAuthorities.java
similarity index 93%
rename from rm-server/source/java/org/alfresco/repo/web/scripts/groups/RmChildrenAbstract.java
rename to rm-server/source/java/org/alfresco/repo/web/scripts/roles/AbstractRmAuthorities.java
index f1b594aae0..d438c1ff9a 100644
--- a/rm-server/source/java/org/alfresco/repo/web/scripts/groups/RmChildrenAbstract.java
+++ b/rm-server/source/java/org/alfresco/repo/web/scripts/roles/AbstractRmAuthorities.java
@@ -16,7 +16,7 @@
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see .
*/
-package org.alfresco.repo.web.scripts.groups;
+package org.alfresco.repo.web.scripts.roles;
import java.util.Map;
@@ -34,7 +34,7 @@ import org.tuckey.web.filters.urlrewrite.utils.StringUtils;
* @author Tuna Aksoy
* @since 2.1
*/
-public class RmChildrenAbstract extends RoleDeclarativeWebScript
+public class AbstractRmAuthorities extends RoleDeclarativeWebScript
{
/** Constants for the url parameters */
private static final String ROLE_ID = "roleId";
diff --git a/rm-server/source/java/org/alfresco/repo/web/scripts/groups/RmChildrenDelete.java b/rm-server/source/java/org/alfresco/repo/web/scripts/roles/RmAuthoritiesDelete.java
similarity index 91%
rename from rm-server/source/java/org/alfresco/repo/web/scripts/groups/RmChildrenDelete.java
rename to rm-server/source/java/org/alfresco/repo/web/scripts/roles/RmAuthoritiesDelete.java
index 597520e7e5..99f0d358a6 100644
--- a/rm-server/source/java/org/alfresco/repo/web/scripts/groups/RmChildrenDelete.java
+++ b/rm-server/source/java/org/alfresco/repo/web/scripts/roles/RmAuthoritiesDelete.java
@@ -16,7 +16,7 @@
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see .
*/
-package org.alfresco.repo.web.scripts.groups;
+package org.alfresco.repo.web.scripts.roles;
import java.util.HashMap;
import java.util.Map;
@@ -32,7 +32,7 @@ import org.springframework.extensions.webscripts.WebScriptRequest;
* @author Tuna Aksoy
* @since 2.1
*/
-public class RmChildrenDelete extends RmChildrenAbstract
+public class RmAuthoritiesDelete extends AbstractRmAuthorities
{
/**
* @see org.springframework.extensions.webscripts.DeclarativeWebScript#executeImpl(org.springframework.extensions.webscripts.WebScriptRequest,
diff --git a/rm-server/source/java/org/alfresco/repo/web/scripts/groups/RmChildrenPost.java b/rm-server/source/java/org/alfresco/repo/web/scripts/roles/RmAuthoritiesPost.java
similarity index 91%
rename from rm-server/source/java/org/alfresco/repo/web/scripts/groups/RmChildrenPost.java
rename to rm-server/source/java/org/alfresco/repo/web/scripts/roles/RmAuthoritiesPost.java
index ca20dd7c1a..3d7bd644f3 100644
--- a/rm-server/source/java/org/alfresco/repo/web/scripts/groups/RmChildrenPost.java
+++ b/rm-server/source/java/org/alfresco/repo/web/scripts/roles/RmAuthoritiesPost.java
@@ -16,7 +16,7 @@
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see .
*/
-package org.alfresco.repo.web.scripts.groups;
+package org.alfresco.repo.web.scripts.roles;
import java.util.HashMap;
import java.util.Map;
@@ -32,7 +32,7 @@ import org.springframework.extensions.webscripts.WebScriptRequest;
* @author Tuna Aksoy
* @since 2.1
*/
-public class RmChildrenPost extends RmChildrenAbstract
+public class RmAuthoritiesPost extends AbstractRmAuthorities
{
/**
* @see org.springframework.extensions.webscripts.DeclarativeWebScript#executeImpl(org.springframework.extensions.webscripts.WebScriptRequest,
diff --git a/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/WebScriptTestSuite.java b/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/WebScriptTestSuite.java
index a7526b62f0..cb3163fbc5 100644
--- a/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/WebScriptTestSuite.java
+++ b/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/WebScriptTestSuite.java
@@ -27,7 +27,7 @@ import org.alfresco.module.org_alfresco_module_rm.test.webscript.EmailMapScriptT
import org.alfresco.module.org_alfresco_module_rm.test.webscript.EventRestApiTest;
import org.alfresco.module.org_alfresco_module_rm.test.webscript.RMCaveatConfigScriptTest;
import org.alfresco.module.org_alfresco_module_rm.test.webscript.RMConstraintScriptTest;
-import org.alfresco.module.org_alfresco_module_rm.test.webscript.RmChildrenRestApiTest;
+import org.alfresco.module.org_alfresco_module_rm.test.webscript.RmAuthoritiesRestApiTest;
import org.alfresco.module.org_alfresco_module_rm.test.webscript.RmClassesRestApiTest;
import org.alfresco.module.org_alfresco_module_rm.test.webscript.RmPropertiesRestApiTest;
import org.alfresco.module.org_alfresco_module_rm.test.webscript.RoleRestApiTest;
@@ -56,7 +56,7 @@ import org.junit.runners.Suite.SuiteClasses;
ActionDefinitionsRestApiTest.class,
RmClassesRestApiTest.class,
RmPropertiesRestApiTest.class,
- RmChildrenRestApiTest.class
+ RmAuthoritiesRestApiTest.class
})
public class WebScriptTestSuite
{
diff --git a/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/util/BaseRMTestCase.java b/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/util/BaseRMTestCase.java
index 4dc7fe4839..dc4efdd9a8 100644
--- a/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/util/BaseRMTestCase.java
+++ b/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/util/BaseRMTestCase.java
@@ -469,7 +469,7 @@ public abstract class BaseRMTestCase extends RetryingTransactionHelperTestCase
createPerson(AuthenticationUtil.getSystemUserName(), false);
}
assertTrue("No person object for System available.", authDao.authorityExists(AuthenticationUtil.getSystemUserName()));
-
+
storeRef = StoreRef.STORE_REF_WORKSPACE_SPACESSTORE;
rootNodeRef = nodeService.getRootNode(storeRef);
@@ -486,13 +486,13 @@ public abstract class BaseRMTestCase extends RetryingTransactionHelperTestCase
assertNotNull("Could not create base folder", folder);
siteInfo = siteService.createSite(
- "rm-site-dashboard",
- SITE_ID,
- "title",
- "descrition",
- SiteVisibility.PUBLIC,
- RecordsManagementModel.TYPE_RM_SITE);
-
+ "rm-site-dashboard",
+ SITE_ID,
+ "title",
+ "descrition",
+ SiteVisibility.PUBLIC,
+ RecordsManagementModel.TYPE_RM_SITE);
+
filePlan = siteService.getContainer(SITE_ID, RmSiteType.COMPONENT_DOCUMENT_LIBRARY);
assertNotNull("Site document library container was not created successfully.", filePlan);
@@ -544,23 +544,23 @@ public abstract class BaseRMTestCase extends RetryingTransactionHelperTestCase
rmUserName = GUID.generate();
rmUserPerson = createPerson(rmUserName);
- filePlanRoleService.assignRoleToAuthority(filePlan, "User", rmUserName);
+ filePlanRoleService.assignRoleToAuthority(filePlan, FilePlanRoleService.ROLE_USER, rmUserName);
powerUserName = GUID.generate();
powerUserPerson = createPerson(powerUserName);
- filePlanRoleService.assignRoleToAuthority(filePlan, "PowerUser", powerUserName);
+ filePlanRoleService.assignRoleToAuthority(filePlan, FilePlanRoleService.ROLE_POWER_USER, powerUserName);
securityOfficerName = GUID.generate();
securityOfficerPerson = createPerson(securityOfficerName);
- filePlanRoleService.assignRoleToAuthority(filePlan, "SecurityOfficer", securityOfficerName);
+ filePlanRoleService.assignRoleToAuthority(filePlan, FilePlanRoleService.ROLE_SECURITY_OFFICER, securityOfficerName);
recordsManagerName = GUID.generate();
recordsManagerPerson = createPerson(recordsManagerName);
- filePlanRoleService.assignRoleToAuthority(filePlan, "RecordsManager", recordsManagerName);
+ filePlanRoleService.assignRoleToAuthority(filePlan, FilePlanRoleService.ROLE_RECORDS_MANAGER, recordsManagerName);
rmAdminName = GUID.generate();
rmAdminPerson = createPerson(rmAdminName);
- filePlanRoleService.assignRoleToAuthority(filePlan, "Administrator", rmAdminName);
+ filePlanRoleService.assignRoleToAuthority(filePlan, FilePlanRoleService.ROLE_ADMIN, rmAdminName);
testUsers = new String[]
{
@@ -600,7 +600,7 @@ public abstract class BaseRMTestCase extends RetryingTransactionHelperTestCase
properties.put(ContentModel.PROP_USERNAME, userName);
return personService.createPerson(properties);
}
-
+
protected NodeRef createPerson(String userName)
{
return createPerson(userName, true);
diff --git a/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/webscript/RmChildrenRestApiTest.java b/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/webscript/RmAuthoritiesRestApiTest.java
similarity index 87%
rename from rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/webscript/RmChildrenRestApiTest.java
rename to rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/webscript/RmAuthoritiesRestApiTest.java
index d8f1f49a46..c9ca90e951 100644
--- a/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/webscript/RmChildrenRestApiTest.java
+++ b/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/webscript/RmAuthoritiesRestApiTest.java
@@ -26,6 +26,7 @@ import org.alfresco.module.org_alfresco_module_rm.role.FilePlanRoleService;
import org.alfresco.module.org_alfresco_module_rm.test.util.BaseRMWebScriptTestCase;
import org.alfresco.service.cmr.repository.StoreRef;
import org.alfresco.service.cmr.security.AuthorityType;
+import org.alfresco.util.GUID;
import org.json.JSONException;
import org.json.JSONObject;
import org.springframework.extensions.webscripts.Status;
@@ -39,10 +40,10 @@ import org.springframework.extensions.webscripts.TestWebScriptServer.Response;
* @author Tuna Aksoy
* @since 2.1
*/
-public class RmChildrenRestApiTest extends BaseRMWebScriptTestCase
+public class RmAuthoritiesRestApiTest extends BaseRMWebScriptTestCase
{
/** URL for the REST APIs */
- private static final String RM_CHILDREN_URL = "/api/rm/%s/role/%s/children/%s";
+ private static final String RM_CHILDREN_URL = "/api/rm/%s/roles/%s/authorities/%s";
/** Constant for the content type */
private static final String APPLICATION_JSON = "application/json";
@@ -56,9 +57,10 @@ public class RmChildrenRestApiTest extends BaseRMWebScriptTestCase
public void testRmAddRemoveUser() throws IOException, JSONException
{
// Create a test user
- String userName = "geshjsjuasftg";
+ String userName = GUID.generate();
createUser(userName);
+ // Get the name
String name = authorityService.getName(AuthorityType.USER, userName);
// Check if the user is already assigned to the role
@@ -66,7 +68,7 @@ public class RmChildrenRestApiTest extends BaseRMWebScriptTestCase
// Format url and send request
String url = getFormattedUrlString(name);
- Response response = postRequest(url);
+ Response response = postRequestSuccess(url);
// Check the content from the response
checkContent(response);
@@ -75,7 +77,7 @@ public class RmChildrenRestApiTest extends BaseRMWebScriptTestCase
assertTrue(getUsersAssignedToRole().contains(name));
// Remove the user from the role
- response = deleteRequest(url);
+ response = deleteRequestSuccess(url);
// Check the content from the response
checkContent(response);
@@ -96,9 +98,10 @@ public class RmChildrenRestApiTest extends BaseRMWebScriptTestCase
public void testRmAddRemoveGroup() throws IOException, JSONException
{
// Create a group
- String groupName = "arhweurawy";
+ String groupName = GUID.generate();
createGroup(groupName);
+ // Get the name
String name = authorityService.getName(AuthorityType.GROUP, groupName);
// Check if the group is already assigned to the role
@@ -106,7 +109,7 @@ public class RmChildrenRestApiTest extends BaseRMWebScriptTestCase
// Format url and send request
String url = getFormattedUrlString(name);
- Response response = postRequest(url);
+ Response response = postRequestSuccess(url);
// Check the content from the response
checkContent(response);
@@ -115,7 +118,7 @@ public class RmChildrenRestApiTest extends BaseRMWebScriptTestCase
assertTrue(getGroupsAssignedToRole().contains(name));
// Remove the group from the role
- response = deleteRequest(url);
+ response = deleteRequestSuccess(url);
// Check the content from the response
checkContent(response);
@@ -124,7 +127,7 @@ public class RmChildrenRestApiTest extends BaseRMWebScriptTestCase
assertFalse(getGroupsAssignedToRole().contains(name));
// Delete the group
- deleteGroup(groupName);
+ deleteGroup(name);
}
/**
@@ -159,7 +162,7 @@ public class RmChildrenRestApiTest extends BaseRMWebScriptTestCase
String storeId = storeRef.getIdentifier();
String id = filePlan.getId();
- StringBuffer sb = new StringBuffer();
+ StringBuffer sb = new StringBuffer(32);
sb.append(storeType);
sb.append("/");
sb.append(storeId);
@@ -188,7 +191,7 @@ public class RmChildrenRestApiTest extends BaseRMWebScriptTestCase
* @throws UnsupportedEncodingException
* @throws IOException
*/
- private Response postRequest(String url) throws UnsupportedEncodingException, IOException
+ private Response postRequestSuccess(String url) throws UnsupportedEncodingException, IOException
{
return sendRequest(new PostRequest(url, new JSONObject().toString(), APPLICATION_JSON), Status.STATUS_OK);
}
@@ -200,7 +203,7 @@ public class RmChildrenRestApiTest extends BaseRMWebScriptTestCase
* @return Returns the response from the server
* @throws IOException
*/
- private Response deleteRequest(String url) throws IOException
+ private Response deleteRequestSuccess(String url) throws IOException
{
return sendRequest(new DeleteRequest(url), Status.STATUS_OK);
}