From b493fce1f2d13e81aa76b3ae2f450801cc079b84 Mon Sep 17 00:00:00 2001 From: Julien Lancelot Date: Wed, 14 Oct 2020 10:46:36 +0200 Subject: [PATCH] SONAR-13936 Rename OrganizationPermission to GlobalPermission --- .../core/permission/GlobalPermissions.java | 3 ++- .../db/organization/OrganizationHelper.java | 4 ++-- .../sonar/db/permission/AuthorizationDao.java | 4 ++-- ...nPermission.java => GlobalPermission.java} | 8 +++---- .../db/permission/AuthorizationDaoTest.java | 6 +++--- ...ionTest.java => GlobalPermissionTest.java} | 6 +++--- .../db/permission/GroupPermissionDaoTest.java | 6 +++--- .../db/permission/UserPermissionDaoTest.java | 12 +++++------ .../org/sonar/db/purge/PurgeCommandsTest.java | 4 ++-- .../java/org/sonar/db/user/RoleDaoTest.java | 2 +- .../db/permission/PermissionsTestHelper.java | 2 +- .../java/org/sonar/db/user/UserDbTester.java | 20 +++++++++--------- .../authentication/SafeModeUserSession.java | 4 ++-- .../server/organization/MemberUpdater.java | 2 +- .../organization/OrganizationUpdaterImpl.java | 6 +++--- .../server/permission/PermissionService.java | 4 ++-- .../permission/PermissionServiceImpl.java | 16 +++++++------- .../server/user/AbstractUserSession.java | 8 +++---- .../org/sonar/server/user/DoPrivileged.java | 6 +++--- .../sonar/server/user/ServerUserSession.java | 12 +++++------ .../server/user/ThreadLocalUserSession.java | 6 +++--- .../org/sonar/server/user/UserSession.java | 8 +++---- .../SafeModeUserSessionTest.java | 4 ++-- .../permission/PermissionServiceImplTest.java | 4 ++-- .../server/user/ServerUserSessionTest.java | 6 +++--- .../tester/AbstractMockUserSession.java | 8 +++---- .../sonar/server/tester/UserSessionRule.java | 8 +++---- .../server/user/TestUserSessionFactory.java | 4 ++-- .../startup/RegisterPermissionTemplates.java | 6 +++--- .../RegisterPermissionTemplatesTest.java | 6 +++--- .../sonar/server/batch/ProjectDataLoader.java | 4 ++-- .../sonar/server/branch/pr/ws/ListAction.java | 4 ++-- .../sonar/server/branch/ws/ListAction.java | 2 +- .../server/ce/queue/ReportSubmitter.java | 6 +++--- .../org/sonar/server/ce/ws/TaskAction.java | 6 +++--- .../server/newcodeperiod/ws/ShowAction.java | 2 +- .../organization/ws/AddMemberAction.java | 8 +++---- .../server/organization/ws/DeleteAction.java | 4 ++-- .../organization/ws/EnableSupportAction.java | 4 ++-- .../organization/ws/RemoveMemberAction.java | 6 +++--- .../server/organization/ws/SearchAction.java | 4 ++-- .../organization/ws/SearchMembersAction.java | 2 +- .../server/organization/ws/UpdateAction.java | 2 +- .../server/permission/PermissionChange.java | 4 ++-- .../PermissionPrivilegeChecker.java | 6 +++--- .../permission/PermissionTemplateService.java | 2 +- .../ws/SearchGlobalPermissionsAction.java | 4 ++-- .../server/project/ws/BulkDeleteAction.java | 4 ++-- .../sonar/server/project/ws/CreateAction.java | 2 +- .../sonar/server/project/ws/DeleteAction.java | 4 ++-- .../sonar/server/project/ws/SearchAction.java | 4 ++-- .../server/qualitygate/ws/CopyAction.java | 2 +- .../server/qualitygate/ws/CreateAction.java | 4 ++-- .../qualitygate/ws/QualityGatesWsSupport.java | 2 +- .../qualitygate/ws/SetAsDefaultAction.java | 2 +- .../server/qualityprofile/ws/CopyAction.java | 2 +- .../qualityprofile/ws/CreateAction.java | 2 +- .../qualityprofile/ws/QProfileWsSupport.java | 6 +++--- .../qualityprofile/ws/RestoreAction.java | 2 +- .../qualityprofile/ws/SearchAction.java | 2 +- .../qualityprofile/ws/SetDefaultAction.java | 2 +- .../org/sonar/server/rule/ws/AppAction.java | 4 ++-- .../sonar/server/rule/ws/RuleWsSupport.java | 2 +- .../server/setting/ws/SettingsWsSupport.java | 8 +++---- .../sonar/server/setting/ws/ValuesAction.java | 4 ++-- .../sonar/server/ui/ws/ComponentAction.java | 12 +++++------ .../server/ui/ws/OrganizationAction.java | 2 +- .../sonar/server/user/ws/CurrentAction.java | 4 ++-- .../server/user/ws/DeactivateAction.java | 2 +- .../sonar/server/user/ws/GroupsAction.java | 4 ++-- .../server/usergroups/ws/AddUserAction.java | 2 +- .../server/usergroups/ws/CreateAction.java | 2 +- .../server/usergroups/ws/DeleteAction.java | 6 +++--- .../usergroups/ws/RemoveUserAction.java | 6 +++--- .../server/usergroups/ws/SearchAction.java | 2 +- .../server/usergroups/ws/UpdateAction.java | 2 +- .../server/usergroups/ws/UsersAction.java | 4 ++-- .../server/webhook/ws/WebhookSupport.java | 2 +- .../server/branch/pr/ws/ListActionTest.java | 4 ++-- .../ce/queue/BranchReportSubmitterTest.java | 4 ++-- .../server/ce/queue/ReportSubmitterTest.java | 20 +++++++++--------- .../sonar/server/ce/ws/TaskActionTest.java | 6 +++--- .../GroupPermissionChangerTest.java | 14 ++++++------- .../PermissionTemplateServiceTest.java | 6 +++--- .../permission/UserPermissionChangerTest.java | 12 +++++------ .../permission/ws/AddGroupActionTest.java | 2 +- .../permission/ws/AddUserActionTest.java | 2 +- .../permission/ws/BasePermissionWsTest.java | 2 +- .../permission/ws/GroupsActionTest.java | 4 ++-- .../permission/ws/RemoveGroupActionTest.java | 4 ++-- .../permission/ws/RemoveUserActionTest.java | 6 +++--- .../ws/SearchGlobalPermissionsActionTest.java | 2 +- .../SearchProjectPermissionsActionTest.java | 2 +- .../server/permission/ws/UsersActionTest.java | 10 ++++----- ...AddProjectCreatorToTemplateActionTest.java | 2 +- .../template/AddUserToTemplateActionTest.java | 2 +- .../ws/template/ApplyTemplateActionTest.java | 2 +- .../ws/template/CreateTemplateActionTest.java | 2 +- .../ws/template/DeleteTemplateActionTest.java | 2 +- .../RemoveGroupFromTemplateActionTest.java | 2 +- .../template/SearchTemplatesActionTest.java | 2 +- .../ws/template/TemplateUsersActionTest.java | 2 +- .../ws/template/UpdateTemplateActionTest.java | 2 +- .../project/ws/BulkDeleteActionTest.java | 2 +- .../server/project/ws/CreateActionTest.java | 2 +- .../server/project/ws/DeleteActionTest.java | 2 +- .../server/project/ws/SearchActionTest.java | 4 ++-- .../ws/UpdateVisibilityActionTest.java | 10 ++++----- .../server/qualitygate/ws/CopyActionTest.java | 4 ++-- .../qualitygate/ws/CreateActionTest.java | 2 +- .../ws/CreateConditionActionTest.java | 2 +- .../ws/DeleteConditionActionTest.java | 4 ++-- .../qualitygate/ws/DeselectActionTest.java | 4 ++-- .../qualitygate/ws/DestroyActionTest.java | 4 ++-- .../server/qualitygate/ws/ListActionTest.java | 4 ++-- .../qualitygate/ws/RenameActionTest.java | 4 ++-- .../qualitygate/ws/SearchActionTest.java | 2 +- .../qualitygate/ws/SelectActionTest.java | 2 +- .../ws/SetAsDefaultActionTest.java | 2 +- .../server/qualitygate/ws/ShowActionTest.java | 4 ++-- .../ws/UpdateConditionActionTest.java | 2 +- .../ws/ActivateRuleActionTest.java | 9 ++++---- .../ws/ActivateRulesActionTest.java | 2 +- .../qualityprofile/ws/AddGroupActionTest.java | 20 +++++++++--------- .../ws/AddProjectActionTest.java | 2 +- .../qualityprofile/ws/AddUserActionTest.java | 20 +++++++++--------- .../ws/ChangeParentActionTest.java | 4 +--- .../qualityprofile/ws/CopyActionTest.java | 9 ++++---- .../qualityprofile/ws/CreateActionTest.java | 4 ++-- .../ws/DeactivateRuleActionTest.java | 9 ++++---- .../ws/DeactivateRulesActionTest.java | 4 ++-- .../qualityprofile/ws/DeleteActionTest.java | 2 +- .../ws/RemoveGroupActionTest.java | 21 +++++++++---------- .../ws/RemoveProjectActionTest.java | 2 +- .../ws/RemoveUserActionTest.java | 20 +++++++++--------- .../qualityprofile/ws/RenameActionTest.java | 4 ++-- .../qualityprofile/ws/RestoreActionTest.java | 2 +- .../qualityprofile/ws/SearchActionTest.java | 4 ++-- .../ws/SearchGroupsActionTest.java | 11 +++++----- .../ws/SearchUsersActionTest.java | 10 ++++----- .../ws/SetDefaultActionTest.java | 2 +- .../sonar/server/rule/ws/AppActionTest.java | 6 +++--- .../server/rule/ws/CreateActionTest.java | 2 +- .../server/rule/ws/DeleteActionTest.java | 2 +- .../server/rule/ws/UpdateActionTest.java | 2 +- .../setting/ws/ListDefinitionsActionTest.java | 4 ++-- .../server/setting/ws/ValuesActionTest.java | 8 +++---- .../server/ui/ws/ComponentActionTest.java | 12 +++++------ .../server/ui/ws/OrganizationActionTest.java | 4 ++-- .../server/user/ws/CurrentActionTest.java | 6 +++--- .../server/user/ws/DeactivateActionTest.java | 6 +++--- .../server/user/ws/GroupsActionTest.java | 2 +- .../usergroups/ws/AddUserActionTest.java | 2 +- .../usergroups/ws/CreateActionTest.java | 2 +- .../usergroups/ws/DeleteActionTest.java | 2 +- .../usergroups/ws/RemoveUserActionTest.java | 2 +- .../usergroups/ws/SearchActionTest.java | 4 +--- .../usergroups/ws/UpdateActionTest.java | 2 +- .../server/usergroups/ws/UsersActionTest.java | 3 +-- .../server/webhook/ws/CreateActionTest.java | 2 +- .../server/webhook/ws/DeleteActionTest.java | 2 +- .../server/webhook/ws/ListActionTest.java | 2 +- .../server/webhook/ws/UpdateActionTest.java | 2 +- 163 files changed, 391 insertions(+), 400 deletions(-) rename server/sonar-db-dao/src/main/java/org/sonar/db/permission/{OrganizationPermission.java => GlobalPermission.java} (88%) rename server/sonar-db-dao/src/test/java/org/sonar/db/permission/{OrganizationPermissionTest.java => GlobalPermissionTest.java} (84%) diff --git a/server/sonar-db-dao/src/main/java/org/sonar/core/permission/GlobalPermissions.java b/server/sonar-db-dao/src/main/java/org/sonar/core/permission/GlobalPermissions.java index 9c02022fa67..a67b76e09c3 100644 --- a/server/sonar-db-dao/src/main/java/org/sonar/core/permission/GlobalPermissions.java +++ b/server/sonar-db-dao/src/main/java/org/sonar/core/permission/GlobalPermissions.java @@ -22,11 +22,12 @@ package org.sonar.core.permission; import com.google.common.base.Joiner; import com.google.common.collect.ImmutableList; import java.util.List; +import org.sonar.db.permission.GlobalPermission; /** * Holds the constants representing the various global permissions that can be assigned to users & groups * - * @deprecated replaced by enum {@link org.sonar.db.permission.OrganizationPermission} + * @deprecated replaced by enum {@link GlobalPermission} */ @Deprecated public final class GlobalPermissions { diff --git a/server/sonar-db-dao/src/main/java/org/sonar/db/organization/OrganizationHelper.java b/server/sonar-db-dao/src/main/java/org/sonar/db/organization/OrganizationHelper.java index 41ebc5c581f..342e94d40e3 100644 --- a/server/sonar-db-dao/src/main/java/org/sonar/db/organization/OrganizationHelper.java +++ b/server/sonar-db-dao/src/main/java/org/sonar/db/organization/OrganizationHelper.java @@ -23,11 +23,11 @@ import java.util.List; import java.util.stream.Collectors; import org.sonar.db.DbClient; import org.sonar.db.DbSession; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; public class OrganizationHelper { - private static final String ADMIN_PERMISSION = OrganizationPermission.ADMINISTER.getKey(); + private static final String ADMIN_PERMISSION = GlobalPermission.ADMINISTER.getKey(); private final DbClient dbClient; diff --git a/server/sonar-db-dao/src/main/java/org/sonar/db/permission/AuthorizationDao.java b/server/sonar-db-dao/src/main/java/org/sonar/db/permission/AuthorizationDao.java index 000c91b2276..37409ba7fef 100644 --- a/server/sonar-db-dao/src/main/java/org/sonar/db/permission/AuthorizationDao.java +++ b/server/sonar-db-dao/src/main/java/org/sonar/db/permission/AuthorizationDao.java @@ -29,8 +29,8 @@ import org.sonar.db.EmailSubscriberDto; import static org.sonar.db.DatabaseUtils.executeLargeInputs; import static org.sonar.db.DatabaseUtils.executeLargeInputsIntoSet; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; /** * The SQL requests used to verify authorization (the permissions diff --git a/server/sonar-db-dao/src/main/java/org/sonar/db/permission/OrganizationPermission.java b/server/sonar-db-dao/src/main/java/org/sonar/db/permission/GlobalPermission.java similarity index 88% rename from server/sonar-db-dao/src/main/java/org/sonar/db/permission/OrganizationPermission.java rename to server/sonar-db-dao/src/main/java/org/sonar/db/permission/GlobalPermission.java index 4ecd752b389..67c905f49ce 100644 --- a/server/sonar-db-dao/src/main/java/org/sonar/db/permission/OrganizationPermission.java +++ b/server/sonar-db-dao/src/main/java/org/sonar/db/permission/GlobalPermission.java @@ -19,7 +19,7 @@ */ package org.sonar.db.permission; -public enum OrganizationPermission { +public enum GlobalPermission { ADMINISTER("admin"), ADMINISTER_QUALITY_GATES("gateadmin"), @@ -35,7 +35,7 @@ public enum OrganizationPermission { private final String key; - OrganizationPermission(String key) { + GlobalPermission(String key) { this.key = key; } @@ -48,8 +48,8 @@ public enum OrganizationPermission { return key; } - public static OrganizationPermission fromKey(String key) { - for (OrganizationPermission p : values()) { + public static GlobalPermission fromKey(String key) { + for (GlobalPermission p : values()) { if (p.getKey().equals(key)) { return p; } diff --git a/server/sonar-db-dao/src/test/java/org/sonar/db/permission/AuthorizationDaoTest.java b/server/sonar-db-dao/src/test/java/org/sonar/db/permission/AuthorizationDaoTest.java index 97f6c71dbfb..cb551588b3c 100644 --- a/server/sonar-db-dao/src/test/java/org/sonar/db/permission/AuthorizationDaoTest.java +++ b/server/sonar-db-dao/src/test/java/org/sonar/db/permission/AuthorizationDaoTest.java @@ -46,9 +46,9 @@ import static com.google.common.collect.Sets.newHashSet; import static java.util.Collections.singleton; import static org.assertj.core.api.Assertions.assertThat; import static org.sonar.core.permission.GlobalPermissions.QUALITY_PROFILE_ADMIN; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; -import static org.sonar.db.permission.OrganizationPermission.PROVISION_PROJECTS; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.PROVISION_PROJECTS; public class AuthorizationDaoTest { diff --git a/server/sonar-db-dao/src/test/java/org/sonar/db/permission/OrganizationPermissionTest.java b/server/sonar-db-dao/src/test/java/org/sonar/db/permission/GlobalPermissionTest.java similarity index 84% rename from server/sonar-db-dao/src/test/java/org/sonar/db/permission/OrganizationPermissionTest.java rename to server/sonar-db-dao/src/test/java/org/sonar/db/permission/GlobalPermissionTest.java index 93a69d2386d..6a677386d2b 100644 --- a/server/sonar-db-dao/src/test/java/org/sonar/db/permission/OrganizationPermissionTest.java +++ b/server/sonar-db-dao/src/test/java/org/sonar/db/permission/GlobalPermissionTest.java @@ -23,12 +23,12 @@ import org.junit.Test; import static org.assertj.core.api.Assertions.assertThat; -public class OrganizationPermissionTest { +public class GlobalPermissionTest { @Test public void fromKey_returns_enum_with_specified_key() { - for (OrganizationPermission p : OrganizationPermission.values()) { - assertThat(OrganizationPermission.fromKey(p.getKey())).isEqualTo(p); + for (GlobalPermission p : GlobalPermission.values()) { + assertThat(GlobalPermission.fromKey(p.getKey())).isEqualTo(p); } } } diff --git a/server/sonar-db-dao/src/test/java/org/sonar/db/permission/GroupPermissionDaoTest.java b/server/sonar-db-dao/src/test/java/org/sonar/db/permission/GroupPermissionDaoTest.java index 69a89083893..72883b95728 100644 --- a/server/sonar-db-dao/src/test/java/org/sonar/db/permission/GroupPermissionDaoTest.java +++ b/server/sonar-db-dao/src/test/java/org/sonar/db/permission/GroupPermissionDaoTest.java @@ -46,9 +46,9 @@ import static org.sonar.api.web.UserRole.ADMIN; import static org.sonar.api.web.UserRole.ISSUE_ADMIN; import static org.sonar.api.web.UserRole.USER; import static org.sonar.core.permission.GlobalPermissions.SCAN_EXECUTION; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; -import static org.sonar.db.permission.OrganizationPermission.PROVISION_PROJECTS; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.PROVISION_PROJECTS; +import static org.sonar.db.permission.GlobalPermission.SCAN; import static org.sonar.db.permission.PermissionQuery.DEFAULT_PAGE_SIZE; public class GroupPermissionDaoTest { diff --git a/server/sonar-db-dao/src/test/java/org/sonar/db/permission/UserPermissionDaoTest.java b/server/sonar-db-dao/src/test/java/org/sonar/db/permission/UserPermissionDaoTest.java index 674e132cd82..b27de1c0ad7 100644 --- a/server/sonar-db-dao/src/test/java/org/sonar/db/permission/UserPermissionDaoTest.java +++ b/server/sonar-db-dao/src/test/java/org/sonar/db/permission/UserPermissionDaoTest.java @@ -50,10 +50,10 @@ import static org.sonar.core.permission.GlobalPermissions.PROVISIONING; import static org.sonar.core.permission.GlobalPermissions.QUALITY_PROFILE_ADMIN; import static org.sonar.core.permission.GlobalPermissions.SYSTEM_ADMIN; import static org.sonar.db.component.ComponentTesting.newPrivateProjectDto; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; -import static org.sonar.db.permission.OrganizationPermission.PROVISION_PROJECTS; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.PROVISION_PROJECTS; +import static org.sonar.db.permission.GlobalPermission.SCAN; import static org.sonar.db.permission.PermissionQuery.DEFAULT_PAGE_SIZE; public class UserPermissionDaoTest { @@ -654,9 +654,9 @@ public class UserPermissionDaoTest { assertThat(db.countSql(dbSession, "select count(uuid) from user_roles where component_uuid='" + project.uuid() + "'")).isEqualTo(0); } - private void assertGlobalPermissionsOfUser(UserDto user, OrganizationPermission... permissions) { + private void assertGlobalPermissionsOfUser(UserDto user, GlobalPermission... permissions) { assertThat(underTest.selectGlobalPermissionsOfUser(dbSession, user.getUuid()).stream() - .map(OrganizationPermission::fromKey)) + .map(GlobalPermission::fromKey)) .containsOnly(permissions); } diff --git a/server/sonar-db-dao/src/test/java/org/sonar/db/purge/PurgeCommandsTest.java b/server/sonar-db-dao/src/test/java/org/sonar/db/purge/PurgeCommandsTest.java index 1aa38471e32..290461b7a36 100644 --- a/server/sonar-db-dao/src/test/java/org/sonar/db/purge/PurgeCommandsTest.java +++ b/server/sonar-db-dao/src/test/java/org/sonar/db/purge/PurgeCommandsTest.java @@ -48,7 +48,7 @@ import org.sonar.db.metric.MetricDto; import org.sonar.db.newcodeperiod.NewCodePeriodType; import org.sonar.db.organization.OrganizationDto; import org.sonar.db.organization.OrganizationTesting; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.project.ProjectDto; import org.sonar.db.rule.RuleDefinitionDto; import org.sonar.db.user.GroupDto; @@ -654,7 +654,7 @@ public class PurgeCommandsTest { UserDto user = dbTester.users().insertUser(); dbTester.users().insertProjectPermissionOnUser(user, "doh", root); - dbTester.users().insertPermissionOnUser(user, OrganizationPermission.SCAN); + dbTester.users().insertPermissionOnUser(user, GlobalPermission.SCAN); assertThat(dbTester.countRowsOfTable("group_roles")).isEqualTo(root.isPrivate() ? 2 : 4); assertThat(dbTester.countRowsOfTable("user_roles")).isEqualTo(2); diff --git a/server/sonar-db-dao/src/test/java/org/sonar/db/user/RoleDaoTest.java b/server/sonar-db-dao/src/test/java/org/sonar/db/user/RoleDaoTest.java index 9825d5fe55d..83fcbae2f5a 100644 --- a/server/sonar-db-dao/src/test/java/org/sonar/db/user/RoleDaoTest.java +++ b/server/sonar-db-dao/src/test/java/org/sonar/db/user/RoleDaoTest.java @@ -32,7 +32,7 @@ import org.sonar.db.DbTester; import org.sonar.db.component.ComponentDto; import static org.assertj.core.api.Assertions.assertThat; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; public class RoleDaoTest { diff --git a/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/permission/PermissionsTestHelper.java b/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/permission/PermissionsTestHelper.java index ed07d34e577..9f305094456 100644 --- a/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/permission/PermissionsTestHelper.java +++ b/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/permission/PermissionsTestHelper.java @@ -27,7 +27,7 @@ import org.sonar.core.permission.GlobalPermissions; public class PermissionsTestHelper { public static final Set ALL_PERMISSIONS = ImmutableSet.of(UserRole.ADMIN, UserRole.CODEVIEWER, UserRole.ISSUE_ADMIN, UserRole.SECURITYHOTSPOT_ADMIN, - GlobalPermissions.SCAN_EXECUTION, UserRole.USER, OrganizationPermission.APPLICATION_CREATOR.getKey(), OrganizationPermission.PORTFOLIO_CREATOR.getKey()); + GlobalPermissions.SCAN_EXECUTION, UserRole.USER, GlobalPermission.APPLICATION_CREATOR.getKey(), GlobalPermission.PORTFOLIO_CREATOR.getKey()); private PermissionsTestHelper() { } diff --git a/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/user/UserDbTester.java b/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/user/UserDbTester.java index a916bf7de82..5b6b13f405a 100644 --- a/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/user/UserDbTester.java +++ b/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/user/UserDbTester.java @@ -35,15 +35,15 @@ import org.sonar.db.DbClient; import org.sonar.db.DbTester; import org.sonar.db.ce.CeTaskMessageType; import org.sonar.db.component.ComponentDto; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.permission.GroupPermissionDto; -import org.sonar.db.permission.OrganizationPermission; import org.sonar.db.permission.UserPermissionDto; import org.sonar.db.project.ProjectDto; import static com.google.common.base.Preconditions.checkArgument; import static java.util.Arrays.stream; import static org.apache.commons.lang.math.RandomUtils.nextLong; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.db.user.GroupTesting.newGroupDto; public class UserDbTester { @@ -205,7 +205,7 @@ public class UserDbTester { return dto; } - public GroupPermissionDto insertPermissionOnAnyone(OrganizationPermission permission) { + public GroupPermissionDto insertPermissionOnAnyone(GlobalPermission permission) { return insertPermissionOnAnyone(permission.getKey()); } @@ -219,7 +219,7 @@ public class UserDbTester { return dto; } - public GroupPermissionDto insertPermissionOnGroup(GroupDto group, OrganizationPermission permission) { + public GroupPermissionDto insertPermissionOnGroup(GroupDto group, GlobalPermission permission) { return insertPermissionOnGroup(group, permission.getKey()); } @@ -281,13 +281,13 @@ public class UserDbTester { /** * Grant permission */ - public UserPermissionDto insertPermissionOnUser(UserDto user, OrganizationPermission permission) { + public UserPermissionDto insertPermissionOnUser(UserDto user, GlobalPermission permission) { return insertPermissionOnUser(user, permission.getKey()); } /** * Grant global permission - * @deprecated use {@link #insertPermissionOnUser(UserDto, OrganizationPermission)} + * @deprecated use {@link #insertPermissionOnUser(UserDto, GlobalPermission)} */ @Deprecated public UserPermissionDto insertPermissionOnUser(UserDto user, String permission) { @@ -297,7 +297,7 @@ public class UserDbTester { return dto; } - public void deletePermissionFromUser(UserDto user, OrganizationPermission permission) { + public void deletePermissionFromUser(UserDto user, GlobalPermission permission) { db.getDbClient().userPermissionDao().deleteGlobalPermission(db.getSession(), user.getUuid(), permission.getKey()); db.commit(); } @@ -320,7 +320,7 @@ public class UserDbTester { return dto; } - public List selectPermissionsOfUser(UserDto user) { + public List selectPermissionsOfUser(UserDto user) { return toListOfOrganizationPermissions(db.getDbClient().userPermissionDao() .selectGlobalPermissionsOfUser(db.getSession(), user.getUuid())); } @@ -329,10 +329,10 @@ public class UserDbTester { return db.getDbClient().userPermissionDao().selectProjectPermissionsOfUser(db.getSession(), user.getUuid(), project.uuid()); } - private static List toListOfOrganizationPermissions(List keys) { + private static List toListOfOrganizationPermissions(List keys) { return keys .stream() - .map(OrganizationPermission::fromKey) + .map(GlobalPermission::fromKey) .collect(MoreCollectors.toList()); } diff --git a/server/sonar-webserver-auth/src/main/java/org/sonar/server/authentication/SafeModeUserSession.java b/server/sonar-webserver-auth/src/main/java/org/sonar/server/authentication/SafeModeUserSession.java index 052f82ac8f4..d1e01c20352 100644 --- a/server/sonar-webserver-auth/src/main/java/org/sonar/server/authentication/SafeModeUserSession.java +++ b/server/sonar-webserver-auth/src/main/java/org/sonar/server/authentication/SafeModeUserSession.java @@ -24,7 +24,7 @@ import java.util.Collections; import java.util.Optional; import javax.annotation.CheckForNull; import javax.annotation.concurrent.Immutable; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.user.GroupDto; import org.sonar.server.user.AbstractUserSession; @@ -32,7 +32,7 @@ import org.sonar.server.user.AbstractUserSession; public class SafeModeUserSession extends AbstractUserSession { @Override - protected boolean hasPermissionImpl(OrganizationPermission permission) { + protected boolean hasPermissionImpl(GlobalPermission permission) { return false; } diff --git a/server/sonar-webserver-auth/src/main/java/org/sonar/server/organization/MemberUpdater.java b/server/sonar-webserver-auth/src/main/java/org/sonar/server/organization/MemberUpdater.java index d46c9a47ca5..0a8350a72a2 100644 --- a/server/sonar-webserver-auth/src/main/java/org/sonar/server/organization/MemberUpdater.java +++ b/server/sonar-webserver-auth/src/main/java/org/sonar/server/organization/MemberUpdater.java @@ -42,7 +42,7 @@ import static java.util.stream.Collectors.toSet; import static org.sonar.api.CoreProperties.DEFAULT_ISSUE_ASSIGNEE; import static org.sonar.core.util.stream.MoreCollectors.toList; import static org.sonar.core.util.stream.MoreCollectors.uniqueIndex; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; public class MemberUpdater { diff --git a/server/sonar-webserver-auth/src/main/java/org/sonar/server/organization/OrganizationUpdaterImpl.java b/server/sonar-webserver-auth/src/main/java/org/sonar/server/organization/OrganizationUpdaterImpl.java index 5277ae59103..ddb59e6329e 100644 --- a/server/sonar-webserver-auth/src/main/java/org/sonar/server/organization/OrganizationUpdaterImpl.java +++ b/server/sonar-webserver-auth/src/main/java/org/sonar/server/organization/OrganizationUpdaterImpl.java @@ -33,8 +33,8 @@ import org.sonar.db.DbSession; import org.sonar.db.organization.DefaultTemplates; import org.sonar.db.organization.OrganizationDto; import org.sonar.db.organization.OrganizationMemberDto; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.permission.GroupPermissionDto; -import org.sonar.db.permission.OrganizationPermission; import org.sonar.db.permission.template.PermissionTemplateDto; import org.sonar.db.qualitygate.QualityGateDto; import org.sonar.db.qualityprofile.DefaultQProfileDto; @@ -59,7 +59,7 @@ import static org.sonar.api.web.UserRole.SECURITYHOTSPOT_ADMIN; import static org.sonar.api.web.UserRole.USER; import static org.sonar.core.util.stream.MoreCollectors.uniqueIndex; import static org.sonar.db.organization.OrganizationDto.Subscription.FREE; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.SCAN; public class OrganizationUpdaterImpl implements OrganizationUpdater { @@ -224,7 +224,7 @@ public class OrganizationUpdaterImpl implements OrganizationUpdater { return group; } - private void addPermissionToGroup(DbSession dbSession, GroupDto group, OrganizationPermission permission) { + private void addPermissionToGroup(DbSession dbSession, GroupDto group, GlobalPermission permission) { dbClient.groupPermissionDao().insert( dbSession, new GroupPermissionDto() diff --git a/server/sonar-webserver-auth/src/main/java/org/sonar/server/permission/PermissionService.java b/server/sonar-webserver-auth/src/main/java/org/sonar/server/permission/PermissionService.java index 93b5f65a82c..6f08a525cdc 100644 --- a/server/sonar-webserver-auth/src/main/java/org/sonar/server/permission/PermissionService.java +++ b/server/sonar-webserver-auth/src/main/java/org/sonar/server/permission/PermissionService.java @@ -20,11 +20,11 @@ package org.sonar.server.permission; import java.util.List; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; public interface PermissionService { - List getGlobalPermissions(); + List getGlobalPermissions(); List getAllProjectPermissions(); } diff --git a/server/sonar-webserver-auth/src/main/java/org/sonar/server/permission/PermissionServiceImpl.java b/server/sonar-webserver-auth/src/main/java/org/sonar/server/permission/PermissionServiceImpl.java index 9f5b72da99b..a827319e48e 100644 --- a/server/sonar-webserver-auth/src/main/java/org/sonar/server/permission/PermissionServiceImpl.java +++ b/server/sonar-webserver-auth/src/main/java/org/sonar/server/permission/PermissionServiceImpl.java @@ -25,7 +25,7 @@ import javax.annotation.concurrent.Immutable; import org.sonar.api.resources.Qualifiers; import org.sonar.api.resources.ResourceTypes; import org.sonar.api.web.UserRole; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import static java.util.stream.Collectors.toList; @@ -35,19 +35,19 @@ public class PermissionServiceImpl implements PermissionService { private static final List ALL_PROJECT_PERMISSIONS = ImmutableList.of( UserRole.ADMIN, UserRole.CODEVIEWER, UserRole.ISSUE_ADMIN, UserRole.SECURITYHOTSPOT_ADMIN, UserRole.SCAN, UserRole.USER); - private static final List ALL_GLOBAL_PERMISSIONS = ImmutableList.copyOf(OrganizationPermission.values()); + private static final List ALL_GLOBAL_PERMISSIONS = ImmutableList.copyOf(GlobalPermission.values()); - private final List globalPermissions; + private final List globalPermissions; private final List projectPermissions; public PermissionServiceImpl(ResourceTypes resourceTypes) { globalPermissions = ImmutableList.copyOf(ALL_GLOBAL_PERMISSIONS.stream() - .filter(s -> !s.equals(OrganizationPermission.APPLICATION_CREATOR) || resourceTypes.isQualifierPresent(Qualifiers.APP)) - .filter(s -> !s.equals(OrganizationPermission.PORTFOLIO_CREATOR) || resourceTypes.isQualifierPresent(Qualifiers.VIEW)) + .filter(s -> !s.equals(GlobalPermission.APPLICATION_CREATOR) || resourceTypes.isQualifierPresent(Qualifiers.APP)) + .filter(s -> !s.equals(GlobalPermission.PORTFOLIO_CREATOR) || resourceTypes.isQualifierPresent(Qualifiers.VIEW)) .collect(toList())); projectPermissions = ImmutableList.copyOf(ALL_PROJECT_PERMISSIONS.stream() - .filter(s -> !s.equals(OrganizationPermission.APPLICATION_CREATOR.getKey()) || resourceTypes.isQualifierPresent(Qualifiers.APP)) - .filter(s -> !s.equals(OrganizationPermission.PORTFOLIO_CREATOR.getKey()) || resourceTypes.isQualifierPresent(Qualifiers.VIEW)) + .filter(s -> !s.equals(GlobalPermission.APPLICATION_CREATOR.getKey()) || resourceTypes.isQualifierPresent(Qualifiers.APP)) + .filter(s -> !s.equals(GlobalPermission.PORTFOLIO_CREATOR.getKey()) || resourceTypes.isQualifierPresent(Qualifiers.VIEW)) .collect(toList())); } @@ -55,7 +55,7 @@ public class PermissionServiceImpl implements PermissionService { * Return an immutable Set of all organization permissions */ @Override - public List getGlobalPermissions() { + public List getGlobalPermissions() { return globalPermissions; } diff --git a/server/sonar-webserver-auth/src/main/java/org/sonar/server/user/AbstractUserSession.java b/server/sonar-webserver-auth/src/main/java/org/sonar/server/user/AbstractUserSession.java index 59a6a10e04b..b0b9bb29a50 100644 --- a/server/sonar-webserver-auth/src/main/java/org/sonar/server/user/AbstractUserSession.java +++ b/server/sonar-webserver-auth/src/main/java/org/sonar/server/user/AbstractUserSession.java @@ -30,7 +30,7 @@ import javax.annotation.Nullable; import org.sonar.api.web.UserRole; import org.sonar.core.util.stream.MoreCollectors; import org.sonar.db.component.ComponentDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.project.ProjectDto; import org.sonar.db.user.UserDto; import org.sonar.server.exceptions.ForbiddenException; @@ -76,11 +76,11 @@ public abstract class AbstractUserSession implements UserSession { } @Override - public final boolean hasPermission(OrganizationPermission permission) { + public final boolean hasPermission(GlobalPermission permission) { return isRoot() || hasPermissionImpl(permission); } - protected abstract boolean hasPermissionImpl(OrganizationPermission permission); + protected abstract boolean hasPermissionImpl(GlobalPermission permission); @Override public final boolean hasComponentPermission(String permission, ComponentDto component) { @@ -167,7 +167,7 @@ public abstract class AbstractUserSession implements UserSession { } @Override - public final UserSession checkPermission(OrganizationPermission permission) { + public final UserSession checkPermission(GlobalPermission permission) { if (!hasPermission(permission)) { throw new ForbiddenException(INSUFFICIENT_PRIVILEGES_MESSAGE); } diff --git a/server/sonar-webserver-auth/src/main/java/org/sonar/server/user/DoPrivileged.java b/server/sonar-webserver-auth/src/main/java/org/sonar/server/user/DoPrivileged.java index 3c575ebf483..a1212802867 100644 --- a/server/sonar-webserver-auth/src/main/java/org/sonar/server/user/DoPrivileged.java +++ b/server/sonar-webserver-auth/src/main/java/org/sonar/server/user/DoPrivileged.java @@ -22,11 +22,11 @@ package org.sonar.server.user; import java.util.Collection; import java.util.Collections; import java.util.Optional; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.user.GroupDto; /** - * Allow code to be executed with the highest privileges possible, as if executed by a {@link OrganizationPermission#ADMINISTER} account. + * Allow code to be executed with the highest privileges possible, as if executed by a {@link GlobalPermission#ADMINISTER} account. * @since 4.3 */ public final class DoPrivileged { @@ -107,7 +107,7 @@ public final class DoPrivileged { } @Override - protected boolean hasPermissionImpl(OrganizationPermission permission) { + protected boolean hasPermissionImpl(GlobalPermission permission) { return true; } diff --git a/server/sonar-webserver-auth/src/main/java/org/sonar/server/user/ServerUserSession.java b/server/sonar-webserver-auth/src/main/java/org/sonar/server/user/ServerUserSession.java index 2eb60b4396e..4f4dabb1fd0 100644 --- a/server/sonar-webserver-auth/src/main/java/org/sonar/server/user/ServerUserSession.java +++ b/server/sonar-webserver-auth/src/main/java/org/sonar/server/user/ServerUserSession.java @@ -33,7 +33,7 @@ import org.sonar.core.util.stream.MoreCollectors; import org.sonar.db.DbClient; import org.sonar.db.DbSession; import org.sonar.db.component.ComponentDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.user.GroupDto; import org.sonar.db.user.UserDto; @@ -52,7 +52,7 @@ public class ServerUserSession extends AbstractUserSession { private final Map projectUuidByComponentUuid = new HashMap<>(); private Collection groups; private Boolean isSystemAdministrator; - private Set permissions; + private Set permissions; private Map> permissionsByProjectUuid; ServerUserSession(DbClient dbClient, @Nullable UserDto userDto) { @@ -116,7 +116,7 @@ public class ServerUserSession extends AbstractUserSession { } @Override - protected boolean hasPermissionImpl(OrganizationPermission permission) { + protected boolean hasPermissionImpl(GlobalPermission permission) { if (permissions == null) { permissions = loadGlobalPermissions(); } @@ -170,7 +170,7 @@ public class ServerUserSession extends AbstractUserSession { } } - private Set loadGlobalPermissions() { + private Set loadGlobalPermissions() { Set permissionKeys; try (DbSession dbSession = dbClient.openSession(false)) { if (userDto != null && userDto.getUuid() != null) { @@ -180,7 +180,7 @@ public class ServerUserSession extends AbstractUserSession { } } return permissionKeys.stream() - .map(OrganizationPermission::fromKey) + .map(GlobalPermission::fromKey) .collect(MoreCollectors.toSet(permissionKeys.size())); } @@ -217,6 +217,6 @@ public class ServerUserSession extends AbstractUserSession { if (isRoot()) { return true; } - return hasPermission(OrganizationPermission.ADMINISTER); + return hasPermission(GlobalPermission.ADMINISTER); } } diff --git a/server/sonar-webserver-auth/src/main/java/org/sonar/server/user/ThreadLocalUserSession.java b/server/sonar-webserver-auth/src/main/java/org/sonar/server/user/ThreadLocalUserSession.java index 06976bf8161..cf9c3474428 100644 --- a/server/sonar-webserver-auth/src/main/java/org/sonar/server/user/ThreadLocalUserSession.java +++ b/server/sonar-webserver-auth/src/main/java/org/sonar/server/user/ThreadLocalUserSession.java @@ -24,7 +24,7 @@ import java.util.List; import java.util.Optional; import javax.annotation.CheckForNull; import org.sonar.db.component.ComponentDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.project.ProjectDto; import org.sonar.db.user.GroupDto; import org.sonar.server.exceptions.UnauthorizedException; @@ -111,12 +111,12 @@ public class ThreadLocalUserSession implements UserSession { } @Override - public boolean hasPermission(OrganizationPermission permission) { + public boolean hasPermission(GlobalPermission permission) { return get().hasPermission(permission); } @Override - public UserSession checkPermission(OrganizationPermission permission) { + public UserSession checkPermission(GlobalPermission permission) { get().checkPermission(permission); return this; } diff --git a/server/sonar-webserver-auth/src/main/java/org/sonar/server/user/UserSession.java b/server/sonar-webserver-auth/src/main/java/org/sonar/server/user/UserSession.java index 7fca4813e02..fbe4a16ccbe 100644 --- a/server/sonar-webserver-auth/src/main/java/org/sonar/server/user/UserSession.java +++ b/server/sonar-webserver-auth/src/main/java/org/sonar/server/user/UserSession.java @@ -27,7 +27,7 @@ import java.util.Optional; import javax.annotation.CheckForNull; import javax.annotation.concurrent.Immutable; import org.sonar.db.component.ComponentDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.project.ProjectDto; import org.sonar.db.user.GroupDto; @@ -169,13 +169,13 @@ public interface UserSession { * Always returns {@code true} if {@link #isRoot()} is {@code true}, even if * organization does not exist. */ - boolean hasPermission(OrganizationPermission permission); + boolean hasPermission(GlobalPermission permission); /** - * Ensures that {@link #hasPermission(OrganizationPermission)} is {@code true}, + * Ensures that {@link #hasPermission(GlobalPermission)} is {@code true}, * otherwise throws a {@link org.sonar.server.exceptions.ForbiddenException}. */ - UserSession checkPermission(OrganizationPermission permission); + UserSession checkPermission(GlobalPermission permission); /** * Returns {@code true} if the permission is granted to user on the component, diff --git a/server/sonar-webserver-auth/src/test/java/org/sonar/server/authentication/SafeModeUserSessionTest.java b/server/sonar-webserver-auth/src/test/java/org/sonar/server/authentication/SafeModeUserSessionTest.java index 1d2b58fe240..ffd301b1961 100644 --- a/server/sonar-webserver-auth/src/test/java/org/sonar/server/authentication/SafeModeUserSessionTest.java +++ b/server/sonar-webserver-auth/src/test/java/org/sonar/server/authentication/SafeModeUserSessionTest.java @@ -21,7 +21,7 @@ package org.sonar.server.authentication; import org.junit.Test; import org.sonar.api.web.UserRole; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import static org.assertj.core.api.Assertions.assertThat; @@ -42,7 +42,7 @@ public class SafeModeUserSessionTest { public void session_has_no_permissions() { assertThat(underTest.isRoot()).isFalse(); assertThat(underTest.isSystemAdministrator()).isFalse(); - assertThat(underTest.hasPermissionImpl(OrganizationPermission.ADMINISTER)).isFalse(); + assertThat(underTest.hasPermissionImpl(GlobalPermission.ADMINISTER)).isFalse(); assertThat(underTest.hasProjectUuidPermission(UserRole.USER, "foo")).isFalse(); } } diff --git a/server/sonar-webserver-auth/src/test/java/org/sonar/server/permission/PermissionServiceImplTest.java b/server/sonar-webserver-auth/src/test/java/org/sonar/server/permission/PermissionServiceImplTest.java index 44e92ab0051..82da994b0a6 100644 --- a/server/sonar-webserver-auth/src/test/java/org/sonar/server/permission/PermissionServiceImplTest.java +++ b/server/sonar-webserver-auth/src/test/java/org/sonar/server/permission/PermissionServiceImplTest.java @@ -21,7 +21,7 @@ package org.sonar.server.permission; import org.junit.Test; import org.sonar.db.component.ResourceTypesRule; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import static org.assertj.core.api.Assertions.assertThat; @@ -33,7 +33,7 @@ public class PermissionServiceImplTest { @Test public void organizationPermissions_must_be_ordered() { assertThat(underTest.getGlobalPermissions()) - .extracting(OrganizationPermission::getKey) + .extracting(GlobalPermission::getKey) .containsExactly("admin", "gateadmin", "profileadmin", "provisioning", "scan", "applicationcreator", "portfoliocreator"); } diff --git a/server/sonar-webserver-auth/src/test/java/org/sonar/server/user/ServerUserSessionTest.java b/server/sonar-webserver-auth/src/test/java/org/sonar/server/user/ServerUserSessionTest.java index 9869ca0daf5..6e2708f4d9e 100644 --- a/server/sonar-webserver-auth/src/test/java/org/sonar/server/user/ServerUserSessionTest.java +++ b/server/sonar-webserver-auth/src/test/java/org/sonar/server/user/ServerUserSessionTest.java @@ -40,9 +40,9 @@ import static org.sonar.core.permission.GlobalPermissions.PROVISIONING; import static org.sonar.core.permission.GlobalPermissions.SYSTEM_ADMIN; import static org.sonar.db.component.ComponentTesting.newChildComponent; import static org.sonar.db.component.ComponentTesting.newFileDto; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; -import static org.sonar.db.permission.OrganizationPermission.PROVISION_PROJECTS; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.PROVISION_PROJECTS; +import static org.sonar.db.permission.GlobalPermission.SCAN; public class ServerUserSessionTest { diff --git a/server/sonar-webserver-auth/src/testFixtures/java/org/sonar/server/tester/AbstractMockUserSession.java b/server/sonar-webserver-auth/src/testFixtures/java/org/sonar/server/tester/AbstractMockUserSession.java index f0bda1ab6be..dd2f1c208ec 100644 --- a/server/sonar-webserver-auth/src/testFixtures/java/org/sonar/server/tester/AbstractMockUserSession.java +++ b/server/sonar-webserver-auth/src/testFixtures/java/org/sonar/server/tester/AbstractMockUserSession.java @@ -29,7 +29,7 @@ import java.util.Optional; import java.util.Set; import org.sonar.api.web.UserRole; import org.sonar.db.component.ComponentDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.project.ProjectDto; import org.sonar.server.user.AbstractUserSession; @@ -40,7 +40,7 @@ public abstract class AbstractMockUserSession private final Class clazz; private HashMultimap projectUuidByPermission = HashMultimap.create(); - private final Set permissions = new HashSet<>(); + private final Set permissions = new HashSet<>(); private Map projectUuidByComponentUuid = new HashMap<>(); private Set projectPermissions = new HashSet<>(); private boolean systemAdministrator = false; @@ -49,13 +49,13 @@ public abstract class AbstractMockUserSession this.clazz = clazz; } - public T addPermission(OrganizationPermission permission) { + public T addPermission(GlobalPermission permission) { permissions.add(permission); return clazz.cast(this); } @Override - protected boolean hasPermissionImpl(OrganizationPermission permission) { + protected boolean hasPermissionImpl(GlobalPermission permission) { return permissions.contains(permission); } diff --git a/server/sonar-webserver-auth/src/testFixtures/java/org/sonar/server/tester/UserSessionRule.java b/server/sonar-webserver-auth/src/testFixtures/java/org/sonar/server/tester/UserSessionRule.java index c12a03dff1a..3fa2dc6b13f 100644 --- a/server/sonar-webserver-auth/src/testFixtures/java/org/sonar/server/tester/UserSessionRule.java +++ b/server/sonar-webserver-auth/src/testFixtures/java/org/sonar/server/tester/UserSessionRule.java @@ -29,7 +29,7 @@ import org.junit.rules.TestRule; import org.junit.runner.Description; import org.junit.runners.model.Statement; import org.sonar.db.component.ComponentDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.project.ProjectDto; import org.sonar.db.user.GroupDto; import org.sonar.db.user.UserDto; @@ -197,7 +197,7 @@ public class UserSessionRule implements TestRule, UserSession { return this; } - public UserSessionRule addPermission(OrganizationPermission permission) { + public UserSessionRule addPermission(GlobalPermission permission) { ensureAbstractMockUserSession().addPermission(permission); return this; } @@ -310,12 +310,12 @@ public class UserSessionRule implements TestRule, UserSession { } @Override - public boolean hasPermission(OrganizationPermission permission) { + public boolean hasPermission(GlobalPermission permission) { return currentUserSession.hasPermission(permission); } @Override - public UserSession checkPermission(OrganizationPermission permission) { + public UserSession checkPermission(GlobalPermission permission) { currentUserSession.checkPermission(permission); return this; } diff --git a/server/sonar-webserver-auth/src/testFixtures/java/org/sonar/server/user/TestUserSessionFactory.java b/server/sonar-webserver-auth/src/testFixtures/java/org/sonar/server/user/TestUserSessionFactory.java index 707bfb8bbec..89bd75a2462 100644 --- a/server/sonar-webserver-auth/src/testFixtures/java/org/sonar/server/user/TestUserSessionFactory.java +++ b/server/sonar-webserver-auth/src/testFixtures/java/org/sonar/server/user/TestUserSessionFactory.java @@ -22,7 +22,7 @@ package org.sonar.server.user; import java.util.Collection; import java.util.Optional; import javax.annotation.Nullable; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.user.GroupDto; import org.sonar.db.user.UserDto; @@ -102,7 +102,7 @@ public class TestUserSessionFactory implements UserSessionFactory { } @Override - protected boolean hasPermissionImpl(OrganizationPermission permission) { + protected boolean hasPermissionImpl(GlobalPermission permission) { throw notImplemented(); } diff --git a/server/sonar-webserver-core/src/main/java/org/sonar/server/startup/RegisterPermissionTemplates.java b/server/sonar-webserver-core/src/main/java/org/sonar/server/startup/RegisterPermissionTemplates.java index a027562baff..e4d40aa84cf 100644 --- a/server/sonar-webserver-core/src/main/java/org/sonar/server/startup/RegisterPermissionTemplates.java +++ b/server/sonar-webserver-core/src/main/java/org/sonar/server/startup/RegisterPermissionTemplates.java @@ -31,7 +31,7 @@ import org.sonar.api.web.UserRole; import org.sonar.core.util.UuidFactory; import org.sonar.db.DbClient; import org.sonar.db.DbSession; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.permission.template.PermissionTemplateDto; import org.sonar.db.user.GroupDto; import org.sonar.server.usergroups.DefaultGroupFinder; @@ -98,8 +98,8 @@ public class RegisterPermissionTemplates implements Startable { Optional admins = dbClient.groupDao().selectByName(dbSession, DefaultGroups.ADMINISTRATORS); if (admins.isPresent()) { insertGroupPermission(dbSession, template, UserRole.ADMIN, admins.get()); - insertGroupPermission(dbSession, template, OrganizationPermission.APPLICATION_CREATOR.getKey(), admins.get()); - insertGroupPermission(dbSession, template, OrganizationPermission.PORTFOLIO_CREATOR.getKey(), admins.get()); + insertGroupPermission(dbSession, template, GlobalPermission.APPLICATION_CREATOR.getKey(), admins.get()); + insertGroupPermission(dbSession, template, GlobalPermission.PORTFOLIO_CREATOR.getKey(), admins.get()); } else { LOG.error("Cannot setup default permission for group: " + DefaultGroups.ADMINISTRATORS); } diff --git a/server/sonar-webserver-core/src/test/java/org/sonar/server/startup/RegisterPermissionTemplatesTest.java b/server/sonar-webserver-core/src/test/java/org/sonar/server/startup/RegisterPermissionTemplatesTest.java index ebb7b0f1cd0..a9dce665322 100644 --- a/server/sonar-webserver-core/src/test/java/org/sonar/server/startup/RegisterPermissionTemplatesTest.java +++ b/server/sonar-webserver-core/src/test/java/org/sonar/server/startup/RegisterPermissionTemplatesTest.java @@ -32,7 +32,7 @@ import org.sonar.api.utils.log.LoggerLevel; import org.sonar.api.web.UserRole; import org.sonar.core.util.UuidFactoryFast; import org.sonar.db.DbTester; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.permission.template.PermissionTemplateDto; import org.sonar.db.permission.template.PermissionTemplateGroupDto; import org.sonar.db.user.GroupDto; @@ -66,8 +66,8 @@ public class RegisterPermissionTemplatesTest { List groupPermissions = selectGroupPermissions(defaultTemplate); assertThat(groupPermissions).hasSize(7); expectGroupPermission(groupPermissions, UserRole.ADMIN, DefaultGroups.ADMINISTRATORS); - expectGroupPermission(groupPermissions, OrganizationPermission.APPLICATION_CREATOR.getKey(), DefaultGroups.ADMINISTRATORS); - expectGroupPermission(groupPermissions, OrganizationPermission.PORTFOLIO_CREATOR.getKey(), DefaultGroups.ADMINISTRATORS); + expectGroupPermission(groupPermissions, GlobalPermission.APPLICATION_CREATOR.getKey(), DefaultGroups.ADMINISTRATORS); + expectGroupPermission(groupPermissions, GlobalPermission.PORTFOLIO_CREATOR.getKey(), DefaultGroups.ADMINISTRATORS); expectGroupPermission(groupPermissions, UserRole.CODEVIEWER, defaultGroup.getName()); expectGroupPermission(groupPermissions, UserRole.USER, defaultGroup.getName()); expectGroupPermission(groupPermissions, UserRole.ISSUE_ADMIN, defaultGroup.getName()); diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/batch/ProjectDataLoader.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/batch/ProjectDataLoader.java index f27b1c446e6..56a669aee96 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/batch/ProjectDataLoader.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/batch/ProjectDataLoader.java @@ -30,7 +30,7 @@ import org.sonar.db.DbClient; import org.sonar.db.DbSession; import org.sonar.db.component.ComponentDto; import org.sonar.db.component.FilePathWithHashDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.scanner.protocol.input.FileData; import org.sonar.scanner.protocol.input.MultiModuleProjectRepository; import org.sonar.scanner.protocol.input.ProjectRepositories; @@ -62,7 +62,7 @@ public class ProjectDataLoader { ComponentDto project = componentFinder.getByKey(session, projectKey); checkRequest(project.isRootProject(), "Key '%s' belongs to a component which is not a Project", projectKey); boolean hasScanPerm = userSession.hasComponentPermission(UserRole.SCAN, project) || - userSession.hasPermission(OrganizationPermission.SCAN); + userSession.hasPermission(GlobalPermission.SCAN); checkPermission(hasScanPerm); ComponentDto branchOrMainModule = (branch == null && pullRequest == null) ? project : componentFinder.getByKeyAndOptionalBranchOrPullRequest(session, projectKey, branch, pullRequest); diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/branch/pr/ws/ListAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/branch/pr/ws/ListAction.java index a6dc67cb32b..e175da82906 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/branch/pr/ws/ListAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/branch/pr/ws/ListAction.java @@ -36,7 +36,7 @@ import org.sonar.db.DbSession; import org.sonar.db.component.BranchDto; import org.sonar.db.component.SnapshotDto; import org.sonar.db.measure.LiveMeasureDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.project.ProjectDto; import org.sonar.db.protobuf.DbProjectBranches; import org.sonar.server.component.ComponentFinder; @@ -127,7 +127,7 @@ public class ListAction implements PullRequestWsAction { private void checkPermission(ProjectDto project) { if (userSession.hasProjectPermission(USER, project) || userSession.hasProjectPermission(UserRole.SCAN, project) || - userSession.hasPermission(OrganizationPermission.SCAN)) { + userSession.hasPermission(GlobalPermission.SCAN)) { return; } throw insufficientPrivilegesException(); diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/branch/ws/ListAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/branch/ws/ListAction.java index 97436af4fdc..fbf8ae40495 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/branch/ws/ListAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/branch/ws/ListAction.java @@ -49,7 +49,7 @@ import static org.sonar.api.web.UserRole.USER; import static org.sonar.core.util.stream.MoreCollectors.toList; import static org.sonar.core.util.stream.MoreCollectors.uniqueIndex; import static org.sonar.db.component.BranchType.BRANCH; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.SCAN; import static org.sonar.server.branch.ws.BranchesWs.addProjectParam; import static org.sonar.server.branch.ws.ProjectBranchesParameters.ACTION_LIST; import static org.sonar.server.branch.ws.ProjectBranchesParameters.PARAM_PROJECT; diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/ce/queue/ReportSubmitter.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/ce/queue/ReportSubmitter.java index 29acb09d366..c62ccfd7805 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/ce/queue/ReportSubmitter.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/ce/queue/ReportSubmitter.java @@ -38,7 +38,7 @@ import org.sonar.db.ce.CeTaskTypes; import org.sonar.db.component.BranchDto; import org.sonar.db.component.ComponentDto; import org.sonar.db.organization.OrganizationDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.server.component.ComponentUpdater; import org.sonar.server.component.NewComponent; import org.sonar.server.exceptions.BadRequestException; @@ -129,7 +129,7 @@ public class ReportSubmitter { // they don't have the direct permission on the project. // That means that dropping the permission on the project does not have any effects // if user has still the permission on the organization - if (!userSession.hasComponentPermission(UserRole.SCAN, project) && !userSession.hasPermission(OrganizationPermission.SCAN)) { + if (!userSession.hasComponentPermission(UserRole.SCAN, project) && !userSession.hasPermission(GlobalPermission.SCAN)) { throw insufficientPrivilegesException(); } } @@ -164,7 +164,7 @@ public class ReportSubmitter { } private ComponentDto createProject(DbSession dbSession, OrganizationDto organization, BranchSupport.ComponentKey componentKey, @Nullable String projectName) { - userSession.checkPermission(OrganizationPermission.PROVISION_PROJECTS); + userSession.checkPermission(GlobalPermission.PROVISION_PROJECTS); String userUuid = userSession.getUuid(); boolean wouldCurrentUserHaveScanPermission = permissionTemplateService.wouldUserHaveScanPermissionWithDefaultTemplate( diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/ce/ws/TaskAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/ce/ws/TaskAction.java index 55c9f572015..a8db41e60f7 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/ce/ws/TaskAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/ce/ws/TaskAction.java @@ -41,7 +41,7 @@ import org.sonar.db.ce.CeActivityDto; import org.sonar.db.ce.CeQueueDto; import org.sonar.db.ce.CeTaskMessageDto; import org.sonar.db.component.ComponentDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.server.user.UserSession; import org.sonarqube.ws.Ce; @@ -126,8 +126,8 @@ public class TaskAction implements CeWsAction { private void checkPermission(Optional component) { if (component.isPresent()) { String orgUuid = component.get().getOrganizationUuid(); - if (!userSession.hasPermission(OrganizationPermission.ADMINISTER) && - !userSession.hasPermission(OrganizationPermission.SCAN) && + if (!userSession.hasPermission(GlobalPermission.ADMINISTER) && + !userSession.hasPermission(GlobalPermission.SCAN) && !userSession.hasComponentPermission(UserRole.SCAN, component.get())) { throw insufficientPrivilegesException(); } diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/newcodeperiod/ws/ShowAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/newcodeperiod/ws/ShowAction.java index c7fb2b94cd1..8c04163d9cb 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/newcodeperiod/ws/ShowAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/newcodeperiod/ws/ShowAction.java @@ -38,7 +38,7 @@ import org.sonar.server.user.UserSession; import org.sonarqube.ws.NewCodePeriods; import static java.lang.String.format; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.SCAN; import static org.sonar.server.user.AbstractUserSession.insufficientPrivilegesException; import static org.sonar.server.ws.WsUtils.writeProtobuf; import static org.sonarqube.ws.NewCodePeriods.ShowWSResponse; diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/AddMemberAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/AddMemberAction.java index b73dfb70165..514981585cc 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/AddMemberAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/AddMemberAction.java @@ -26,7 +26,7 @@ import org.sonar.api.server.ws.WebService.NewController; import org.sonar.db.DbClient; import org.sonar.db.DbSession; import org.sonar.db.organization.OrganizationDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.user.GroupMembershipQuery; import org.sonar.db.user.UserDto; import org.sonar.server.issue.AvatarResolver; @@ -38,11 +38,11 @@ import org.sonarqube.ws.Organizations.User; import static com.google.common.base.Strings.emptyToNull; import static java.util.Optional.ofNullable; import static org.sonar.db.user.GroupMembershipQuery.IN; +import static org.sonar.server.exceptions.NotFoundException.checkFound; +import static org.sonar.server.exceptions.NotFoundException.checkFoundWithOptional; import static org.sonar.server.organization.ws.OrganizationsWsSupport.PARAM_LOGIN; import static org.sonar.server.organization.ws.OrganizationsWsSupport.PARAM_ORGANIZATION; import static org.sonar.server.ws.KeyExamples.KEY_ORG_EXAMPLE_001; -import static org.sonar.server.exceptions.NotFoundException.checkFound; -import static org.sonar.server.exceptions.NotFoundException.checkFoundWithOptional; import static org.sonar.server.ws.WsUtils.writeProtobuf; public class AddMemberAction implements OrganizationsWsAction { @@ -93,7 +93,7 @@ public class AddMemberAction implements OrganizationsWsAction { try (DbSession dbSession = dbClient.openSession(false)) { OrganizationDto organization = checkFoundWithOptional(dbClient.organizationDao().selectByKey(dbSession, organizationKey), "Organization '%s' is not found", organizationKey); - userSession.checkPermission(OrganizationPermission.ADMINISTER); + userSession.checkPermission(GlobalPermission.ADMINISTER); wsSupport.checkMemberSyncIsDisabled(dbSession, organization); UserDto user = checkFound(dbClient.userDao().selectByLogin(dbSession, login), "User '%s' is not found", login); memberUpdater.addMember(dbSession, organization, user); diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/DeleteAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/DeleteAction.java index cae73c73dd3..48b2433b540 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/DeleteAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/DeleteAction.java @@ -31,11 +31,11 @@ import org.sonar.server.organization.OrganizationFlags; import org.sonar.server.user.UserSession; import static com.google.common.base.Preconditions.checkArgument; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; +import static org.sonar.server.exceptions.NotFoundException.checkFoundWithOptional; import static org.sonar.server.organization.ws.OrganizationsWsSupport.PARAM_KEY; import static org.sonar.server.organization.ws.OrganizationsWsSupport.PARAM_ORGANIZATION; import static org.sonar.server.ws.KeyExamples.KEY_ORG_EXAMPLE_002; -import static org.sonar.server.exceptions.NotFoundException.checkFoundWithOptional; public class DeleteAction implements OrganizationsWsAction { private static final String ACTION = "delete"; diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/EnableSupportAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/EnableSupportAction.java index b29a270afc5..dc8a5708654 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/EnableSupportAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/EnableSupportAction.java @@ -23,7 +23,7 @@ import org.sonar.api.server.ws.Change; import org.sonar.api.server.ws.Request; import org.sonar.api.server.ws.Response; import org.sonar.api.server.ws.WebService; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.server.organization.DefaultOrganizationProvider; import org.sonar.server.organization.OrganisationSupport; import org.sonar.server.user.UserSession; @@ -65,7 +65,7 @@ public class EnableSupportAction implements OrganizationsWsAction { } private void verifySystemAdministrator() { - userSession.checkLoggedIn().checkPermission(OrganizationPermission.ADMINISTER); + userSession.checkLoggedIn().checkPermission(GlobalPermission.ADMINISTER); } } diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/RemoveMemberAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/RemoveMemberAction.java index e4a30cf14bf..b4ba4ae64f9 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/RemoveMemberAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/RemoveMemberAction.java @@ -30,12 +30,12 @@ import org.sonar.db.user.UserDto; import org.sonar.server.organization.MemberUpdater; import org.sonar.server.user.UserSession; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; +import static org.sonar.server.exceptions.NotFoundException.checkFound; +import static org.sonar.server.exceptions.NotFoundException.checkFoundWithOptional; import static org.sonar.server.organization.ws.OrganizationsWsSupport.PARAM_LOGIN; import static org.sonar.server.organization.ws.OrganizationsWsSupport.PARAM_ORGANIZATION; import static org.sonar.server.ws.KeyExamples.KEY_ORG_EXAMPLE_001; -import static org.sonar.server.exceptions.NotFoundException.checkFound; -import static org.sonar.server.exceptions.NotFoundException.checkFoundWithOptional; public class RemoveMemberAction implements OrganizationsWsAction { private final DbClient dbClient; diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/SearchAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/SearchAction.java index 9afa8c32e83..0c3f7535289 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/SearchAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/SearchAction.java @@ -46,8 +46,8 @@ import static java.util.Optional.ofNullable; import static org.sonar.core.util.stream.MoreCollectors.toSet; import static org.sonar.db.Pagination.forPage; import static org.sonar.db.organization.OrganizationQuery.newOrganizationQueryBuilder; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; -import static org.sonar.db.permission.OrganizationPermission.PROVISION_PROJECTS; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.PROVISION_PROJECTS; import static org.sonar.server.ws.WsUtils.writeProtobuf; import static org.sonarqube.ws.Common.Paging; diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/SearchMembersAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/SearchMembersAction.java index 70c2055fb57..8f102fdd5a6 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/SearchMembersAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/SearchMembersAction.java @@ -51,7 +51,7 @@ import static com.google.common.base.Preconditions.checkArgument; import static com.google.common.base.Strings.emptyToNull; import static java.util.Optional.ofNullable; import static org.sonar.api.server.ws.WebService.SelectionMode.SELECTED; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.server.es.SearchOptions.MAX_PAGE_SIZE; import static org.sonar.server.exceptions.NotFoundException.checkFoundWithOptional; import static org.sonar.server.organization.ws.OrganizationsWsSupport.PARAM_ORGANIZATION; diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/UpdateAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/UpdateAction.java index 017099f2d84..2377a99aa52 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/UpdateAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/organization/ws/UpdateAction.java @@ -35,7 +35,7 @@ import org.sonar.server.user.UserSession; import org.sonarqube.ws.Organizations; import static java.lang.String.format; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.server.organization.ws.OrganizationsWsSupport.PARAM_AVATAR_URL; import static org.sonar.server.organization.ws.OrganizationsWsSupport.PARAM_DESCRIPTION; import static org.sonar.server.organization.ws.OrganizationsWsSupport.PARAM_KEY; diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/permission/PermissionChange.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/permission/PermissionChange.java index db6dd0c36e5..6fb19618a73 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/permission/PermissionChange.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/permission/PermissionChange.java @@ -21,7 +21,7 @@ package org.sonar.server.permission; import javax.annotation.CheckForNull; import javax.annotation.Nullable; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import static java.util.Objects.requireNonNull; import static org.sonar.core.util.stream.MoreCollectors.toList; @@ -46,7 +46,7 @@ public abstract class PermissionChange { if (projectUuid == null) { checkRequest(permissionService.getGlobalPermissions().stream().anyMatch(p -> p.getKey().equals(permission)), "Invalid global permission '%s'. Valid values are %s", permission, - permissionService.getGlobalPermissions().stream().map(OrganizationPermission::getKey).collect(toList())); + permissionService.getGlobalPermissions().stream().map(GlobalPermission::getKey).collect(toList())); } else { checkRequest(permissionService.getAllProjectPermissions().contains(permission), "Invalid project permission '%s'. Valid values are %s", permission, permissionService.getAllProjectPermissions()); diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/permission/PermissionPrivilegeChecker.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/permission/PermissionPrivilegeChecker.java index 2984298f0f4..eb130d0910d 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/permission/PermissionPrivilegeChecker.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/permission/PermissionPrivilegeChecker.java @@ -21,7 +21,7 @@ package org.sonar.server.permission; import java.util.Optional; import org.sonar.api.web.UserRole; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.server.user.UserSession; import static org.sonar.server.user.AbstractUserSession.insufficientPrivilegesException; @@ -34,7 +34,7 @@ public class PermissionPrivilegeChecker { public static void checkGlobalAdmin(UserSession userSession) { userSession .checkLoggedIn() - .checkPermission(OrganizationPermission.ADMINISTER); + .checkPermission(GlobalPermission.ADMINISTER); } /** @@ -44,7 +44,7 @@ public class PermissionPrivilegeChecker { public static void checkProjectAdmin(UserSession userSession, Optional projectUuid) { userSession.checkLoggedIn(); - if (userSession.hasPermission(OrganizationPermission.ADMINISTER)) { + if (userSession.hasPermission(GlobalPermission.ADMINISTER)) { return; } diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/permission/PermissionTemplateService.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/permission/PermissionTemplateService.java index 53667c91195..17a0d91f4bc 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/permission/PermissionTemplateService.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/permission/PermissionTemplateService.java @@ -53,7 +53,7 @@ import static java.lang.String.format; import static java.util.Collections.singletonList; import static org.sonar.api.security.DefaultGroups.isAnyone; import static org.sonar.api.web.UserRole.PUBLIC_PERMISSIONS; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.SCAN; @ServerSide public class PermissionTemplateService { diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/permission/ws/SearchGlobalPermissionsAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/permission/ws/SearchGlobalPermissionsAction.java index fa40ab81cf8..b06935a01c5 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/permission/ws/SearchGlobalPermissionsAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/permission/ws/SearchGlobalPermissionsAction.java @@ -26,7 +26,7 @@ import org.sonar.api.server.ws.WebService; import org.sonar.core.i18n.I18n; import org.sonar.db.DbClient; import org.sonar.db.DbSession; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.permission.PermissionQuery; import org.sonar.server.permission.PermissionService; import org.sonar.server.user.UserSession; @@ -81,7 +81,7 @@ public class SearchGlobalPermissionsAction implements PermissionsWsAction { Permission.Builder permission = newBuilder(); permissionService.getGlobalPermissions().stream() - .map(OrganizationPermission::getKey) + .map(GlobalPermission::getKey) .forEach(permissionKey -> { PermissionQuery query = permissionQuery(permissionKey); response.addPermissions( diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/project/ws/BulkDeleteAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/project/ws/BulkDeleteAction.java index 1870878f0c1..848f024a2e1 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/project/ws/BulkDeleteAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/project/ws/BulkDeleteAction.java @@ -36,7 +36,7 @@ import org.sonar.db.DbSession; import org.sonar.db.component.ComponentDto; import org.sonar.db.component.ComponentQuery; import org.sonar.db.organization.OrganizationDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.server.component.ComponentCleanerService; import org.sonar.server.project.Project; import org.sonar.server.project.ProjectLifeCycleListeners; @@ -140,7 +140,7 @@ public class BulkDeleteAction implements ProjectsWsAction { userSession.checkLoggedIn(); try (DbSession dbSession = dbClient.openSession(false)) { OrganizationDto organization = support.getOrganization(dbSession, searchRequest.getOrganization()); - userSession.checkPermission(OrganizationPermission.ADMINISTER); + userSession.checkPermission(GlobalPermission.ADMINISTER); checkAtLeastOneParameterIsPresent(searchRequest); ComponentQuery query = buildDbQuery(searchRequest); diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/project/ws/CreateAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/project/ws/CreateAction.java index 7517e4b815c..12978101382 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/project/ws/CreateAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/project/ws/CreateAction.java @@ -39,7 +39,7 @@ import static org.apache.commons.lang.StringUtils.abbreviate; import static org.sonar.api.resources.Qualifiers.PROJECT; import static org.sonar.core.component.ComponentKeys.MAX_COMPONENT_KEY_LENGTH; import static org.sonar.db.component.ComponentValidator.MAX_COMPONENT_NAME_LENGTH; -import static org.sonar.db.permission.OrganizationPermission.PROVISION_PROJECTS; +import static org.sonar.db.permission.GlobalPermission.PROVISION_PROJECTS; import static org.sonar.server.component.NewComponent.newComponentBuilder; import static org.sonar.server.project.ws.ProjectsWsSupport.PARAM_ORGANIZATION; import static org.sonar.server.ws.KeyExamples.KEY_PROJECT_EXAMPLE_001; diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/project/ws/DeleteAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/project/ws/DeleteAction.java index 56bb9e9f6f5..ea4e01e3be5 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/project/ws/DeleteAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/project/ws/DeleteAction.java @@ -25,7 +25,7 @@ import org.sonar.api.server.ws.WebService; import org.sonar.api.web.UserRole; import org.sonar.db.DbClient; import org.sonar.db.DbSession; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.project.ProjectDto; import org.sonar.server.component.ComponentCleanerService; import org.sonar.server.component.ComponentFinder; @@ -90,7 +90,7 @@ public class DeleteAction implements ProjectsWsAction { private void checkPermission(ProjectDto project) { if (!userSession.hasProjectPermission(UserRole.ADMIN, project)) { - userSession.checkPermission(OrganizationPermission.ADMINISTER); + userSession.checkPermission(GlobalPermission.ADMINISTER); } } } diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/project/ws/SearchAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/project/ws/SearchAction.java index 6069b34d062..f7c9a43cbd1 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/project/ws/SearchAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/project/ws/SearchAction.java @@ -37,7 +37,7 @@ import org.sonar.db.component.ComponentDto; import org.sonar.db.component.ComponentQuery; import org.sonar.db.component.SnapshotDto; import org.sonar.db.organization.OrganizationDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.server.project.Visibility; import org.sonar.server.user.UserSession; import org.sonarqube.ws.Projects.SearchWsResponse; @@ -156,7 +156,7 @@ public class SearchAction implements ProjectsWsAction { private SearchWsResponse doHandle(SearchRequest request) { try (DbSession dbSession = dbClient.openSession(false)) { OrganizationDto organization = support.getOrganization(dbSession, request.getOrganization()); - userSession.checkPermission(OrganizationPermission.ADMINISTER); + userSession.checkPermission(GlobalPermission.ADMINISTER); ComponentQuery query = buildDbQuery(request); Paging paging = buildPaging(dbSession, request, organization, query); diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualitygate/ws/CopyAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualitygate/ws/CopyAction.java index ccaddb06ba6..db21c61415d 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualitygate/ws/CopyAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualitygate/ws/CopyAction.java @@ -32,7 +32,7 @@ import org.sonar.server.user.UserSession; import static com.google.common.base.Preconditions.checkArgument; import static org.sonar.core.util.Uuids.UUID_EXAMPLE_01; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; import static org.sonar.server.qualitygate.ws.CreateAction.NAME_MAXIMUM_LENGTH; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_ID; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_NAME; diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualitygate/ws/CreateAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualitygate/ws/CreateAction.java index d16cb241690..33234f6b3c3 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualitygate/ws/CreateAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualitygate/ws/CreateAction.java @@ -26,7 +26,7 @@ import org.sonar.api.server.ws.WebService; import org.sonar.db.DbClient; import org.sonar.db.DbSession; import org.sonar.db.organization.OrganizationDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.qualitygate.QualityGateDto; import org.sonar.server.qualitygate.QualityGateUpdater; import org.sonar.server.user.UserSession; @@ -79,7 +79,7 @@ public class CreateAction implements QualityGatesWsAction { try (DbSession dbSession = dbClient.openSession(false)) { OrganizationDto organizationDto = wsSupport.getOrganization(dbSession, request); - userSession.checkPermission(OrganizationPermission.ADMINISTER_QUALITY_GATES); + userSession.checkPermission(GlobalPermission.ADMINISTER_QUALITY_GATES); String name = request.mandatoryParam(PARAM_NAME); diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualitygate/ws/QualityGatesWsSupport.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualitygate/ws/QualityGatesWsSupport.java index cf23af33427..bbd8b093a62 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualitygate/ws/QualityGatesWsSupport.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualitygate/ws/QualityGatesWsSupport.java @@ -41,7 +41,7 @@ import org.sonarqube.ws.Qualitygates; import static com.google.common.base.Preconditions.checkArgument; import static java.lang.String.format; import static org.sonar.api.web.UserRole.ADMIN; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; import static org.sonar.server.exceptions.NotFoundException.checkFound; import static org.sonar.server.exceptions.NotFoundException.checkFoundWithOptional; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_ORGANIZATION; diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualitygate/ws/SetAsDefaultAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualitygate/ws/SetAsDefaultAction.java index 7b7ce837304..a66d3df2cba 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualitygate/ws/SetAsDefaultAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualitygate/ws/SetAsDefaultAction.java @@ -31,7 +31,7 @@ import org.sonar.server.user.UserSession; import static com.google.common.base.Preconditions.checkArgument; import static org.sonar.core.util.Uuids.UUID_EXAMPLE_01; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; import static org.sonar.server.qualitygate.ws.CreateAction.NAME_MAXIMUM_LENGTH; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_ID; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_NAME; diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/CopyAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/CopyAction.java index 12be4956607..979eaad00d5 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/CopyAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/CopyAction.java @@ -34,7 +34,7 @@ import org.sonarqube.ws.Qualityprofiles.CopyWsResponse; import static java.util.Optional.ofNullable; import static org.sonar.core.util.Uuids.UUID_EXAMPLE_01; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonar.server.ws.WsUtils.writeProtobuf; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.ACTION_COPY; diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/CreateAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/CreateAction.java index d0ca0499aca..be89e435d40 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/CreateAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/CreateAction.java @@ -39,7 +39,7 @@ import org.sonar.server.user.UserSession; import org.sonarqube.ws.Qualityprofiles.CreateWsResponse; import static com.google.common.base.Preconditions.checkArgument; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonar.server.language.LanguageParamUtils.getOrderedLanguageKeys; import static org.sonar.server.ws.WsUtils.writeProtobuf; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.ACTION_CREATE; diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/QProfileWsSupport.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/QProfileWsSupport.java index 43bb87b4de1..04e43ea4f0f 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/QProfileWsSupport.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/QProfileWsSupport.java @@ -25,7 +25,7 @@ import org.sonar.api.server.ServerSide; import org.sonar.db.DbClient; import org.sonar.db.DbSession; import org.sonar.db.organization.OrganizationDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.qualityprofile.QProfileDto; import org.sonar.db.rule.RuleDefinitionDto; import org.sonar.db.user.GroupDto; @@ -103,14 +103,14 @@ public class QProfileWsSupport { } public void checkPermission(DbSession dbSession) { - userSession.checkPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.checkPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); } boolean canEdit(DbSession dbSession, QProfileDto profile) { if (profile.isBuiltIn() || !userSession.isLoggedIn()) { return false; } - if (userSession.hasPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES)) { + if (userSession.hasPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES)) { return true; } diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/RestoreAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/RestoreAction.java index d5df007544f..9fe304b43ca 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/RestoreAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/RestoreAction.java @@ -38,7 +38,7 @@ import org.sonar.server.user.UserSession; import static com.google.common.base.Preconditions.checkArgument; import static java.nio.charset.StandardCharsets.UTF_8; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.RestoreActionParameters.PARAM_BACKUP; public class RestoreAction implements QProfileWsAction { diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/SearchAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/SearchAction.java index 014eeb7c210..677d6b0b520 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/SearchAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/SearchAction.java @@ -59,7 +59,7 @@ import static java.util.function.Function.identity; import static org.sonar.api.rule.RuleStatus.DEPRECATED; import static org.sonar.api.utils.DateUtils.formatDateTime; import static org.sonar.core.util.stream.MoreCollectors.toList; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonar.server.ws.KeyExamples.KEY_PROJECT_EXAMPLE_001; import static org.sonar.server.ws.WsUtils.writeProtobuf; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.ACTION_SEARCH; diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/SetDefaultAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/SetDefaultAction.java index 950e27e80b4..b7df7cfc643 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/SetDefaultAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/qualityprofile/ws/SetDefaultAction.java @@ -30,7 +30,7 @@ import org.sonar.db.qualityprofile.DefaultQProfileDto; import org.sonar.db.qualityprofile.QProfileDto; import org.sonar.server.user.UserSession; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.ACTION_SET_DEFAULT; public class SetDefaultAction implements QProfileWsAction { diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/rule/ws/AppAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/rule/ws/AppAction.java index 4d4321d90cb..0d29e337c16 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/rule/ws/AppAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/rule/ws/AppAction.java @@ -27,7 +27,7 @@ import org.sonar.api.server.ws.WebService; import org.sonar.api.utils.text.JsonWriter; import org.sonar.db.DbClient; import org.sonar.db.DbSession; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.server.user.UserSession; public class AppAction implements RulesWsAction { @@ -65,7 +65,7 @@ public class AppAction implements RulesWsAction { } private void addPermissions(JsonWriter json) { - boolean canWrite = userSession.hasPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + boolean canWrite = userSession.hasPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); json.prop("canWrite", canWrite); } diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/rule/ws/RuleWsSupport.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/rule/ws/RuleWsSupport.java index 5f34f31c508..de0a195d0db 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/rule/ws/RuleWsSupport.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/rule/ws/RuleWsSupport.java @@ -48,7 +48,7 @@ import static org.sonar.core.util.Uuids.UUID_EXAMPLE_01; import static org.sonar.core.util.Uuids.UUID_EXAMPLE_02; import static org.sonar.core.util.stream.MoreCollectors.toSet; import static org.sonar.core.util.stream.MoreCollectors.uniqueIndex; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonar.server.rule.ws.RulesWsParameters.PARAM_ACTIVATION; import static org.sonar.server.rule.ws.RulesWsParameters.PARAM_ACTIVE_SEVERITIES; import static org.sonar.server.rule.ws.RulesWsParameters.PARAM_AVAILABLE_SINCE; diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/SettingsWsSupport.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/SettingsWsSupport.java index 9b21df849bd..7cdcec40371 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/SettingsWsSupport.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/SettingsWsSupport.java @@ -23,7 +23,7 @@ import java.util.Optional; import org.sonar.api.server.ServerSide; import org.sonar.api.web.UserRole; import org.sonar.db.component.ComponentDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.process.ProcessProperties; import org.sonar.server.organization.DefaultOrganizationProvider; import org.sonar.server.user.UserSession; @@ -54,7 +54,7 @@ public class SettingsWsSupport { } boolean isVisible(String key, Optional component) { - return hasPermission(OrganizationPermission.SCAN, UserRole.SCAN, component) || verifySecuredSetting(key, component); + return hasPermission(GlobalPermission.SCAN, UserRole.SCAN, component) || verifySecuredSetting(key, component); } static boolean isSecured(String key) { @@ -62,10 +62,10 @@ public class SettingsWsSupport { } private boolean verifySecuredSetting(String key, Optional component) { - return (!isSecured(key) || hasPermission(OrganizationPermission.ADMINISTER, ADMIN, component)); + return (!isSecured(key) || hasPermission(GlobalPermission.ADMINISTER, ADMIN, component)); } - private boolean hasPermission(OrganizationPermission orgPermission, String projectPermission, Optional component) { + private boolean hasPermission(GlobalPermission orgPermission, String projectPermission, Optional component) { if (userSession.isSystemAdministrator()) { return true; } diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/ValuesAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/ValuesAction.java index fe3f75813ba..2dcf109d5a6 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/ValuesAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/ValuesAction.java @@ -47,7 +47,7 @@ import org.sonar.core.util.stream.MoreCollectors; import org.sonar.db.DbClient; import org.sonar.db.DbSession; import org.sonar.db.component.ComponentDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.property.PropertyDto; import org.sonar.server.component.ComponentFinder; import org.sonar.server.user.UserSession; @@ -158,7 +158,7 @@ public class ValuesAction implements SettingsWsAction { ComponentDto component = componentFinder.getByKey(dbSession, componentKey); if (!userSession.hasComponentPermission(USER, component) && !userSession.hasComponentPermission(UserRole.SCAN, component) && - !userSession.hasPermission(OrganizationPermission.SCAN)) { + !userSession.hasPermission(GlobalPermission.SCAN)) { throw insufficientPrivilegesException(); } return Optional.of(component); diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/ui/ws/ComponentAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/ui/ws/ComponentAction.java index d5315b67e96..2c9432efe02 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/ui/ws/ComponentAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/ui/ws/ComponentAction.java @@ -46,7 +46,7 @@ import org.sonar.db.component.ComponentDto; import org.sonar.db.component.SnapshotDto; import org.sonar.db.measure.LiveMeasureDto; import org.sonar.db.organization.OrganizationDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.property.PropertyDto; import org.sonar.db.property.PropertyQuery; import org.sonar.db.qualitygate.QualityGateDto; @@ -70,8 +70,8 @@ import static org.sonar.api.utils.DateUtils.formatDateTime; import static org.sonar.api.web.UserRole.ADMIN; import static org.sonar.api.web.UserRole.USER; import static org.sonar.core.util.stream.MoreCollectors.uniqueIndex; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonar.server.user.AbstractUserSession.insufficientPrivilegesException; import static org.sonar.server.ws.KeyExamples.KEY_BRANCH_EXAMPLE_001; import static org.sonar.server.ws.KeyExamples.KEY_PROJECT_EXAMPLE_001; @@ -293,9 +293,9 @@ public class ComponentAction implements NavigationWsAction { boolean isProject = Qualifiers.PROJECT.equals(component.qualifier()); boolean showManualMeasures = isProjectAdmin && !Qualifiers.DIRECTORY.equals(component.qualifier()); boolean showBackgroundTasks = isProjectAdmin && (isProject || Qualifiers.VIEW.equals(component.qualifier()) || Qualifiers.APP.equals(component.qualifier())); - boolean isQualityProfileAdmin = userSession.hasPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); - boolean isQualityGateAdmin = userSession.hasPermission(OrganizationPermission.ADMINISTER_QUALITY_GATES); - boolean isOrganizationAdmin = userSession.hasPermission(OrganizationPermission.ADMINISTER); + boolean isQualityProfileAdmin = userSession.hasPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); + boolean isQualityGateAdmin = userSession.hasPermission(GlobalPermission.ADMINISTER_QUALITY_GATES); + boolean isOrganizationAdmin = userSession.hasPermission(GlobalPermission.ADMINISTER); boolean canBrowseProject = userSession.hasComponentPermission(USER, component); json.prop("showSettings", isProjectAdmin && componentTypeHasProperty(component, PROPERTY_CONFIGURABLE)); diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/ui/ws/OrganizationAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/ui/ws/OrganizationAction.java index 69a0ad1e74d..851224770fe 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/ui/ws/OrganizationAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/ui/ws/OrganizationAction.java @@ -41,7 +41,7 @@ import org.sonar.server.project.Visibility; import org.sonar.server.ui.PageRepository; import org.sonar.server.user.UserSession; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.server.exceptions.NotFoundException.checkFoundWithOptional; import static org.sonar.server.ws.KeyExamples.KEY_ORG_EXAMPLE_001; diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/user/ws/CurrentAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/user/ws/CurrentAction.java index 00efadbc94b..536316eb69f 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/user/ws/CurrentAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/user/ws/CurrentAction.java @@ -33,7 +33,7 @@ import org.sonar.db.DbClient; import org.sonar.db.DbSession; import org.sonar.db.component.BranchDto; import org.sonar.db.component.ComponentDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.project.ProjectDto; import org.sonar.db.user.UserDto; import org.sonar.server.issue.AvatarResolver; @@ -135,7 +135,7 @@ public class CurrentAction implements UsersWsAction { String defaultOrganizationUuid = defaultOrganizationProvider.get().getUuid(); return permissionService.getGlobalPermissions().stream() .filter(permission -> userSession.hasPermission(permission)) - .map(OrganizationPermission::getKey) + .map(GlobalPermission::getKey) .collect(toList()); } diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/user/ws/DeactivateAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/user/ws/DeactivateAction.java index 57db06a7ce0..402a2be68d9 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/user/ws/DeactivateAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/user/ws/DeactivateAction.java @@ -35,7 +35,7 @@ import org.sonar.server.user.index.UserIndexer; import static java.util.Collections.singletonList; import static org.sonar.api.CoreProperties.DEFAULT_ISSUE_ASSIGNEE; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.server.exceptions.BadRequestException.checkRequest; import static org.sonar.server.exceptions.NotFoundException.checkFound; diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/user/ws/GroupsAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/user/ws/GroupsAction.java index dbcbbb058ad..8fdd7df443f 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/user/ws/GroupsAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/user/ws/GroupsAction.java @@ -31,7 +31,7 @@ import org.sonar.api.server.ws.WebService.SelectionMode; import org.sonar.api.utils.Paging; import org.sonar.db.DbClient; import org.sonar.db.DbSession; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.user.GroupDto; import org.sonar.db.user.GroupMembershipDto; import org.sonar.db.user.GroupMembershipQuery; @@ -96,7 +96,7 @@ public class GroupsAction implements UsersWsAction { private GroupsWsResponse doHandle(GroupsRequest request) { try (DbSession dbSession = dbClient.openSession(false)) { - userSession.checkPermission(OrganizationPermission.ADMINISTER); + userSession.checkPermission(GlobalPermission.ADMINISTER); String login = request.getLogin(); GroupMembershipQuery query = GroupMembershipQuery.builder() diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/AddUserAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/AddUserAction.java index 01c05ae951b..c15109c56c6 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/AddUserAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/AddUserAction.java @@ -32,7 +32,7 @@ import org.sonar.db.user.UserGroupDto; import org.sonar.server.user.UserSession; import static java.lang.String.format; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.server.exceptions.NotFoundException.checkFound; import static org.sonar.server.usergroups.ws.GroupWsSupport.PARAM_GROUP_ID; import static org.sonar.server.usergroups.ws.GroupWsSupport.PARAM_GROUP_NAME; diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/CreateAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/CreateAction.java index 7e1500fa766..1b860f02350 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/CreateAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/CreateAction.java @@ -34,7 +34,7 @@ import org.sonarqube.ws.UserGroups; import static java.lang.String.format; import static org.sonar.api.user.UserGroupValidation.GROUP_NAME_MAX_LENGTH; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.server.usergroups.ws.GroupWsSupport.DESCRIPTION_MAX_LENGTH; import static org.sonar.server.usergroups.ws.GroupWsSupport.PARAM_GROUP_DESCRIPTION; import static org.sonar.server.usergroups.ws.GroupWsSupport.PARAM_GROUP_NAME; diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/DeleteAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/DeleteAction.java index 7875d2a0308..a777ca1e0a5 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/DeleteAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/DeleteAction.java @@ -26,7 +26,7 @@ import org.sonar.api.server.ws.WebService; import org.sonar.api.server.ws.WebService.NewController; import org.sonar.db.DbClient; import org.sonar.db.DbSession; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.user.GroupDto; import org.sonar.server.user.UserSession; @@ -68,7 +68,7 @@ public class DeleteAction implements UserGroupsWsAction { public void handle(Request request, Response response) throws Exception { try (DbSession dbSession = dbClient.openSession(false)) { GroupDto group = support.findGroupDto(dbSession, request); - userSession.checkPermission(OrganizationPermission.ADMINISTER); + userSession.checkPermission(GlobalPermission.ADMINISTER); support.checkGroupIsNotDefault(dbSession, group); checkNotTryingToDeleteLastAdminGroup(dbSession, group); @@ -85,7 +85,7 @@ public class DeleteAction implements UserGroupsWsAction { private void checkNotTryingToDeleteLastAdminGroup(DbSession dbSession, GroupDto group) { int remaining = dbClient.authorizationDao().countUsersWithGlobalPermissionExcludingGroup(dbSession, - OrganizationPermission.ADMINISTER.getKey(), group.getUuid()); + GlobalPermission.ADMINISTER.getKey(), group.getUuid()); checkArgument(remaining > 0, "The last system admin group cannot be deleted"); } diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/RemoveUserAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/RemoveUserAction.java index 556cf7c4872..b1b41d77330 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/RemoveUserAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/RemoveUserAction.java @@ -26,7 +26,7 @@ import org.sonar.api.server.ws.WebService.NewAction; import org.sonar.api.server.ws.WebService.NewController; import org.sonar.db.DbClient; import org.sonar.db.DbSession; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.user.GroupDto; import org.sonar.db.user.UserDto; import org.sonar.server.user.UserSession; @@ -75,7 +75,7 @@ public class RemoveUserAction implements UserGroupsWsAction { try (DbSession dbSession = dbClient.openSession(false)) { GroupDto group = support.findGroupDto(dbSession, request); - userSession.checkPermission(OrganizationPermission.ADMINISTER); + userSession.checkPermission(GlobalPermission.ADMINISTER); support.checkGroupIsNotDefault(dbSession, group); String login = request.mandatoryParam(PARAM_LOGIN); @@ -95,7 +95,7 @@ public class RemoveUserAction implements UserGroupsWsAction { */ private void ensureLastAdminIsNotRemoved(DbSession dbSession, GroupDto group, UserDto user) { int remainingAdmins = dbClient.authorizationDao().countUsersWithGlobalPermissionExcludingGroupMember(dbSession, - OrganizationPermission.ADMINISTER.getKey(), group.getUuid(), user.getUuid()); + GlobalPermission.ADMINISTER.getKey(), group.getUuid(), user.getUuid()); checkRequest(remainingAdmins > 0, "The last administrator user cannot be removed"); } diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/SearchAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/SearchAction.java index 45aed86a620..0b7bbc87da1 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/SearchAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/SearchAction.java @@ -41,7 +41,7 @@ import org.sonar.server.usergroups.DefaultGroupFinder; import static java.util.Optional.ofNullable; import static org.apache.commons.lang.StringUtils.defaultIfBlank; import static org.sonar.api.utils.Paging.forPageIndex; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.server.es.SearchOptions.MAX_PAGE_SIZE; import static org.sonar.server.ws.WsUtils.writeProtobuf; import static org.sonarqube.ws.UserGroups.Group; diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/UpdateAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/UpdateAction.java index 03f2f5b7c06..11204fa47de 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/UpdateAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/UpdateAction.java @@ -35,7 +35,7 @@ import org.sonarqube.ws.UserGroups; import static java.lang.String.format; import static org.sonar.api.user.UserGroupValidation.GROUP_NAME_MAX_LENGTH; import static org.sonar.core.util.Uuids.UUID_EXAMPLE_01; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.server.exceptions.NotFoundException.checkFound; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_CURRENT_NAME; import static org.sonar.server.usergroups.ws.GroupWsSupport.DESCRIPTION_MAX_LENGTH; diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/UsersAction.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/UsersAction.java index 99592167e26..5ac37a9f653 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/UsersAction.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/usergroups/ws/UsersAction.java @@ -31,7 +31,7 @@ import org.sonar.api.utils.Paging; import org.sonar.api.utils.text.JsonWriter; import org.sonar.db.DbClient; import org.sonar.db.DbSession; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.user.UserMembershipDto; import org.sonar.db.user.UserMembershipQuery; import org.sonar.server.permission.GroupUuid; @@ -82,7 +82,7 @@ public class UsersAction implements UserGroupsWsAction { try (DbSession dbSession = dbClient.openSession(false)) { GroupUuid group = support.findGroup(dbSession, request); - userSession.checkPermission(OrganizationPermission.ADMINISTER); + userSession.checkPermission(GlobalPermission.ADMINISTER); UserMembershipQuery query = UserMembershipQuery.builder() .groupUuid(group.getUuid()) diff --git a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/webhook/ws/WebhookSupport.java b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/webhook/ws/WebhookSupport.java index 9bdcdd013a4..7b2047d375d 100644 --- a/server/sonar-webserver-webapi/src/main/java/org/sonar/server/webhook/ws/WebhookSupport.java +++ b/server/sonar-webserver-webapi/src/main/java/org/sonar/server/webhook/ws/WebhookSupport.java @@ -30,7 +30,7 @@ import org.sonar.server.user.UserSession; import static java.lang.String.format; import static org.sonar.api.web.UserRole.ADMIN; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.process.ProcessProperties.Property.SONAR_VALIDATE_WEBHOOKS; public class WebhookSupport { diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/branch/pr/ws/ListActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/branch/pr/ws/ListActionTest.java index f2dc15cb367..66d889ba396 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/branch/pr/ws/ListActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/branch/pr/ws/ListActionTest.java @@ -36,7 +36,7 @@ import org.sonar.db.component.ComponentTesting; import org.sonar.db.component.ResourceTypesRule; import org.sonar.db.metric.MetricDto; import org.sonar.db.organization.OrganizationDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.protobuf.DbProjectBranches; import org.sonar.db.rule.RuleDefinitionDto; import org.sonar.server.component.ComponentFinder; @@ -387,7 +387,7 @@ public class ListActionTest { @Test public void does_not_fail_when_only_scan_permission_on_organization() { OrganizationDto organization = db.organizations().insert(); - userSession.logIn().addPermission(OrganizationPermission.SCAN); + userSession.logIn().addPermission(GlobalPermission.SCAN); ComponentDto project = db.components().insertPublicProject(organization); db.components().insertProjectBranch(project, b -> b.setKey("123") diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/ce/queue/BranchReportSubmitterTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/ce/queue/BranchReportSubmitterTest.java index 5dd4af51142..deed7eb34fe 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/ce/queue/BranchReportSubmitterTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/ce/queue/BranchReportSubmitterTest.java @@ -74,8 +74,8 @@ import static org.sonar.core.permission.GlobalPermissions.SCAN_EXECUTION; import static org.sonar.core.util.stream.MoreCollectors.uniqueIndex; import static org.sonar.db.component.ComponentTesting.newBranchDto; import static org.sonar.db.component.ComponentTesting.newPrivateProjectDto; -import static org.sonar.db.permission.OrganizationPermission.PROVISION_PROJECTS; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.PROVISION_PROJECTS; +import static org.sonar.db.permission.GlobalPermission.SCAN; /** * Tests of {@link ReportSubmitter} when branch support is installed. diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/ce/queue/ReportSubmitterTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/ce/queue/ReportSubmitterTest.java index e6215530e5c..c7468e0623a 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/ce/queue/ReportSubmitterTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/ce/queue/ReportSubmitterTest.java @@ -40,7 +40,7 @@ import org.sonar.db.ce.CeTaskTypes; import org.sonar.db.component.ComponentDto; import org.sonar.db.component.ComponentTesting; import org.sonar.db.organization.OrganizationDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.user.UserDto; import org.sonar.server.component.ComponentUpdater; import org.sonar.server.es.TestProjectIndexers; @@ -68,8 +68,8 @@ import static org.mockito.Mockito.when; import static org.sonar.core.permission.GlobalPermissions.SCAN_EXECUTION; import static org.sonar.core.util.stream.MoreCollectors.uniqueIndex; import static org.sonar.db.component.ComponentTesting.newModuleDto; -import static org.sonar.db.permission.OrganizationPermission.PROVISION_PROJECTS; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.PROVISION_PROJECTS; +import static org.sonar.db.permission.GlobalPermission.SCAN; public class ReportSubmitterTest { @@ -106,7 +106,7 @@ public class ReportSubmitterTest { @Test public void submit_with_characteristics_fails_with_ISE_when_no_branch_support_delegate() { userSession - .addPermission(OrganizationPermission.SCAN) + .addPermission(GlobalPermission.SCAN) .addPermission(PROVISION_PROJECTS); mockSuccessfulPrepareSubmitCall(); when(permissionTemplateService.wouldUserHaveScanPermissionWithDefaultTemplate(any(), any(), eq(PROJECT_KEY))) @@ -125,7 +125,7 @@ public class ReportSubmitterTest { @Test public void submit_stores_report() { userSession - .addPermission(OrganizationPermission.SCAN) + .addPermission(GlobalPermission.SCAN) .addPermission(PROVISION_PROJECTS); mockSuccessfulPrepareSubmitCall(); when(permissionTemplateService.wouldUserHaveScanPermissionWithDefaultTemplate(any(), any(), eq(PROJECT_KEY))) @@ -157,7 +157,7 @@ public class ReportSubmitterTest { public void provision_project_if_does_not_exist() { OrganizationDto organization = db.organizations().insert(); userSession - .addPermission(OrganizationPermission.SCAN) + .addPermission(GlobalPermission.SCAN) .addPermission(PROVISION_PROJECTS); mockSuccessfulPrepareSubmitCall(); when(permissionTemplateService.wouldUserHaveScanPermissionWithDefaultTemplate(any(DbSession.class), any(), eq(PROJECT_KEY))).thenReturn(true); @@ -178,7 +178,7 @@ public class ReportSubmitterTest { OrganizationDto organization = db.organizations().insert(); userSession .logIn(user) - .addPermission(OrganizationPermission.SCAN) + .addPermission(GlobalPermission.SCAN) .addPermission(PROVISION_PROJECTS); mockSuccessfulPrepareSubmitCall(); when(permissionTemplateService.wouldUserHaveScanPermissionWithDefaultTemplate(any(DbSession.class), any(), eq(PROJECT_KEY))).thenReturn(true); @@ -193,7 +193,7 @@ public class ReportSubmitterTest { @Test public void do_no_add_favorite_when_no_project_creator_permission_on_permission_template() { userSession - .addPermission(OrganizationPermission.SCAN) + .addPermission(GlobalPermission.SCAN) .addPermission(PROVISION_PROJECTS); when(permissionTemplateService.wouldUserHaveScanPermissionWithDefaultTemplate(any(DbSession.class), any(), eq(PROJECT_KEY))) .thenReturn(true); @@ -213,7 +213,7 @@ public class ReportSubmitterTest { OrganizationDto organization = db.organizations().insert(); userSession .logIn(user) - .addPermission(OrganizationPermission.SCAN) + .addPermission(GlobalPermission.SCAN) .addPermission(PROVISION_PROJECTS); mockSuccessfulPrepareSubmitCall(); when(permissionTemplateService.wouldUserHaveScanPermissionWithDefaultTemplate(any(DbSession.class), any(), eq(PROJECT_KEY))).thenReturn(true); @@ -228,7 +228,7 @@ public class ReportSubmitterTest { @Test public void submit_a_report_on_new_project_with_scan_permission_on_organization() { userSession - .addPermission(OrganizationPermission.SCAN) + .addPermission(GlobalPermission.SCAN) .addPermission(PROVISION_PROJECTS); mockSuccessfulPrepareSubmitCall(); when(permissionTemplateService.wouldUserHaveScanPermissionWithDefaultTemplate(any(DbSession.class), any(), eq(PROJECT_KEY))) diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/ce/ws/TaskActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/ce/ws/TaskActionTest.java index 1914cfd9283..9f2ebe3f407 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/ce/ws/TaskActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/ce/ws/TaskActionTest.java @@ -42,7 +42,7 @@ import org.sonar.db.ce.CeTaskMessageType; import org.sonar.db.ce.CeTaskTypes; import org.sonar.db.component.ComponentDto; import org.sonar.db.organization.OrganizationDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.user.UserDto; import org.sonar.server.exceptions.ForbiddenException; import org.sonar.server.exceptions.NotFoundException; @@ -57,7 +57,7 @@ import static org.sonar.core.permission.GlobalPermissions.SCAN_EXECUTION; import static org.sonar.db.ce.CeTaskCharacteristicDto.BRANCH_KEY; import static org.sonar.db.ce.CeTaskCharacteristicDto.BRANCH_TYPE_KEY; import static org.sonar.db.component.BranchType.BRANCH; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.SCAN; public class TaskActionTest { @@ -469,7 +469,7 @@ public class TaskActionTest { @Test public void get_warnings_on_private_project_archived_task_if_scan_on_organization() { - userSession.logIn().addPermission(OrganizationPermission.SCAN); + userSession.logIn().addPermission(GlobalPermission.SCAN); getWarningsImpl(createAndPersistArchivedTask(privateProject)); } diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/GroupPermissionChangerTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/GroupPermissionChangerTest.java index c8573b46936..8d06bddfa35 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/GroupPermissionChangerTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/GroupPermissionChangerTest.java @@ -34,17 +34,17 @@ import org.sonar.core.util.Uuids; import org.sonar.db.DbTester; import org.sonar.db.component.ComponentDto; import org.sonar.db.component.ResourceTypesRule; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.permission.GroupPermissionDto; -import org.sonar.db.permission.OrganizationPermission; import org.sonar.db.user.GroupDto; import org.sonar.db.user.UserDto; import org.sonar.server.exceptions.BadRequestException; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.fail; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; -import static org.sonar.db.permission.OrganizationPermission.PROVISION_PROJECTS; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.PROVISION_PROJECTS; public class GroupPermissionChangerTest { @@ -316,7 +316,7 @@ public class GroupPermissionChangerTest { GroupUuidOrAnyone groupUuid = GroupUuidOrAnyone.from(group); permissionService.getGlobalPermissions().stream() - .map(OrganizationPermission::getKey) + .map(GlobalPermission::getKey) .filter(perm -> !UserRole.ADMIN.equals(perm) && !GlobalPermissions.SCAN_EXECUTION.equals(perm)) .forEach(perm -> { try { @@ -334,7 +334,7 @@ public class GroupPermissionChangerTest { GroupUuidOrAnyone groupUuid = GroupUuidOrAnyone.from(group); permissionService.getGlobalPermissions().stream() - .map(OrganizationPermission::getKey) + .map(GlobalPermission::getKey) .filter(perm -> !UserRole.ADMIN.equals(perm) && !GlobalPermissions.SCAN_EXECUTION.equals(perm)) .forEach(perm -> { try { @@ -353,7 +353,7 @@ public class GroupPermissionChangerTest { permissionService.getAllProjectPermissions() .stream() - .filter(perm -> !GlobalPermissions.SCAN_EXECUTION.equals(perm) && !OrganizationPermission.ADMINISTER.getKey().equals(perm)) + .filter(perm -> !GlobalPermissions.SCAN_EXECUTION.equals(perm) && !GlobalPermission.ADMINISTER.getKey().equals(perm)) .forEach(permission -> { try { apply(new GroupPermissionChange(PermissionChange.Operation.ADD, permission, null, groupUuid, permissionService)); diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/PermissionTemplateServiceTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/PermissionTemplateServiceTest.java index a99fd41812b..dc934d293e9 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/PermissionTemplateServiceTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/PermissionTemplateServiceTest.java @@ -43,9 +43,9 @@ import static org.assertj.core.api.Assertions.assertThat; import static org.sonar.api.resources.Qualifiers.APP; import static org.sonar.api.resources.Qualifiers.PROJECT; import static org.sonar.api.resources.Qualifiers.VIEW; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; -import static org.sonar.db.permission.OrganizationPermission.PROVISION_PROJECTS; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.PROVISION_PROJECTS; +import static org.sonar.db.permission.GlobalPermission.SCAN; public class PermissionTemplateServiceTest { diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/UserPermissionChangerTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/UserPermissionChangerTest.java index 56100e16906..79aca80b2b8 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/UserPermissionChangerTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/UserPermissionChangerTest.java @@ -31,7 +31,7 @@ import org.sonar.core.util.SequenceUuidFactory; import org.sonar.db.DbTester; import org.sonar.db.component.ComponentDto; import org.sonar.db.component.ResourceTypesRule; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.user.GroupDto; import org.sonar.db.user.UserDto; import org.sonar.server.exceptions.BadRequestException; @@ -44,9 +44,9 @@ import static org.sonar.api.web.UserRole.USER; import static org.sonar.core.permission.GlobalPermissions.QUALITY_GATE_ADMIN; import static org.sonar.core.permission.GlobalPermissions.SCAN_EXECUTION; import static org.sonar.core.permission.GlobalPermissions.SYSTEM_ADMIN; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.SCAN; import static org.sonar.server.permission.PermissionChange.Operation.ADD; import static org.sonar.server.permission.PermissionChange.Operation.REMOVE; @@ -88,11 +88,11 @@ public class UserPermissionChangerTest { @Test public void apply_removes_any_organization_permission_to_user() { // give ADMIN perm to user2 so that user1 is not the only one with this permission and it can be removed from user1 - db.users().insertPermissionOnUser(user2, OrganizationPermission.ADMINISTER); + db.users().insertPermissionOnUser(user2, GlobalPermission.ADMINISTER); permissionService.getGlobalPermissions().stream() .forEach(perm -> db.users().insertPermissionOnUser(user1, perm)); assertThat(db.users().selectPermissionsOfUser(user1)) - .containsOnly(permissionService.getGlobalPermissions().toArray(new OrganizationPermission[0])); + .containsOnly(permissionService.getGlobalPermissions().toArray(new GlobalPermission[0])); permissionService.getGlobalPermissions().stream() .forEach(perm -> { diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/AddGroupActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/AddGroupActionTest.java index a94d2248a65..3214b6cd0b3 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/AddGroupActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/AddGroupActionTest.java @@ -50,7 +50,7 @@ import static org.sonar.db.component.ComponentTesting.newFileDto; import static org.sonar.db.component.ComponentTesting.newModuleDto; import static org.sonar.db.component.ComponentTesting.newPrivateProjectDto; import static org.sonar.db.component.ComponentTesting.newSubView; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.SCAN; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_GROUP_ID; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_GROUP_NAME; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PERMISSION; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/AddUserActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/AddUserActionTest.java index 436a0f5c130..f699e94ee56 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/AddUserActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/AddUserActionTest.java @@ -45,7 +45,7 @@ import static org.sonar.db.component.ComponentTesting.newFileDto; import static org.sonar.db.component.ComponentTesting.newModuleDto; import static org.sonar.db.component.ComponentTesting.newSubView; import static org.sonar.db.component.ComponentTesting.newView; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PERMISSION; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PROJECT_ID; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PROJECT_KEY; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/BasePermissionWsTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/BasePermissionWsTest.java index 2002bc7dc19..2171d1f63b5 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/BasePermissionWsTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/BasePermissionWsTest.java @@ -43,7 +43,7 @@ import org.sonar.server.usergroups.ws.GroupWsSupport; import org.sonar.server.ws.TestRequest; import org.sonar.server.ws.WsActionTester; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.db.permission.template.PermissionTemplateTesting.newPermissionTemplateDto; public abstract class BasePermissionWsTest { diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/GroupsActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/GroupsActionTest.java index 6ebcbe04037..cf25ffdb81d 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/GroupsActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/GroupsActionTest.java @@ -47,8 +47,8 @@ import static org.sonar.api.web.UserRole.ISSUE_ADMIN; import static org.sonar.core.permission.GlobalPermissions.SCAN_EXECUTION; import static org.sonar.db.component.ComponentTesting.newPrivateProjectDto; import static org.sonar.db.component.ComponentTesting.newView; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.SCAN; import static org.sonar.test.JsonAssert.assertJson; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PERMISSION; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PROJECT_ID; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/RemoveGroupActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/RemoveGroupActionTest.java index 692e35080c2..0514202b70b 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/RemoveGroupActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/RemoveGroupActionTest.java @@ -50,8 +50,8 @@ import static org.sonar.db.component.ComponentTesting.newDirectory; import static org.sonar.db.component.ComponentTesting.newFileDto; import static org.sonar.db.component.ComponentTesting.newModuleDto; import static org.sonar.db.component.ComponentTesting.newSubView; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; -import static org.sonar.db.permission.OrganizationPermission.PROVISION_PROJECTS; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.PROVISION_PROJECTS; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_GROUP_ID; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_GROUP_NAME; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PERMISSION; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/RemoveUserActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/RemoveUserActionTest.java index 7596ae64cb3..8afe2a7294f 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/RemoveUserActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/RemoveUserActionTest.java @@ -47,9 +47,9 @@ import static org.sonar.db.component.ComponentTesting.newDirectory; import static org.sonar.db.component.ComponentTesting.newFileDto; import static org.sonar.db.component.ComponentTesting.newModuleDto; import static org.sonar.db.component.ComponentTesting.newSubView; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; -import static org.sonar.db.permission.OrganizationPermission.PROVISION_PROJECTS; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.PROVISION_PROJECTS; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PERMISSION; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PROJECT_ID; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PROJECT_KEY; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/SearchGlobalPermissionsActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/SearchGlobalPermissionsActionTest.java index 2c1087d8c79..253fccbdbbf 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/SearchGlobalPermissionsActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/SearchGlobalPermissionsActionTest.java @@ -35,7 +35,7 @@ import org.sonarqube.ws.Permissions; import static org.assertj.core.api.Assertions.assertThat; import static org.sonar.core.permission.GlobalPermissions.SCAN_EXECUTION; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.SCAN; public class SearchGlobalPermissionsActionTest extends BasePermissionWsTest { diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/SearchProjectPermissionsActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/SearchProjectPermissionsActionTest.java index 82832d8f0a1..481abe2fc33 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/SearchProjectPermissionsActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/SearchProjectPermissionsActionTest.java @@ -47,7 +47,7 @@ import static org.sonar.api.server.ws.WebService.Param.TEXT_QUERY; import static org.sonar.db.component.ComponentTesting.newPrivateProjectDto; import static org.sonar.db.component.ComponentTesting.newProjectCopy; import static org.sonar.db.component.ComponentTesting.newView; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.test.JsonAssert.assertJson; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PROJECT_ID; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PROJECT_KEY; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/UsersActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/UsersActionTest.java index fbde66d63b2..327a2d0f5ce 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/UsersActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/UsersActionTest.java @@ -45,11 +45,11 @@ import static org.sonar.api.server.ws.WebService.Param.PAGE_SIZE; import static org.sonar.api.server.ws.WebService.Param.TEXT_QUERY; import static org.sonar.api.web.UserRole.ISSUE_ADMIN; import static org.sonar.core.permission.GlobalPermissions.SYSTEM_ADMIN; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; -import static org.sonar.db.permission.OrganizationPermission.PROVISION_PROJECTS; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.PROVISION_PROJECTS; +import static org.sonar.db.permission.GlobalPermission.SCAN; import static org.sonar.db.user.UserTesting.newUserDto; import static org.sonar.test.JsonAssert.assertJson; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PERMISSION; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/AddProjectCreatorToTemplateActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/AddProjectCreatorToTemplateActionTest.java index 0eb21c83a3c..eb9c892a0b2 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/AddProjectCreatorToTemplateActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/AddProjectCreatorToTemplateActionTest.java @@ -42,7 +42,7 @@ import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.when; import static org.sonar.core.permission.GlobalPermissions.QUALITY_GATE_ADMIN; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PERMISSION; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_ID; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_NAME; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/AddUserToTemplateActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/AddUserToTemplateActionTest.java index 0ecfd3cbe54..6ca10d1d461 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/AddUserToTemplateActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/AddUserToTemplateActionTest.java @@ -42,7 +42,7 @@ import org.sonar.server.ws.TestRequest; import static org.assertj.core.api.Assertions.assertThat; import static org.sonar.api.web.UserRole.CODEVIEWER; import static org.sonar.api.web.UserRole.ISSUE_ADMIN; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PERMISSION; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_ID; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_NAME; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/ApplyTemplateActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/ApplyTemplateActionTest.java index fe66d54a03a..3b86ceef285 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/ApplyTemplateActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/ApplyTemplateActionTest.java @@ -47,7 +47,7 @@ import static org.assertj.core.api.Assertions.assertThat; import static org.sonar.api.resources.Qualifiers.APP; import static org.sonar.api.resources.Qualifiers.PROJECT; import static org.sonar.api.resources.Qualifiers.VIEW; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.SCAN; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PROJECT_ID; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PROJECT_KEY; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_ID; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/CreateTemplateActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/CreateTemplateActionTest.java index 18277a32122..19a019ae84c 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/CreateTemplateActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/CreateTemplateActionTest.java @@ -31,7 +31,7 @@ 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_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonar.test.JsonAssert.assertJson; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_DESCRIPTION; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_NAME; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/DeleteTemplateActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/DeleteTemplateActionTest.java index 3758937b908..aa68a571b86 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/DeleteTemplateActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/DeleteTemplateActionTest.java @@ -53,7 +53,7 @@ import static org.assertj.core.api.Assertions.assertThat; import static org.sonar.api.resources.Qualifiers.APP; import static org.sonar.api.resources.Qualifiers.PROJECT; import static org.sonar.api.resources.Qualifiers.VIEW; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_ID; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_NAME; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/RemoveGroupFromTemplateActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/RemoveGroupFromTemplateActionTest.java index 5d7d1cb552c..92e0639b856 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/RemoveGroupFromTemplateActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/RemoveGroupFromTemplateActionTest.java @@ -46,7 +46,7 @@ import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.tuple; import static org.sonar.api.security.DefaultGroups.ANYONE; import static org.sonar.api.web.UserRole.CODEVIEWER; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.SCAN; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_GROUP_ID; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_GROUP_NAME; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PERMISSION; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/SearchTemplatesActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/SearchTemplatesActionTest.java index d79230d8c90..fb18e89d4eb 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/SearchTemplatesActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/SearchTemplatesActionTest.java @@ -48,7 +48,7 @@ import static org.sonar.api.server.ws.WebService.Param.TEXT_QUERY; import static org.sonar.core.util.Uuids.UUID_EXAMPLE_01; import static org.sonar.core.util.Uuids.UUID_EXAMPLE_02; import static org.sonar.core.util.Uuids.UUID_EXAMPLE_10; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.db.permission.template.PermissionTemplateTesting.newPermissionTemplateDto; import static org.sonar.test.JsonAssert.assertJson; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/TemplateUsersActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/TemplateUsersActionTest.java index afba21ddc2a..f30838390be 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/TemplateUsersActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/TemplateUsersActionTest.java @@ -49,7 +49,7 @@ import static org.sonar.api.web.UserRole.ADMIN; import static org.sonar.api.web.UserRole.CODEVIEWER; import static org.sonar.api.web.UserRole.ISSUE_ADMIN; import static org.sonar.api.web.UserRole.USER; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.SCAN; import static org.sonar.db.permission.PermissionQuery.DEFAULT_PAGE_SIZE; import static org.sonar.db.permission.template.PermissionTemplateTesting.newPermissionTemplateUserDto; import static org.sonar.db.user.UserTesting.newUserDto; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/UpdateTemplateActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/UpdateTemplateActionTest.java index 8105b6f7b2c..1531b84ecc3 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/UpdateTemplateActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/permission/ws/template/UpdateTemplateActionTest.java @@ -35,7 +35,7 @@ import org.sonar.server.ws.TestRequest; import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.when; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.SCAN; import static org.sonar.db.permission.template.PermissionTemplateTesting.newPermissionTemplateDto; import static org.sonar.test.JsonAssert.assertJson; import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_DESCRIPTION; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/project/ws/BulkDeleteActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/project/ws/BulkDeleteActionTest.java index ed0b97cb70f..3cb2e6c5272 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/project/ws/BulkDeleteActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/project/ws/BulkDeleteActionTest.java @@ -63,7 +63,7 @@ import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verifyZeroInteractions; import static org.sonar.api.utils.DateUtils.formatDate; import static org.sonar.db.component.SnapshotTesting.newAnalysis; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonarqube.ws.client.project.ProjectsWsParameters.PARAM_ANALYZED_BEFORE; import static org.sonarqube.ws.client.project.ProjectsWsParameters.PARAM_ON_PROVISIONED_ONLY; import static org.sonarqube.ws.client.project.ProjectsWsParameters.PARAM_ORGANIZATION; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/project/ws/CreateActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/project/ws/CreateActionTest.java index cc967de62e8..ebc7449281e 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/project/ws/CreateActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/project/ws/CreateActionTest.java @@ -58,7 +58,7 @@ import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.doThrow; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; -import static org.sonar.db.permission.OrganizationPermission.PROVISION_PROJECTS; +import static org.sonar.db.permission.GlobalPermission.PROVISION_PROJECTS; import static org.sonar.server.project.Visibility.PRIVATE; import static org.sonar.server.project.ws.ProjectsWsSupport.PARAM_ORGANIZATION; import static org.sonar.test.JsonAssert.assertJson; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/project/ws/DeleteActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/project/ws/DeleteActionTest.java index 36f82096a09..8b4b6ce97ea 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/project/ws/DeleteActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/project/ws/DeleteActionTest.java @@ -54,7 +54,7 @@ import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; import static org.sonar.api.web.UserRole.ADMIN; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.db.user.UserTesting.newUserDto; import static org.sonar.server.component.TestComponentFinder.from; import static org.sonarqube.ws.client.project.ProjectsWsParameters.PARAM_PROJECT; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/project/ws/SearchActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/project/ws/SearchActionTest.java index 3b906adc5c5..67a52e3fb8a 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/project/ws/SearchActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/project/ws/SearchActionTest.java @@ -64,8 +64,8 @@ import static org.sonar.db.component.ComponentTesting.newModuleDto; import static org.sonar.db.component.ComponentTesting.newPrivateProjectDto; import static org.sonar.db.component.ComponentTesting.newView; import static org.sonar.db.component.SnapshotTesting.newAnalysis; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonar.test.JsonAssert.assertJson; import static org.sonarqube.ws.client.project.ProjectsWsParameters.PARAM_ANALYZED_BEFORE; import static org.sonarqube.ws.client.project.ProjectsWsParameters.PARAM_ON_PROVISIONED_ONLY; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/project/ws/UpdateVisibilityActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/project/ws/UpdateVisibilityActionTest.java index 24608118dde..35af1b3a973 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/project/ws/UpdateVisibilityActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/project/ws/UpdateVisibilityActionTest.java @@ -44,8 +44,8 @@ import org.sonar.db.component.ComponentDto; import org.sonar.db.component.ComponentTesting; import org.sonar.db.component.ResourceTypesRule; import org.sonar.db.organization.OrganizationDto; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.permission.GroupPermissionDto; -import org.sonar.db.permission.OrganizationPermission; import org.sonar.db.permission.UserPermissionDto; import org.sonar.db.user.GroupDto; import org.sonar.db.user.UserDto; @@ -84,8 +84,8 @@ public class UpdateVisibilityActionTest { private static final String PUBLIC = "public"; private static final String PRIVATE = "private"; - private static final Set ORGANIZATION_PERMISSIONS_NAME_SET = stream(OrganizationPermission.values()).map(OrganizationPermission::getKey) - .collect(MoreCollectors.toSet(OrganizationPermission.values().length)); + private static final Set ORGANIZATION_PERMISSIONS_NAME_SET = stream(GlobalPermission.values()).map(GlobalPermission::getKey) + .collect(MoreCollectors.toSet(GlobalPermission.values().length)); @Rule public DbTester dbTester = DbTester.create(System2.INSTANCE); @@ -252,7 +252,7 @@ public class UpdateVisibilityActionTest { request.setParam(PARAM_PROJECT, project.getDbKey()) .setParam(PARAM_VISIBILITY, randomVisibility); userSessionRule.addProjectPermission(UserRole.ISSUE_ADMIN, project); - Arrays.stream(OrganizationPermission.values()) + Arrays.stream(GlobalPermission.values()) .forEach(perm -> userSessionRule.addPermission(perm)); request.setParam(PARAM_PROJECT, project.getDbKey()) .setParam(PARAM_VISIBILITY, randomVisibility); @@ -641,7 +641,7 @@ public class UpdateVisibilityActionTest { } private void unsafeGiveAllPermissionsToRootComponent(ComponentDto component, UserDto user, GroupDto group, OrganizationDto organization) { - Arrays.stream(OrganizationPermission.values()) + Arrays.stream(GlobalPermission.values()) .forEach(organizationPermission -> { dbTester.users().insertPermissionOnAnyone(organizationPermission); dbTester.users().insertPermissionOnGroup(group, organizationPermission); diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/CopyActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/CopyActionTest.java index 4e244722d2b..acdc55d28bb 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/CopyActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/CopyActionTest.java @@ -52,8 +52,8 @@ import static java.lang.String.format; import static java.util.Optional.ofNullable; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.AssertionsForClassTypes.tuple; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_ID; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_NAME; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_ORGANIZATION; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/CreateActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/CreateActionTest.java index ef554a77391..ff1c60240f2 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/CreateActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/CreateActionTest.java @@ -49,7 +49,7 @@ import org.sonar.server.ws.WsActionTester; import org.sonarqube.ws.Qualitygates.CreateResponse; import static org.assertj.core.api.Assertions.assertThat; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_NAME; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_ORGANIZATION; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/CreateConditionActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/CreateConditionActionTest.java index 59890ea61cf..3b1aeff9bb2 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/CreateConditionActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/CreateConditionActionTest.java @@ -49,7 +49,7 @@ import static java.lang.String.format; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.tuple; import static org.sonar.api.measures.Metric.ValueType.INT; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_ERROR; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_GATE_ID; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_METRIC; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/DeleteConditionActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/DeleteConditionActionTest.java index f96d4205850..80edcc1c8e8 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/DeleteConditionActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/DeleteConditionActionTest.java @@ -42,8 +42,8 @@ import static java.lang.String.format; import static java.net.HttpURLConnection.HTTP_NO_CONTENT; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.tuple; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_ID; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_ORGANIZATION; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/DeselectActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/DeselectActionTest.java index fed64ece08c..77e53758568 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/DeselectActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/DeselectActionTest.java @@ -44,8 +44,8 @@ import org.sonar.server.ws.WsActionTester; import static java.lang.String.format; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.tuple; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; public class DeselectActionTest { diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/DestroyActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/DestroyActionTest.java index f1b845597b3..68e47b68c89 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/DestroyActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/DestroyActionTest.java @@ -45,8 +45,8 @@ import static java.lang.String.valueOf; import static org.apache.commons.lang.StringUtils.EMPTY; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.tuple; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_ID; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_ORGANIZATION; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/ListActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/ListActionTest.java index b1c8372470d..c8e43a55fb6 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/ListActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/ListActionTest.java @@ -40,8 +40,8 @@ import org.sonarqube.ws.Qualitygates.ListWsResponse.QualityGate; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.AssertionsForClassTypes.tuple; import static org.sonar.db.organization.OrganizationDto.Subscription.PAID; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonar.test.JsonAssert.assertJson; import static org.sonarqube.ws.Qualitygates.ListWsResponse; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/RenameActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/RenameActionTest.java index 92a4658ae49..64a115c90b7 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/RenameActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/RenameActionTest.java @@ -39,8 +39,8 @@ import org.sonarqube.ws.Qualitygates.QualityGate; import static java.lang.String.format; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.AssertionsForClassTypes.tuple; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; public class RenameActionTest { diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/SearchActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/SearchActionTest.java index cd4834ed104..51a450dbd4d 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/SearchActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/SearchActionTest.java @@ -46,7 +46,7 @@ import static org.sonar.api.server.ws.WebService.SelectionMode.ALL; import static org.sonar.api.server.ws.WebService.SelectionMode.DESELECTED; import static org.sonar.api.server.ws.WebService.SelectionMode.SELECTED; import static org.sonar.api.web.UserRole.USER; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_GATE_ID; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_ORGANIZATION; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_PAGE; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/SelectActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/SelectActionTest.java index f5e8e043d8e..2a733e6e172 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/SelectActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/SelectActionTest.java @@ -42,7 +42,7 @@ import static java.lang.String.format; import static org.assertj.core.api.Assertions.assertThat; import static org.sonar.api.web.UserRole.ADMIN; import static org.sonar.api.web.UserRole.ISSUE_ADMIN; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; public class SelectActionTest { diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/SetAsDefaultActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/SetAsDefaultActionTest.java index 5c88160742a..009c9df9c38 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/SetAsDefaultActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/SetAsDefaultActionTest.java @@ -34,7 +34,7 @@ import org.sonar.server.ws.WsActionTester; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.AssertionsForClassTypes.tuple; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; public class SetAsDefaultActionTest { @Rule diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/ShowActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/ShowActionTest.java index 80abefb2466..8224bfc5547 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/ShowActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/ShowActionTest.java @@ -46,8 +46,8 @@ import static java.lang.String.format; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.AssertionsForClassTypes.tuple; import static org.sonar.db.organization.OrganizationDto.Subscription.PAID; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonar.test.JsonAssert.assertJson; import static org.sonarqube.ws.Qualitygates.Actions; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/UpdateConditionActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/UpdateConditionActionTest.java index d4c25208396..f64c5dd9f69 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/UpdateConditionActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualitygate/ws/UpdateConditionActionTest.java @@ -50,7 +50,7 @@ import static java.lang.String.format; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.tuple; import static org.sonar.api.measures.Metric.ValueType.INT; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_ERROR; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_ID; import static org.sonar.server.qualitygate.ws.QualityGatesWsParameters.PARAM_METRIC; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/ActivateRuleActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/ActivateRuleActionTest.java index 1122f9e98c2..cb18e7d7b0e 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/ActivateRuleActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/ActivateRuleActionTest.java @@ -33,8 +33,7 @@ import org.sonar.api.server.ws.WebService; import org.sonar.db.DbClient; import org.sonar.db.DbSession; import org.sonar.db.DbTester; -import org.sonar.db.organization.OrganizationDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.qualityprofile.QProfileDto; import org.sonar.db.rule.RuleDefinitionDto; import org.sonar.db.rule.RuleTesting; @@ -117,7 +116,7 @@ public class ActivateRuleActionTest { @Test public void fail_activate_if_built_in_profile() { - userSession.logIn(db.users().insertUser()).addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn(db.users().insertUser()).addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); QProfileDto qualityProfile = db.qualityProfiles().insert(profile -> profile.setIsBuiltIn(true).setName("Xoo profile").setLanguage("xoo")); TestRequest request = ws.newRequest() @@ -133,7 +132,7 @@ public class ActivateRuleActionTest { @Test public void fail_activate_external_rule() { - userSession.logIn(db.users().insertUser()).addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn(db.users().insertUser()).addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); QProfileDto qualityProfile = db.qualityProfiles().insert(); RuleDefinitionDto rule = db.rules().insert(r -> r.setIsExternal(true)); @@ -150,7 +149,7 @@ public class ActivateRuleActionTest { @Test public void activate_rule() { - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); QProfileDto qualityProfile = db.qualityProfiles().insert(); RuleDefinitionDto rule = db.rules().insert(RuleTesting.randomRuleKey()); TestRequest request = ws.newRequest() diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/ActivateRulesActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/ActivateRulesActionTest.java index d35c583ebcb..f82e13b1373 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/ActivateRulesActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/ActivateRulesActionTest.java @@ -46,7 +46,7 @@ import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonar.server.platform.db.migration.def.VarcharColumnDef.UUID_SIZE; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.PARAM_TARGET_KEY; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/AddGroupActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/AddGroupActionTest.java index 2274b458d62..896f4d8e655 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/AddGroupActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/AddGroupActionTest.java @@ -28,7 +28,7 @@ import org.sonar.core.util.UuidFactory; import org.sonar.core.util.UuidFactoryFast; import org.sonar.db.DbTester; import org.sonar.db.organization.OrganizationDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.qualityprofile.QProfileDto; import org.sonar.db.user.GroupDto; import org.sonar.db.user.UserDto; @@ -77,7 +77,7 @@ public class AddGroupActionTest { public void add_group() { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO)); GroupDto group = db.users().insertGroup(); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); TestResponse response = ws.newRequest() .setParam(PARAM_QUALITY_PROFILE, profile.getName()) @@ -95,7 +95,7 @@ public class AddGroupActionTest { GroupDto group = db.users().insertGroup(); db.qualityProfiles().addGroupPermission(profile, group); assertThat(db.getDbClient().qProfileEditGroupsDao().exists(db.getSession(), profile, group)).isTrue(); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); ws.newRequest() .setParam(PARAM_QUALITY_PROFILE, profile.getName()) @@ -110,7 +110,7 @@ public class AddGroupActionTest { public void qp_administers_can_add_group() { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO)); GroupDto group = db.users().insertGroup(); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); ws.newRequest() .setParam(PARAM_QUALITY_PROFILE, profile.getName()) @@ -159,7 +159,7 @@ public class AddGroupActionTest { public void uses_default_organization_when_no_organization() { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO)); GroupDto group = db.users().insertGroup(); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); ws.newRequest() .setParam(PARAM_QUALITY_PROFILE, profile.getName()) @@ -173,7 +173,7 @@ public class AddGroupActionTest { @Test public void fail_when_group_does_not_exist() { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO)); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); expectedException.expect(NotFoundException.class); expectedException.expectMessage("No group with name 'unknown'"); @@ -188,7 +188,7 @@ public class AddGroupActionTest { @Test public void fail_when_qprofile_does_not_exist() { GroupDto group = db.users().insertGroup(); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); expectedException.expect(NotFoundException.class); expectedException.expectMessage("Quality Profile for language 'xoo' and name 'unknown' does not exist"); @@ -206,7 +206,7 @@ public class AddGroupActionTest { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage("unknown")); UserDto user = db.users().insertUser(); db.organizations().addMember(organization, user); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); expectedException.expect(NotFoundException.class); expectedException.expectMessage(format("Quality Profile for language 'xoo' and name '%s' does not exist", profile.getName())); @@ -224,7 +224,7 @@ public class AddGroupActionTest { UserDto user = db.users().insertUser(); db.organizations().addMember(organization, user); QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO).setIsBuiltIn(true)); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); expectedException.expect(BadRequestException.class); expectedException.expectMessage(String.format("Operation forbidden for built-in Quality Profile '%s' with language 'xoo'", profile.getName())); @@ -242,7 +242,7 @@ public class AddGroupActionTest { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO)); UserDto user = db.users().insertUser(); db.organizations().addMember(organization, user); - userSession.logIn(db.users().insertUser()).addPermission(OrganizationPermission.ADMINISTER_QUALITY_GATES); + userSession.logIn(db.users().insertUser()).addPermission(GlobalPermission.ADMINISTER_QUALITY_GATES); expectedException.expect(ForbiddenException.class); diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/AddProjectActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/AddProjectActionTest.java index 87d641e625d..112f4c2e754 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/AddProjectActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/AddProjectActionTest.java @@ -46,7 +46,7 @@ import org.sonar.server.ws.WsActionTester; import static java.lang.String.format; import static org.assertj.core.api.Assertions.assertThat; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; public class AddProjectActionTest { diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/AddUserActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/AddUserActionTest.java index e21b8148d31..c36a555fb3a 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/AddUserActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/AddUserActionTest.java @@ -28,7 +28,7 @@ import org.sonar.core.util.UuidFactory; import org.sonar.core.util.UuidFactoryFast; import org.sonar.db.DbTester; import org.sonar.db.organization.OrganizationDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.qualityprofile.QProfileDto; import org.sonar.db.user.UserDto; import org.sonar.server.exceptions.BadRequestException; @@ -42,7 +42,7 @@ import org.sonar.server.ws.WsActionTester; import static java.lang.String.format; import static org.assertj.core.api.Assertions.assertThat; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.PARAM_LANGUAGE; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.PARAM_LOGIN; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.PARAM_QUALITY_PROFILE; @@ -79,7 +79,7 @@ public class AddUserActionTest { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO)); UserDto user = db.users().insertUser(); db.organizations().addMember(organization, user); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); TestResponse response = ws.newRequest() .setParam(PARAM_QUALITY_PROFILE, profile.getName()) @@ -99,7 +99,7 @@ public class AddUserActionTest { db.organizations().addMember(organization, user); db.qualityProfiles().addUserPermission(profile, user); assertThat(db.getDbClient().qProfileEditUsersDao().exists(db.getSession(), profile, user)).isTrue(); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); ws.newRequest() .setParam(PARAM_QUALITY_PROFILE, profile.getName()) @@ -116,7 +116,7 @@ public class AddUserActionTest { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO)); UserDto user = db.users().insertUser(); db.organizations().addMember(organization, user); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); ws.newRequest() .setParam(PARAM_QUALITY_PROFILE, profile.getName()) @@ -166,7 +166,7 @@ public class AddUserActionTest { @Test public void fail_when_user_does_not_exist() { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO)); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); expectedException.expect(NotFoundException.class); expectedException.expectMessage("User with login 'unknown' is not found"); @@ -183,7 +183,7 @@ public class AddUserActionTest { OrganizationDto organization = db.organizations().getDefaultOrganization(); UserDto user = db.users().insertUser(); db.organizations().addMember(organization, user); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); expectedException.expect(NotFoundException.class); expectedException.expectMessage("Quality Profile for language 'xoo' and name 'unknown' does not exist"); @@ -201,7 +201,7 @@ public class AddUserActionTest { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage("unknown")); UserDto user = db.users().insertUser(); db.organizations().addMember(organization, user); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); expectedException.expect(NotFoundException.class); expectedException.expectMessage(format("Quality Profile for language 'xoo' and name '%s' does not exist", profile.getName())); @@ -218,7 +218,7 @@ public class AddUserActionTest { UserDto user = db.users().insertUser(); db.organizations().addMember(organization, user); QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO).setIsBuiltIn(true)); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); expectedException.expect(BadRequestException.class); expectedException.expectMessage(String.format("Operation forbidden for built-in Quality Profile '%s' with language 'xoo'", profile.getName())); @@ -236,7 +236,7 @@ public class AddUserActionTest { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO)); UserDto user = db.users().insertUser(); db.organizations().addMember(organization, user); - userSession.logIn(db.users().insertUser()).addPermission(OrganizationPermission.ADMINISTER_QUALITY_GATES); + userSession.logIn(db.users().insertUser()).addPermission(GlobalPermission.ADMINISTER_QUALITY_GATES); expectedException.expect(ForbiddenException.class); diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/ChangeParentActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/ChangeParentActionTest.java index 0f60f04c5bf..258571a4a4a 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/ChangeParentActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/ChangeParentActionTest.java @@ -36,7 +36,6 @@ import org.sonar.api.utils.System2; import org.sonar.db.DbClient; import org.sonar.db.DbSession; import org.sonar.db.DbTester; -import org.sonar.db.organization.OrganizationDto; import org.sonar.db.qualityprofile.ActiveRuleDto; import org.sonar.db.qualityprofile.OrgActiveRuleDto; import org.sonar.db.qualityprofile.QProfileDto; @@ -67,8 +66,7 @@ import static java.util.Arrays.asList; import static java.util.Collections.emptySet; import static org.apache.commons.lang.RandomStringUtils.randomAlphanumeric; import static org.assertj.core.api.Assertions.assertThat; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; -import static org.sonarqube.ws.client.component.ComponentsWsParameters.PARAM_ORGANIZATION; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.PARAM_LANGUAGE; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.PARAM_PARENT_QUALITY_PROFILE; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.PARAM_QUALITY_PROFILE; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/CopyActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/CopyActionTest.java index 5909ea21755..b4ffa852c7c 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/CopyActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/CopyActionTest.java @@ -32,8 +32,7 @@ import org.sonar.api.utils.System2; import org.sonar.core.util.SequenceUuidFactory; import org.sonar.db.DbSession; import org.sonar.db.DbTester; -import org.sonar.db.organization.OrganizationDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.qualityprofile.QProfileDto; import org.sonar.server.exceptions.ForbiddenException; import org.sonar.server.exceptions.UnauthorizedException; @@ -52,7 +51,7 @@ import org.sonar.server.ws.WsActionTester; import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.Mockito.mock; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonar.test.JsonAssert.assertJson; public class CopyActionTest { @@ -219,7 +218,7 @@ public class CopyActionTest { @Test public void throw_ForbiddenException_if_not_profile_administrator_of_organization() { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(A_LANGUAGE)); - userSession.logIn().addPermission(OrganizationPermission.SCAN); + userSession.logIn().addPermission(GlobalPermission.SCAN); expectedException.expect(ForbiddenException.class); expectedException.expectMessage("Insufficient privileges"); @@ -234,7 +233,7 @@ public class CopyActionTest { @Test public void throw_ForbiddenException_if_not_profile_administrator() { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(A_LANGUAGE)); - userSession.logIn().addPermission(OrganizationPermission.SCAN); + userSession.logIn().addPermission(GlobalPermission.SCAN); expectedException.expect(ForbiddenException.class); expectedException.expectMessage("Insufficient privileges"); diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/CreateActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/CreateActionTest.java index d35532ebe26..1ce34fb9165 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/CreateActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/CreateActionTest.java @@ -62,8 +62,8 @@ import org.sonarqube.ws.Qualityprofiles.CreateWsResponse; import org.sonarqube.ws.Qualityprofiles.CreateWsResponse.QualityProfile; import static org.assertj.core.api.Assertions.assertThat; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.SCAN; import static org.sonar.server.language.LanguageTesting.newLanguages; public class CreateActionTest { diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/DeactivateRuleActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/DeactivateRuleActionTest.java index 863b797bc8b..9b4c64f02e0 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/DeactivateRuleActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/DeactivateRuleActionTest.java @@ -32,8 +32,7 @@ import org.sonar.api.server.ws.WebService; import org.sonar.db.DbClient; import org.sonar.db.DbSession; import org.sonar.db.DbTester; -import org.sonar.db.organization.OrganizationDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.qualityprofile.QProfileDto; import org.sonar.db.rule.RuleDefinitionDto; import org.sonar.db.rule.RuleTesting; @@ -87,7 +86,7 @@ public class DeactivateRuleActionTest { @Test public void deactivate_rule_in_default_organization() { - userSession.logIn(db.users().insertUser()).addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn(db.users().insertUser()).addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); QProfileDto qualityProfile = db.qualityProfiles().insert(); RuleDefinitionDto rule = db.rules().insert(RuleTesting.randomRuleKey()); TestRequest request = ws.newRequest() @@ -136,7 +135,7 @@ public class DeactivateRuleActionTest { @Test public void fail_activate_external_rule() { - userSession.logIn(db.users().insertUser()).addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn(db.users().insertUser()).addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); QProfileDto qualityProfile = db.qualityProfiles().insert(); RuleDefinitionDto rule = db.rules().insert(r -> r.setIsExternal(true)); @@ -154,7 +153,7 @@ public class DeactivateRuleActionTest { @Test public void fail_deactivate_if_built_in_profile() { RuleDefinitionDto rule = db.rules().insert(); - userSession.logIn(db.users().insertUser()).addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn(db.users().insertUser()).addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); QProfileDto qualityProfile = db.qualityProfiles().insert(profile -> profile.setIsBuiltIn(true)); TestRequest request = ws.newRequest() diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/DeactivateRulesActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/DeactivateRulesActionTest.java index 174ac849e48..3d90ac7226a 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/DeactivateRulesActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/DeactivateRulesActionTest.java @@ -44,8 +44,8 @@ import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.RETURNS_DEEP_STUBS; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.SCAN; import static org.sonar.server.platform.db.migration.def.VarcharColumnDef.UUID_SIZE; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.PARAM_TARGET_KEY; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/DeleteActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/DeleteActionTest.java index 1c78a8b1cf6..d8482f295d3 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/DeleteActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/DeleteActionTest.java @@ -48,7 +48,7 @@ import org.sonar.server.ws.WsActionTester; import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.Mockito.mock; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.PARAM_KEY; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.PARAM_LANGUAGE; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.PARAM_QUALITY_PROFILE; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/RemoveGroupActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/RemoveGroupActionTest.java index ab1dfc8e846..3f977a4150a 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/RemoveGroupActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/RemoveGroupActionTest.java @@ -25,8 +25,7 @@ import org.junit.rules.ExpectedException; import org.sonar.api.resources.Languages; import org.sonar.api.server.ws.WebService; import org.sonar.db.DbTester; -import org.sonar.db.organization.OrganizationDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.qualityprofile.QProfileDto; import org.sonar.db.user.GroupDto; import org.sonar.db.user.UserDto; @@ -75,7 +74,7 @@ public class RemoveGroupActionTest { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO)); GroupDto group = db.users().insertGroup(); db.qualityProfiles().addGroupPermission(profile, group); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); TestResponse response = ws.newRequest() .setParam(PARAM_QUALITY_PROFILE, profile.getName()) @@ -92,7 +91,7 @@ public class RemoveGroupActionTest { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO)); GroupDto group = db.users().insertGroup(); assertThat(db.getDbClient().qProfileEditGroupsDao().exists(db.getSession(), profile, group)).isFalse(); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); ws.newRequest() .setParam(PARAM_QUALITY_PROFILE, profile.getName()) @@ -108,7 +107,7 @@ public class RemoveGroupActionTest { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO)); GroupDto group = db.users().insertGroup(); db.qualityProfiles().addGroupPermission(profile, group); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); ws.newRequest() .setParam(PARAM_QUALITY_PROFILE, profile.getName()) @@ -142,7 +141,7 @@ public class RemoveGroupActionTest { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO)); GroupDto group = db.users().insertGroup(); db.qualityProfiles().addGroupPermission(profile, group); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); ws.newRequest() .setParam(PARAM_QUALITY_PROFILE, profile.getName()) @@ -156,7 +155,7 @@ public class RemoveGroupActionTest { @Test public void fail_when_group_does_not_exist() { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO)); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); expectedException.expect(NotFoundException.class); expectedException.expectMessage("No group with name 'unknown'"); @@ -171,7 +170,7 @@ public class RemoveGroupActionTest { @Test public void fail_when_qprofile_does_not_exist() { GroupDto group = db.users().insertGroup(); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); expectedException.expect(NotFoundException.class); expectedException.expectMessage("Quality Profile for language 'xoo' and name 'unknown' does not exist"); @@ -187,7 +186,7 @@ public class RemoveGroupActionTest { public void fail_when_wrong_language() { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage("unknown")); GroupDto group = db.users().insertGroup(); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); expectedException.expect(NotFoundException.class); expectedException.expectMessage(format("Quality Profile for language 'xoo' and name '%s' does not exist", profile.getName())); @@ -203,7 +202,7 @@ public class RemoveGroupActionTest { public void fail_when_qp_is_built_in() { GroupDto group = db.users().insertGroup(); QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO).setIsBuiltIn(true)); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); expectedException.expect(BadRequestException.class); expectedException.expectMessage(String.format("Operation forbidden for built-in Quality Profile '%s' with language 'xoo'", profile.getName())); @@ -219,7 +218,7 @@ public class RemoveGroupActionTest { public void fail_when_not_enough_permission() { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO)); GroupDto group = db.users().insertGroup(); - userSession.logIn(db.users().insertUser()).addPermission(OrganizationPermission.ADMINISTER_QUALITY_GATES); + userSession.logIn(db.users().insertUser()).addPermission(GlobalPermission.ADMINISTER_QUALITY_GATES); expectedException.expect(ForbiddenException.class); diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/RemoveProjectActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/RemoveProjectActionTest.java index 7c49f3bcab5..5a9658a68ac 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/RemoveProjectActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/RemoveProjectActionTest.java @@ -47,7 +47,7 @@ import org.sonar.server.ws.WsActionTester; import static java.lang.String.format; import static org.assertj.core.api.Assertions.assertThat; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; public class RemoveProjectActionTest { private static final String LANGUAGE_1 = "xoo"; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/RemoveUserActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/RemoveUserActionTest.java index 448cac2a1bb..7155fdc6a51 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/RemoveUserActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/RemoveUserActionTest.java @@ -26,7 +26,7 @@ import org.sonar.api.resources.Languages; import org.sonar.api.server.ws.WebService; import org.sonar.db.DbTester; import org.sonar.db.organization.OrganizationDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.qualityprofile.QProfileDto; import org.sonar.db.user.UserDto; import org.sonar.server.exceptions.BadRequestException; @@ -40,7 +40,7 @@ import org.sonar.server.ws.WsActionTester; import static java.lang.String.format; import static org.assertj.core.api.Assertions.assertThat; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.PARAM_LANGUAGE; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.PARAM_LOGIN; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.PARAM_QUALITY_PROFILE; @@ -77,7 +77,7 @@ public class RemoveUserActionTest { UserDto user = db.users().insertUser(); db.organizations().addMember(organization, user); db.qualityProfiles().addUserPermission(profile, user); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); TestResponse response = ws.newRequest() .setParam(PARAM_QUALITY_PROFILE, profile.getName()) @@ -96,7 +96,7 @@ public class RemoveUserActionTest { UserDto user = db.users().insertUser(); db.organizations().addMember(organization, user); assertThat(db.getDbClient().qProfileEditUsersDao().exists(db.getSession(), profile, user)).isFalse(); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); ws.newRequest() .setParam(PARAM_QUALITY_PROFILE, profile.getName()) @@ -114,7 +114,7 @@ public class RemoveUserActionTest { UserDto user = db.users().insertUser(); db.organizations().addMember(organization, user); db.qualityProfiles().addUserPermission(profile, user); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); ws.newRequest() .setParam(PARAM_QUALITY_PROFILE, profile.getName()) @@ -166,7 +166,7 @@ public class RemoveUserActionTest { @Test public void fail_when_user_does_not_exist() { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO)); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); expectedException.expect(NotFoundException.class); expectedException.expectMessage("User with login 'unknown' is not found"); @@ -183,7 +183,7 @@ public class RemoveUserActionTest { OrganizationDto organization = db.organizations().getDefaultOrganization(); UserDto user = db.users().insertUser(); db.organizations().addMember(organization, user); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); expectedException.expect(NotFoundException.class); expectedException.expectMessage("Quality Profile for language 'xoo' and name 'unknown' does not exist"); @@ -201,7 +201,7 @@ public class RemoveUserActionTest { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage("unknown")); UserDto user = db.users().insertUser(); db.organizations().addMember(organization, user); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); expectedException.expect(NotFoundException.class); expectedException.expectMessage(format("Quality Profile for language 'xoo' and name '%s' does not exist", profile.getName())); @@ -219,7 +219,7 @@ public class RemoveUserActionTest { UserDto user = db.users().insertUser(); db.organizations().addMember(organization, user); QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO).setIsBuiltIn(true)); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); expectedException.expect(BadRequestException.class); expectedException.expectMessage(String.format("Operation forbidden for built-in Quality Profile '%s' with language 'xoo'", profile.getName())); @@ -236,7 +236,7 @@ public class RemoveUserActionTest { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO)); UserDto user = db.users().insertUser(); db.organizations().addMember(organization, user); - userSession.logIn(db.users().insertUser()).addPermission(OrganizationPermission.ADMINISTER_QUALITY_GATES); + userSession.logIn(db.users().insertUser()).addPermission(GlobalPermission.ADMINISTER_QUALITY_GATES); expectedException.expect(ForbiddenException.class); diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/RenameActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/RenameActionTest.java index c1a69978d24..a03220b768f 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/RenameActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/RenameActionTest.java @@ -44,8 +44,8 @@ import org.sonar.server.ws.WsActionTester; import static java.util.Optional.ofNullable; import static org.assertj.core.api.Assertions.assertThat; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.SCAN; public class RenameActionTest { diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/RestoreActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/RestoreActionTest.java index 0fbf57b0bf5..f74bcc637f2 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/RestoreActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/RestoreActionTest.java @@ -48,7 +48,7 @@ import org.sonar.server.ws.WsActionTester; import org.sonar.test.JsonAssert; import static org.assertj.core.api.Assertions.assertThat; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; public class RestoreActionTest { diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/SearchActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/SearchActionTest.java index 54405b76ddc..58171f2c8a3 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/SearchActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/SearchActionTest.java @@ -33,7 +33,7 @@ import org.sonar.core.util.stream.MoreCollectors; import org.sonar.db.DbClient; import org.sonar.db.DbTester; import org.sonar.db.organization.OrganizationDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.project.ProjectDto; import org.sonar.db.qualityprofile.QProfileDto; import org.sonar.db.qualityprofile.QualityProfileDbTester; @@ -274,7 +274,7 @@ public class SearchActionTest { QProfileDto defaultProfile = db.qualityProfiles().insert(p -> p.setLanguage(XOO1.getKey())); db.qualityProfiles().setAsDefault(defaultProfile); UserDto user = db.users().insertUser(); - userSession.logIn(user).addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn(user).addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); SearchWsResponse result = call(ws.newRequest()); diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/SearchGroupsActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/SearchGroupsActionTest.java index 6b69bed785f..5418bf2e246 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/SearchGroupsActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/SearchGroupsActionTest.java @@ -25,8 +25,7 @@ import org.junit.rules.ExpectedException; import org.sonar.api.resources.Languages; import org.sonar.api.server.ws.WebService; import org.sonar.db.DbTester; -import org.sonar.db.organization.OrganizationDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.qualityprofile.QProfileDto; import org.sonar.db.user.GroupDto; import org.sonar.db.user.UserDto; @@ -45,7 +44,7 @@ import static org.sonar.api.server.ws.WebService.Param.PAGE; import static org.sonar.api.server.ws.WebService.Param.PAGE_SIZE; import static org.sonar.api.server.ws.WebService.Param.SELECTED; import static org.sonar.api.server.ws.WebService.Param.TEXT_QUERY; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonar.db.user.GroupTesting.newGroupDto; import static org.sonar.test.JsonAssert.assertJson; import static org.sonarqube.ws.MediaTypes.JSON; @@ -256,7 +255,7 @@ public class SearchGroupsActionTest { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO)); GroupDto group = db.users().insertGroup(); db.qualityProfiles().addGroupPermission(profile, group); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); SearchGroupsResponse response = ws.newRequest() .setParam(PARAM_QUALITY_PROFILE, profile.getName()) @@ -287,7 +286,7 @@ public class SearchGroupsActionTest { @Test public void fail_when_qprofile_does_not_exist() { - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); expectedException.expect(NotFoundException.class); expectedException.expectMessage("Quality Profile for language 'xoo' and name 'unknown' does not exist"); @@ -315,7 +314,7 @@ public class SearchGroupsActionTest { @Test public void fail_when_not_enough_permission() { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO)); - userSession.logIn(db.users().insertUser()).addPermission(OrganizationPermission.ADMINISTER_QUALITY_GATES); + userSession.logIn(db.users().insertUser()).addPermission(GlobalPermission.ADMINISTER_QUALITY_GATES); expectedException.expect(ForbiddenException.class); diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/SearchUsersActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/SearchUsersActionTest.java index 930a7a2feee..25060043424 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/SearchUsersActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/SearchUsersActionTest.java @@ -26,7 +26,7 @@ import org.sonar.api.resources.Languages; import org.sonar.api.server.ws.WebService; import org.sonar.db.DbTester; import org.sonar.db.organization.OrganizationDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.qualityprofile.QProfileDto; import org.sonar.db.user.UserDto; import org.sonar.server.exceptions.ForbiddenException; @@ -47,7 +47,7 @@ import static org.sonar.api.server.ws.WebService.Param.PAGE; import static org.sonar.api.server.ws.WebService.Param.PAGE_SIZE; import static org.sonar.api.server.ws.WebService.Param.SELECTED; import static org.sonar.api.server.ws.WebService.Param.TEXT_QUERY; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonar.test.JsonAssert.assertJson; import static org.sonarqube.ws.MediaTypes.JSON; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.PARAM_LANGUAGE; @@ -307,7 +307,7 @@ public class SearchUsersActionTest { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO)); UserDto user = db.users().insertUser(); db.organizations().addMember(organization, user); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); SearchUsersResponse response = ws.newRequest() .setParam(PARAM_QUALITY_PROFILE, profile.getName()) @@ -341,7 +341,7 @@ public class SearchUsersActionTest { OrganizationDto organization = db.organizations().getDefaultOrganization(); UserDto user = db.users().insertUser(); db.organizations().addMember(organization, user); - userSession.logIn().addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.logIn().addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); expectedException.expect(NotFoundException.class); expectedException.expectMessage("Quality Profile for language 'xoo' and name 'unknown' does not exist"); @@ -376,7 +376,7 @@ public class SearchUsersActionTest { QProfileDto profile = db.qualityProfiles().insert(p -> p.setLanguage(XOO)); UserDto user = db.users().insertUser(); db.organizations().addMember(organization, user); - userSession.logIn(db.users().insertUser()).addPermission(OrganizationPermission.ADMINISTER_QUALITY_GATES); + userSession.logIn(db.users().insertUser()).addPermission(GlobalPermission.ADMINISTER_QUALITY_GATES); expectedException.expect(ForbiddenException.class); diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/SetDefaultActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/SetDefaultActionTest.java index b5e2aa34573..731db2f1966 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/SetDefaultActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/qualityprofile/ws/SetDefaultActionTest.java @@ -42,7 +42,7 @@ import org.sonar.server.ws.TestResponse; import org.sonar.server.ws.WsActionTester; import static org.assertj.core.api.Assertions.assertThat; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.PARAM_KEY; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.PARAM_LANGUAGE; import static org.sonarqube.ws.client.qualityprofile.QualityProfileWsParameters.PARAM_QUALITY_PROFILE; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/rule/ws/AppActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/rule/ws/AppActionTest.java index 305a03430ce..873114c070d 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/rule/ws/AppActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/rule/ws/AppActionTest.java @@ -27,7 +27,7 @@ import org.sonar.api.resources.Languages; import org.sonar.api.server.ws.WebService; import org.sonar.api.utils.System2; import org.sonar.db.DbTester; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.rule.RuleRepositoryDto; import org.sonar.server.language.LanguageTesting; import org.sonar.server.tester.UserSessionRule; @@ -97,7 +97,7 @@ public class AppActionTest { @Test public void canWrite_is_true_if_user_is_profile_administrator() { - userSession.addPermission(OrganizationPermission.ADMINISTER_QUALITY_PROFILES); + userSession.addPermission(GlobalPermission.ADMINISTER_QUALITY_PROFILES); String json = ws.newRequest().execute().getInput(); @@ -106,7 +106,7 @@ public class AppActionTest { @Test public void canWrite_is_false_if_user_is_not_profile_administrator() { - userSession.addPermission(OrganizationPermission.SCAN); + userSession.addPermission(GlobalPermission.SCAN); String json = ws.newRequest().execute().getInput(); assertJson(json).isSimilarTo("{ \"canWrite\": false }"); diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/rule/ws/CreateActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/rule/ws/CreateActionTest.java index dba482d8689..24e48fa1eb8 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/rule/ws/CreateActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/rule/ws/CreateActionTest.java @@ -52,7 +52,7 @@ import static org.mockito.Mockito.doAnswer; import static org.mockito.Mockito.mock; import static org.sonar.api.rules.RuleType.BUG; import static org.sonar.api.rules.RuleType.CODE_SMELL; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonar.db.rule.RuleTesting.newCustomRule; import static org.sonar.db.rule.RuleTesting.newTemplateRule; import static org.sonar.server.util.TypeValidationsTesting.newFullTypeValidations; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/rule/ws/DeleteActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/rule/ws/DeleteActionTest.java index 5dd97f84ebc..3b357317e97 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/rule/ws/DeleteActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/rule/ws/DeleteActionTest.java @@ -44,7 +44,7 @@ import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; public class DeleteActionTest { private static final long PAST = 10000L; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/rule/ws/UpdateActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/rule/ws/UpdateActionTest.java index 4387970a148..4d02cc8ae79 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/rule/ws/UpdateActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/rule/ws/UpdateActionTest.java @@ -54,7 +54,7 @@ import static org.mockito.Mockito.doAnswer; import static org.mockito.Mockito.mock; import static org.sonar.api.server.debt.DebtRemediationFunction.Type.LINEAR; import static org.sonar.api.server.debt.DebtRemediationFunction.Type.LINEAR_OFFSET; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonar.db.rule.RuleTesting.setSystemTags; import static org.sonar.db.rule.RuleTesting.setTags; import static org.sonar.server.rule.ws.UpdateAction.PARAM_KEY; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/ListDefinitionsActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/ListDefinitionsActionTest.java index 952440f1a49..951c9d6600e 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/ListDefinitionsActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/ListDefinitionsActionTest.java @@ -58,8 +58,8 @@ import static org.sonar.api.resources.Qualifiers.PROJECT; import static org.sonar.api.web.UserRole.ADMIN; import static org.sonar.api.web.UserRole.CODEVIEWER; import static org.sonar.api.web.UserRole.USER; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.SCAN; import static org.sonarqube.ws.MediaTypes.JSON; import static org.sonarqube.ws.Settings.Definition.CategoryOneOfCase.CATEGORYONEOF_NOT_SET; import static org.sonarqube.ws.Settings.Definition.DefaultValueOneOfCase.DEFAULTVALUEONEOF_NOT_SET; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/ValuesActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/ValuesActionTest.java index 3e2c92679bd..18b02b4e63e 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/ValuesActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/ValuesActionTest.java @@ -42,7 +42,7 @@ import org.sonar.db.component.ComponentDbTester; import org.sonar.db.component.ComponentDto; import org.sonar.db.component.ComponentTesting; import org.sonar.db.organization.OrganizationDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.property.PropertyDbTester; import org.sonar.process.ProcessProperties; import org.sonar.server.component.TestComponentFinder; @@ -68,7 +68,7 @@ import static org.sonar.api.web.UserRole.CODEVIEWER; import static org.sonar.api.web.UserRole.USER; import static org.sonar.core.permission.GlobalPermissions.SCAN_EXECUTION; import static org.sonar.db.component.ComponentTesting.newModuleDto; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.SCAN; import static org.sonar.db.property.PropertyTesting.newComponentPropertyDto; import static org.sonar.db.property.PropertyTesting.newGlobalPropertyDto; import static org.sonar.process.ProcessProperties.Property.SONARCLOUD_ENABLED; @@ -803,13 +803,13 @@ public class ValuesActionTest { // organization administrator but not system administrator userSession.logIn() - .addPermission(OrganizationPermission.SCAN); + .addPermission(GlobalPermission.SCAN); response = executeRequest(tester, null, securedDef.key(), standardDef.key()); assertThat(response.getSettingsList()).extracting(Settings.Setting::getValue).containsExactly("standardValue"); // organization administrator userSession.logIn() - .addPermission(OrganizationPermission.ADMINISTER); + .addPermission(GlobalPermission.ADMINISTER); response = executeRequest(tester, null, securedDef.key(), standardDef.key()); assertThat(response.getSettingsList()).extracting(Settings.Setting::getValue).containsExactly("standardValue"); diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/ui/ws/ComponentActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/ui/ws/ComponentActionTest.java index c1c6ee69752..b79e4b7abba 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/ui/ws/ComponentActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/ui/ws/ComponentActionTest.java @@ -48,7 +48,7 @@ import org.sonar.db.component.ComponentDto; import org.sonar.db.component.SnapshotDto; import org.sonar.db.metric.MetricDto; import org.sonar.db.organization.OrganizationDto; -import org.sonar.db.permission.OrganizationPermission; +import org.sonar.db.permission.GlobalPermission; import org.sonar.db.project.ProjectDto; import org.sonar.db.property.PropertyDbTester; import org.sonar.db.property.PropertyDto; @@ -84,8 +84,8 @@ import static org.sonar.db.component.ComponentTesting.newPrivateProjectDto; import static org.sonar.db.component.SnapshotTesting.newAnalysis; import static org.sonar.db.measure.MeasureTesting.newLiveMeasure; import static org.sonar.db.metric.MetricTesting.newMetricDto; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_GATES; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_GATES; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; import static org.sonar.server.ui.ws.ComponentAction.PARAM_COMPONENT; import static org.sonar.test.JsonAssert.assertJson; @@ -510,7 +510,7 @@ public class ComponentActionTest { userSession.logIn() .addProjectPermission(UserRole.ADMIN, project) - .addPermission(OrganizationPermission.ADMINISTER); + .addPermission(GlobalPermission.ADMINISTER); assertJson(execute(project.getDbKey())).isSimilarTo("{\"visibility\": \"private\"}"); } @@ -523,7 +523,7 @@ public class ComponentActionTest { userSession.logIn() .addProjectPermission(UserRole.ADMIN, project) - .addPermission(OrganizationPermission.ADMINISTER); + .addPermission(GlobalPermission.ADMINISTER); assertJson(execute(project.getDbKey())).isSimilarTo("{\"visibility\": \"public\"}"); } @@ -536,7 +536,7 @@ public class ComponentActionTest { userSession.logIn() .addProjectPermission(UserRole.ADMIN, project) - .addPermission(OrganizationPermission.ADMINISTER); + .addPermission(GlobalPermission.ADMINISTER); assertJson(execute(project.getDbKey())).isSimilarTo("{\"configuration\": {\"canApplyPermissionTemplate\": true}}"); userSession.logIn() diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/ui/ws/OrganizationActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/ui/ws/OrganizationActionTest.java index 3687482da26..0624c079054 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/ui/ws/OrganizationActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/ui/ws/OrganizationActionTest.java @@ -56,8 +56,8 @@ import static org.sonar.api.web.page.Page.Scope.ORGANIZATION; import static org.sonar.db.organization.OrganizationDto.Subscription.FREE; import static org.sonar.db.organization.OrganizationDto.Subscription.PAID; import static org.sonar.db.organization.OrganizationDto.Subscription.SONARQUBE; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; -import static org.sonar.db.permission.OrganizationPermission.PROVISION_PROJECTS; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.PROVISION_PROJECTS; import static org.sonar.test.JsonAssert.assertJson; public class OrganizationActionTest { diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/user/ws/CurrentActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/user/ws/CurrentActionTest.java index 463f2e3727d..bd7954d913b 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/user/ws/CurrentActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/user/ws/CurrentActionTest.java @@ -46,9 +46,9 @@ import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.tuple; import static org.mockito.Mockito.mock; import static org.sonar.api.web.UserRole.USER; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; -import static org.sonar.db.permission.OrganizationPermission.PROVISION_PROJECTS; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.PROVISION_PROJECTS; +import static org.sonar.db.permission.GlobalPermission.SCAN; import static org.sonar.db.user.GroupTesting.newGroupDto; import static org.sonar.test.JsonAssert.assertJson; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/user/ws/DeactivateActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/user/ws/DeactivateActionTest.java index 8b70ff2e065..760f99b1adb 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/user/ws/DeactivateActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/user/ws/DeactivateActionTest.java @@ -61,9 +61,9 @@ import static org.elasticsearch.index.query.QueryBuilders.boolQuery; import static org.elasticsearch.index.query.QueryBuilders.termQuery; import static org.sonar.api.web.UserRole.CODEVIEWER; import static org.sonar.api.web.UserRole.USER; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER_QUALITY_PROFILES; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER_QUALITY_PROFILES; +import static org.sonar.db.permission.GlobalPermission.SCAN; import static org.sonar.db.property.PropertyTesting.newUserPropertyDto; import static org.sonar.server.user.index.UserIndexDefinition.FIELD_ACTIVE; import static org.sonar.server.user.index.UserIndexDefinition.FIELD_UUID; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/user/ws/GroupsActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/user/ws/GroupsActionTest.java index 2e57bb8697d..2fc054250d3 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/user/ws/GroupsActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/user/ws/GroupsActionTest.java @@ -42,7 +42,7 @@ import static org.assertj.core.api.Assertions.tuple; import static org.sonar.api.server.ws.WebService.SelectionMode.ALL; import static org.sonar.api.server.ws.WebService.SelectionMode.DESELECTED; import static org.sonar.api.server.ws.WebService.SelectionMode.SELECTED; -import static org.sonar.db.permission.OrganizationPermission.SCAN; +import static org.sonar.db.permission.GlobalPermission.SCAN; import static org.sonar.db.user.GroupTesting.newGroupDto; import static org.sonar.db.user.UserTesting.newUserDto; import static org.sonar.test.JsonAssert.assertJson; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/AddUserActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/AddUserActionTest.java index 8d3537441a5..0a7d75ebd18 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/AddUserActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/AddUserActionTest.java @@ -39,7 +39,7 @@ import org.sonar.server.ws.WsActionTester; import static java.net.HttpURLConnection.HTTP_NO_CONTENT; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.tuple; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.server.usergroups.ws.GroupWsSupport.PARAM_GROUP_NAME; import static org.sonar.server.usergroups.ws.GroupWsSupport.PARAM_LOGIN; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/CreateActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/CreateActionTest.java index 4f04c9c7b73..b8eaf2d7165 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/CreateActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/CreateActionTest.java @@ -37,7 +37,7 @@ import org.sonar.server.ws.WsActionTester; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.tuple; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; public class CreateActionTest { @Rule diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/DeleteActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/DeleteActionTest.java index 4babb854028..9a39a61e43d 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/DeleteActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/DeleteActionTest.java @@ -45,7 +45,7 @@ import org.sonar.server.ws.WsActionTester; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.tuple; import static org.sonar.core.permission.GlobalPermissions.SYSTEM_ADMIN; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.server.usergroups.ws.GroupWsSupport.PARAM_GROUP_ID; import static org.sonar.server.usergroups.ws.GroupWsSupport.PARAM_GROUP_NAME; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/RemoveUserActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/RemoveUserActionTest.java index 7a74834f76d..d6b23552273 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/RemoveUserActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/RemoveUserActionTest.java @@ -41,7 +41,7 @@ import org.sonar.server.ws.WsActionTester; import static java.net.HttpURLConnection.HTTP_NO_CONTENT; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.tuple; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.server.usergroups.ws.GroupWsSupport.PARAM_GROUP_NAME; import static org.sonar.server.usergroups.ws.GroupWsSupport.PARAM_LOGIN; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/SearchActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/SearchActionTest.java index 74754a72cc3..9de39a88dc5 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/SearchActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/SearchActionTest.java @@ -26,11 +26,9 @@ import org.sonar.api.server.ws.Change; import org.sonar.api.server.ws.WebService; import org.sonar.api.utils.System2; import org.sonar.db.DbTester; -import org.sonar.db.organization.OrganizationDto; import org.sonar.db.user.GroupDto; import org.sonar.db.user.UserDto; import org.sonar.server.exceptions.UnauthorizedException; -import org.sonar.server.organization.TestDefaultOrganizationProvider; import org.sonar.server.tester.UserSessionRule; import org.sonar.server.usergroups.DefaultGroupFinder; import org.sonar.server.ws.TestRequest; @@ -45,7 +43,7 @@ import static org.sonar.api.server.ws.WebService.Param.FIELDS; import static org.sonar.api.server.ws.WebService.Param.PAGE; import static org.sonar.api.server.ws.WebService.Param.PAGE_SIZE; import static org.sonar.api.server.ws.WebService.Param.TEXT_QUERY; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.db.user.GroupTesting.newGroupDto; import static org.sonar.test.JsonAssert.assertJson; import static org.sonarqube.ws.UserGroups.Group; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/UpdateActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/UpdateActionTest.java index bf2b901f406..6361ec3d520 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/UpdateActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/UpdateActionTest.java @@ -37,7 +37,7 @@ import org.sonar.server.ws.TestRequest; import org.sonar.server.ws.WsActionTester; import static org.assertj.core.api.Assertions.assertThat; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.test.JsonAssert.assertJson; public class UpdateActionTest { diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/UsersActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/UsersActionTest.java index 1a9be214911..cdf3e3f5a66 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/UsersActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/usergroups/ws/UsersActionTest.java @@ -33,7 +33,6 @@ import org.sonar.db.user.GroupDto; import org.sonar.db.user.UserDto; import org.sonar.server.exceptions.ForbiddenException; import org.sonar.server.exceptions.NotFoundException; -import org.sonar.server.organization.TestDefaultOrganizationProvider; import org.sonar.server.tester.UserSessionRule; import org.sonar.server.usergroups.DefaultGroupFinder; import org.sonar.server.ws.TestRequest; @@ -41,7 +40,7 @@ import org.sonar.server.ws.WsActionTester; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.tuple; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.db.user.UserTesting.newUserDto; import static org.sonar.server.usergroups.ws.GroupWsSupport.PARAM_GROUP_ID; import static org.sonar.test.JsonAssert.assertJson; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/webhook/ws/CreateActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/webhook/ws/CreateActionTest.java index 392051d7562..fa5a2ce37ad 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/webhook/ws/CreateActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/webhook/ws/CreateActionTest.java @@ -50,7 +50,7 @@ import static org.junit.rules.ExpectedException.none; import static org.mockito.Mockito.mock; import static org.sonar.api.web.UserRole.ADMIN; import static org.sonar.db.DbTester.create; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.server.organization.TestDefaultOrganizationProvider.from; import static org.sonar.server.tester.UserSessionRule.standalone; import static org.sonar.server.webhook.ws.WebhooksWsParameters.NAME_PARAM; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/webhook/ws/DeleteActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/webhook/ws/DeleteActionTest.java index 394b645201c..c0425a33b5e 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/webhook/ws/DeleteActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/webhook/ws/DeleteActionTest.java @@ -51,7 +51,7 @@ import static org.junit.rules.ExpectedException.none; import static org.mockito.Mockito.mock; import static org.sonar.api.web.UserRole.ADMIN; import static org.sonar.db.DbTester.create; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.db.webhook.WebhookDeliveryTesting.newDto; import static org.sonar.server.organization.TestDefaultOrganizationProvider.from; import static org.sonar.server.tester.UserSessionRule.standalone; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/webhook/ws/ListActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/webhook/ws/ListActionTest.java index 768f88a5289..46e87d62ae1 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/webhook/ws/ListActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/webhook/ws/ListActionTest.java @@ -53,7 +53,7 @@ import static org.junit.rules.ExpectedException.none; import static org.mockito.Mockito.mock; import static org.sonar.api.web.UserRole.ADMIN; import static org.sonar.db.DbTester.create; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.db.webhook.WebhookDeliveryTesting.newDto; import static org.sonar.db.webhook.WebhookTesting.newOrganizationWebhook; import static org.sonar.server.organization.TestDefaultOrganizationProvider.from; diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/webhook/ws/UpdateActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/webhook/ws/UpdateActionTest.java index 5bdeb587ac8..cd12caf9657 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/webhook/ws/UpdateActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/webhook/ws/UpdateActionTest.java @@ -49,7 +49,7 @@ import static org.junit.rules.ExpectedException.none; import static org.mockito.Mockito.mock; import static org.sonar.api.web.UserRole.ADMIN; import static org.sonar.db.DbTester.create; -import static org.sonar.db.permission.OrganizationPermission.ADMINISTER; +import static org.sonar.db.permission.GlobalPermission.ADMINISTER; import static org.sonar.server.organization.TestDefaultOrganizationProvider.from; import static org.sonar.server.tester.UserSessionRule.standalone; import static org.sonar.server.ws.KeyExamples.NAME_WEBHOOK_EXAMPLE_001; -- 2.39.5