diff options
author | Julien Lancelot <julien.lancelot@sonarsource.com> | 2019-12-02 16:45:24 +0100 |
---|---|---|
committer | SonarTech <sonartech@sonarsource.com> | 2019-12-02 20:53:08 +0100 |
commit | 40616575d3a4ca811c33b74f7fcb8d16ec7d7409 (patch) | |
tree | 924f3a3ed10daf097b12aa0e1d67a4869882b015 /server/sonar-server | |
parent | 0639d72ec0e5c72c2a1fb2f7b8c4fd1cca68ebcb (diff) | |
download | sonarqube-40616575d3a4ca811c33b74f7fcb8d16ec7d7409.tar.gz sonarqube-40616575d3a4ca811c33b74f7fcb8d16ec7d7409.zip |
SONAR-12666 Fix groups sorting when high number of groups
Diffstat (limited to 'server/sonar-server')
4 files changed, 10 insertions, 19 deletions
diff --git a/server/sonar-server/src/main/java/org/sonar/server/permission/ws/GroupsAction.java b/server/sonar-server/src/main/java/org/sonar/server/permission/ws/GroupsAction.java index 71b525b6423..b777d480354 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/permission/ws/GroupsAction.java +++ b/server/sonar-server/src/main/java/org/sonar/server/permission/ws/GroupsAction.java @@ -123,11 +123,7 @@ public class GroupsAction implements PermissionsWsAction { .setPageIndex(request.mandatoryParamAsInt(Param.PAGE)) .setPageSize(request.mandatoryParamAsInt(Param.PAGE_SIZE)) .setSearchQuery(textQuery); - if (project.isPresent()) { - permissionQuery.setComponentUuid(project.get().getUuid()); - permissionQuery.setComponentId(project.get().getId()); - } - + project.ifPresent(projectId -> permissionQuery.setComponent(projectId.getUuid(), projectId.getId())); return permissionQuery.build(); } diff --git a/server/sonar-server/src/main/java/org/sonar/server/permission/ws/UsersAction.java b/server/sonar-server/src/main/java/org/sonar/server/permission/ws/UsersAction.java index 8f1a6e7003b..52336711c80 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/permission/ws/UsersAction.java +++ b/server/sonar-server/src/main/java/org/sonar/server/permission/ws/UsersAction.java @@ -131,10 +131,7 @@ public class UsersAction implements PermissionsWsAction { .setPageIndex(request.mandatoryParamAsInt(Param.PAGE)) .setPageSize(request.mandatoryParamAsInt(Param.PAGE_SIZE)) .setSearchQuery(textQuery); - project.ifPresent(projectId -> { - permissionQuery.setComponentUuid(projectId.getUuid()); - permissionQuery.setComponentId(projectId.getId()); - }); + project.ifPresent(projectId -> permissionQuery.setComponent(projectId.getUuid(), projectId.getId())); if (permission != null) { if (project.isPresent()) { requestValidator.validateProjectPermission(permission); @@ -182,7 +179,7 @@ public class UsersAction implements PermissionsWsAction { PermissionQuery.Builder queryBuilder = PermissionQuery.builder() .setOrganizationUuid(org.getUuid()) .withAtLeastOnePermission(); - project.ifPresent(p -> queryBuilder.setComponentUuid(p.getUuid())); + project.ifPresent(p -> queryBuilder.setComponent(p.getUuid(), p.getId())); return dbClient.userPermissionDao().selectUserPermissionsByQuery(dbSession, queryBuilder.build(), userIds); } } diff --git a/server/sonar-server/src/test/java/org/sonar/server/permission/ws/template/ApplyTemplateActionTest.java b/server/sonar-server/src/test/java/org/sonar/server/permission/ws/template/ApplyTemplateActionTest.java index 4248fc5e153..be717f877e2 100644 --- a/server/sonar-server/src/test/java/org/sonar/server/permission/ws/template/ApplyTemplateActionTest.java +++ b/server/sonar-server/src/test/java/org/sonar/server/permission/ws/template/ApplyTemplateActionTest.java @@ -37,7 +37,6 @@ import org.sonar.server.exceptions.NotFoundException; import org.sonar.server.permission.PermissionTemplateService; import org.sonar.server.permission.ws.BasePermissionWsTest; import org.sonar.server.ws.TestRequest; -import org.sonar.server.ws.TestResponse; import static org.assertj.core.api.Assertions.assertThat; import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; @@ -59,7 +58,7 @@ public class ApplyTemplateActionTest extends BasePermissionWsTest<ApplyTemplateA private PermissionTemplateDto template2; private PermissionTemplateService permissionTemplateService = new PermissionTemplateService(db.getDbClient(), - new TestProjectIndexers(), userSession, defaultTemplatesResolver); + new TestProjectIndexers(), userSession, defaultTemplatesResolver); @Override protected ApplyTemplateAction buildWsAction() { @@ -191,7 +190,7 @@ public class ApplyTemplateActionTest extends BasePermissionWsTest<ApplyTemplateA assertThat(selectProjectPermissionUsers(project, UserRole.ISSUE_ADMIN)).containsExactly(user2.getId()); } - private TestResponse newRequest(@Nullable String templateUuid, @Nullable String projectUuid, @Nullable String projectKey) { + private void newRequest(@Nullable String templateUuid, @Nullable String projectUuid, @Nullable String projectKey) { TestRequest request = newRequest(); if (templateUuid != null) { request.setParam(PARAM_TEMPLATE_ID, templateUuid); @@ -202,8 +201,7 @@ public class ApplyTemplateActionTest extends BasePermissionWsTest<ApplyTemplateA if (projectKey != null) { request.setParam(PARAM_PROJECT_KEY, projectKey); } - - return request.execute(); + request.execute(); } private void addUserToTemplate(UserDto user, PermissionTemplateDto permissionTemplate, String permission) { @@ -217,12 +215,12 @@ public class ApplyTemplateActionTest extends BasePermissionWsTest<ApplyTemplateA } private List<String> selectProjectPermissionGroups(ComponentDto project, String permission) { - PermissionQuery query = PermissionQuery.builder().setOrganizationUuid(project.getOrganizationUuid()).setPermission(permission).setComponentUuid(project.uuid()).build(); + PermissionQuery query = PermissionQuery.builder().setOrganizationUuid(project.getOrganizationUuid()).setPermission(permission).setComponent(project).build(); return db.getDbClient().groupPermissionDao().selectGroupNamesByQuery(db.getSession(), query); } private List<Integer> selectProjectPermissionUsers(ComponentDto project, String permission) { - PermissionQuery query = PermissionQuery.builder().setOrganizationUuid(project.getOrganizationUuid()).setPermission(permission).setComponentUuid(project.uuid()).build(); + PermissionQuery query = PermissionQuery.builder().setOrganizationUuid(project.getOrganizationUuid()).setPermission(permission).setComponent(project).build(); return db.getDbClient().userPermissionDao().selectUserIdsByQuery(db.getSession(), query); } } diff --git a/server/sonar-server/src/test/java/org/sonar/server/permission/ws/template/BulkApplyTemplateActionTest.java b/server/sonar-server/src/test/java/org/sonar/server/permission/ws/template/BulkApplyTemplateActionTest.java index ca9e451a47e..8aad43f27a5 100644 --- a/server/sonar-server/src/test/java/org/sonar/server/permission/ws/template/BulkApplyTemplateActionTest.java +++ b/server/sonar-server/src/test/java/org/sonar/server/permission/ws/template/BulkApplyTemplateActionTest.java @@ -353,12 +353,12 @@ public class BulkApplyTemplateActionTest extends BasePermissionWsTest<BulkApplyT } private List<String> selectProjectPermissionGroups(ComponentDto project, String permission) { - PermissionQuery query = PermissionQuery.builder().setOrganizationUuid(project.getOrganizationUuid()).setPermission(permission).setComponentUuid(project.uuid()).build(); + PermissionQuery query = PermissionQuery.builder().setOrganizationUuid(project.getOrganizationUuid()).setPermission(permission).setComponent(project).build(); return db.getDbClient().groupPermissionDao().selectGroupNamesByQuery(db.getSession(), query); } private List<Integer> selectProjectPermissionUsers(ComponentDto project, String permission) { - PermissionQuery query = PermissionQuery.builder().setOrganizationUuid(project.getOrganizationUuid()).setPermission(permission).setComponentUuid(project.uuid()).build(); + PermissionQuery query = PermissionQuery.builder().setOrganizationUuid(project.getOrganizationUuid()).setPermission(permission).setComponent(project).build(); return db.getDbClient().userPermissionDao().selectUserIdsByQuery(db.getSession(), query); } } |