Browse Source

Rename PermissionDao to GroupPermissionDao

tags/6.2-RC1
Simon Brandhof 7 years ago
parent
commit
a30dc8ee3d
17 changed files with 27 additions and 73 deletions
  1. 3
    3
      server/sonar-server/src/main/java/org/sonar/server/permission/ws/GroupsAction.java
  2. 1
    1
      server/sonar-server/src/main/java/org/sonar/server/permission/ws/SearchGlobalPermissionsAction.java
  3. 1
    1
      server/sonar-server/src/main/java/org/sonar/server/permission/ws/SearchProjectPermissionsDataLoader.java
  4. 1
    1
      server/sonar-server/src/main/java/org/sonar/server/usergroups/ws/DeleteAction.java
  5. 1
    1
      server/sonar-server/src/test/java/org/sonar/server/permission/ws/template/ApplyTemplateActionTest.java
  6. 1
    1
      server/sonar-server/src/test/java/org/sonar/server/permission/ws/template/BulkApplyTemplateActionTest.java
  7. 4
    4
      server/sonar-server/src/test/java/org/sonar/server/usergroups/ws/DeleteActionTest.java
  8. 2
    2
      sonar-db/src/main/java/org/sonar/db/DaoModule.java
  9. 5
    5
      sonar-db/src/main/java/org/sonar/db/DbClient.java
  10. 1
    1
      sonar-db/src/main/java/org/sonar/db/MyBatis.java
  11. 3
    3
      sonar-db/src/main/java/org/sonar/db/permission/GroupPermissionDao.java
  12. 1
    1
      sonar-db/src/main/java/org/sonar/db/permission/GroupPermissionMapper.java
  13. 1
    1
      sonar-db/src/main/resources/org/sonar/db/permission/GroupPermissionMapper.xml
  14. 2
    2
      sonar-db/src/test/java/org/sonar/db/permission/GroupPermissionDaoTest.java
  15. 0
    18
      sonar-db/src/test/resources/org/sonar/db/permission/UserWithPermissionDaoTest/select_only_enable_users.xml
  16. 0
    17
      sonar-db/src/test/resources/org/sonar/db/permission/UserWithPermissionDaoTest/users_with_permissions.xml
  17. 0
    11
      sonar-db/src/test/resources/org/sonar/db/permission/UserWithPermissionDaoTest/users_with_permissions_should_be_sorted_by_user_name.xml

+ 3
- 3
server/sonar-server/src/main/java/org/sonar/server/permission/ws/GroupsAction.java View File

@@ -103,7 +103,7 @@ public class GroupsAction implements PermissionsWsAction {

PermissionQuery dbQuery = buildPermissionQuery(request, project);
List<GroupDto> groups = findGroups(dbSession, dbQuery);
int total = dbClient.permissionDao().countGroupsByPermissionQuery(dbSession, dbQuery);
int total = dbClient.groupPermissionDao().countGroupsByPermissionQuery(dbSession, dbQuery);
List<GroupRoleDto> groupsWithPermission = findGroupPermissions(dbSession, groups, project);
return buildResponse(groups, groupsWithPermission, Paging.forPageIndex(request.getPage()).withPageSize(request.getPageSize()).andTotal(total));
} finally {
@@ -166,7 +166,7 @@ public class GroupsAction implements PermissionsWsAction {
}

private List<GroupDto> findGroups(DbSession dbSession, PermissionQuery dbQuery) {
List<String> orderedNames = dbClient.permissionDao().selectGroupNamesByPermissionQuery(dbSession, dbQuery);
List<String> orderedNames = dbClient.groupPermissionDao().selectGroupNamesByPermissionQuery(dbSession, dbQuery);
List<GroupDto> groups = dbClient.groupDao().selectByNames(dbSession, orderedNames);
if (orderedNames.contains(DefaultGroups.ANYONE)) {
groups.add(0, new GroupDto().setId(0L).setName(DefaultGroups.ANYONE));
@@ -179,6 +179,6 @@ public class GroupsAction implements PermissionsWsAction {
return emptyList();
}
List<String> names = groups.stream().map(GroupDto::getName).collect(Collectors.toList());
return dbClient.permissionDao().selectGroupPermissionsByGroupNamesAndProject(dbSession, names, project.isPresent() ? project.get().getId() : null);
return dbClient.groupPermissionDao().selectGroupPermissionsByGroupNamesAndProject(dbSession, names, project.isPresent() ? project.get().getId() : null);
}
}

+ 1
- 1
server/sonar-server/src/main/java/org/sonar/server/permission/ws/SearchGlobalPermissionsAction.java View File

@@ -102,7 +102,7 @@ public class SearchGlobalPermissionsAction implements PermissionsWsAction {
}

private int countGroups(DbSession dbSession, String permissionKey) {
return dbClient.permissionDao().countGroups(dbSession, permissionKey, null);
return dbClient.groupPermissionDao().countGroups(dbSession, permissionKey, null);
}

private int countUsers(DbSession dbSession, PermissionQuery permissionQuery) {

+ 1
- 1
server/sonar-server/src/main/java/org/sonar/server/permission/ws/SearchProjectPermissionsDataLoader.java View File

@@ -116,7 +116,7 @@ public class SearchProjectPermissionsDataLoader {
private Table<Long, String, Integer> groupCountByRootComponentIdAndPermission(DbSession dbSession, List<Long> rootComponentIds) {
final Table<Long, String, Integer> userCountByRootComponentIdAndPermission = TreeBasedTable.create();

dbClient.permissionDao().groupsCountByComponentIdAndPermission(dbSession, rootComponentIds, context -> {
dbClient.groupPermissionDao().groupsCountByComponentIdAndPermission(dbSession, rootComponentIds, context -> {
CountByProjectAndPermissionDto row = (CountByProjectAndPermissionDto) context.getResultObject();
userCountByRootComponentIdAndPermission.put(row.getComponentId(), row.getPermission(), row.getCount());
});

+ 1
- 1
server/sonar-server/src/main/java/org/sonar/server/usergroups/ws/DeleteAction.java View File

@@ -102,7 +102,7 @@ public class DeleteAction implements UserGroupsWsAction {
boolean hasAdminPermission = dbClient.roleDao()
.selectGroupPermissions(dbSession, groupName, null)
.contains(GlobalPermissions.SYSTEM_ADMIN);
boolean isOneRemainingAdminGroup = dbClient.permissionDao().countGroups(dbSession, GlobalPermissions.SYSTEM_ADMIN, null) == 1;
boolean isOneRemainingAdminGroup = dbClient.groupPermissionDao().countGroups(dbSession, GlobalPermissions.SYSTEM_ADMIN, null) == 1;
boolean hasNoStandaloneAdminUser = dbClient.userPermissionDao().countUsers(dbSession,
PermissionQuery.builder().setPermission(GlobalPermissions.SYSTEM_ADMIN).withAtLeastOnePermission().build()) == 0;
boolean isLastAdminGroup = hasAdminPermission && isOneRemainingAdminGroup && hasNoStandaloneAdminUser;

+ 1
- 1
server/sonar-server/src/test/java/org/sonar/server/permission/ws/template/ApplyTemplateActionTest.java View File

@@ -283,7 +283,7 @@ public class ApplyTemplateActionTest {

private List<String> selectProjectPermissionGroups(ComponentDto project, String permission) {
PermissionQuery query = PermissionQuery.builder().setPermission(permission).setComponentUuid(project.uuid()).build();
return dbClient.permissionDao().selectGroupNamesByPermissionQuery(dbSession, query);
return dbClient.groupPermissionDao().selectGroupNamesByPermissionQuery(dbSession, query);
}

private List<String> selectProjectPermissionUsers(ComponentDto project, String permission) {

+ 1
- 1
server/sonar-server/src/test/java/org/sonar/server/permission/ws/template/BulkApplyTemplateActionTest.java View File

@@ -254,7 +254,7 @@ public class BulkApplyTemplateActionTest {

private List<String> selectProjectPermissionGroups(ComponentDto project, String permission) {
PermissionQuery query = PermissionQuery.builder().setPermission(permission).setComponentUuid(project.uuid()).build();
return dbClient.permissionDao().selectGroupNamesByPermissionQuery(dbSession, query);
return dbClient.groupPermissionDao().selectGroupNamesByPermissionQuery(dbSession, query);
}

private List<String> selectProjectPermissionUsers(ComponentDto project, String permission) {

+ 4
- 4
server/sonar-server/src/test/java/org/sonar/server/usergroups/ws/DeleteActionTest.java View File

@@ -32,7 +32,7 @@ import org.sonar.core.permission.GlobalPermissions;
import org.sonar.db.DbClient;
import org.sonar.db.DbSession;
import org.sonar.db.DbTester;
import org.sonar.db.permission.PermissionDao;
import org.sonar.db.permission.GroupPermissionDao;
import org.sonar.db.permission.template.PermissionTemplateDao;
import org.sonar.db.user.GroupDao;
import org.sonar.db.user.GroupDbTester;
@@ -69,7 +69,7 @@ public class DeleteActionTest {
UserGroupDao userGroupDao = dbClient.userGroupDao();
RoleDao roleDao = dbClient.roleDao();
PermissionTemplateDao permissionTemplateDao = dbClient.permissionTemplateDao();
PermissionDao permissionDao = dbClient.permissionDao();
GroupPermissionDao groupPermissionDao = dbClient.groupPermissionDao();

private WsTester ws;
private Long defaultGroupId;
@@ -176,7 +176,7 @@ public class DeleteActionTest {
public void cannot_delete_last_system_admin_group() throws Exception {
GroupDto group = groupDb.insertGroup(newGroupDto().setName("system-admins"));
roleDao.insertGroupRole(dbSession, new GroupRoleDto().setGroupId(group.getId()).setRole(GlobalPermissions.SYSTEM_ADMIN));
assertThat(permissionDao.countGroups(dbSession, GlobalPermissions.SYSTEM_ADMIN, null)).isEqualTo(1);
assertThat(groupPermissionDao.countGroups(dbSession, GlobalPermissions.SYSTEM_ADMIN, null)).isEqualTo(1);
dbSession.commit();
loginAsAdmin();

@@ -202,7 +202,7 @@ public class DeleteActionTest {
.setParam(PARAM_GROUP_NAME, boringAdmins.getName())
.execute();

assertThat(permissionDao.countGroups(dbSession, GlobalPermissions.SYSTEM_ADMIN, null)).isEqualTo(1);
assertThat(groupPermissionDao.countGroups(dbSession, GlobalPermissions.SYSTEM_ADMIN, null)).isEqualTo(1);
}

@Test

+ 2
- 2
sonar-db/src/main/java/org/sonar/db/DaoModule.java View File

@@ -50,7 +50,7 @@ import org.sonar.db.measure.custom.CustomMeasureDao;
import org.sonar.db.metric.MetricDao;
import org.sonar.db.notification.NotificationQueueDao;
import org.sonar.db.organization.OrganizationDao;
import org.sonar.db.permission.PermissionDao;
import org.sonar.db.permission.GroupPermissionDao;
import org.sonar.db.permission.UserPermissionDao;
import org.sonar.db.permission.template.PermissionTemplateCharacteristicDao;
import org.sonar.db.permission.template.PermissionTemplateDao;
@@ -104,7 +104,7 @@ public class DaoModule extends Module {
MetricDao.class,
NotificationQueueDao.class,
OrganizationDao.class,
PermissionDao.class,
GroupPermissionDao.class,
PermissionTemplateDao.class,
PermissionTemplateCharacteristicDao.class,
PropertiesDao.class,

+ 5
- 5
sonar-db/src/main/java/org/sonar/db/DbClient.java View File

@@ -50,7 +50,7 @@ import org.sonar.db.measure.custom.CustomMeasureDao;
import org.sonar.db.metric.MetricDao;
import org.sonar.db.notification.NotificationQueueDao;
import org.sonar.db.organization.OrganizationDao;
import org.sonar.db.permission.PermissionDao;
import org.sonar.db.permission.GroupPermissionDao;
import org.sonar.db.permission.UserPermissionDao;
import org.sonar.db.permission.template.PermissionTemplateCharacteristicDao;
import org.sonar.db.permission.template.PermissionTemplateDao;
@@ -97,7 +97,7 @@ public class DbClient {
private final UserTokenDao userTokenDao;
private final GroupMembershipDao groupMembershipDao;
private final RoleDao roleDao;
private final PermissionDao permissionDao;
private final GroupPermissionDao groupPermissionDao;
private final PermissionTemplateDao permissionTemplateDao;
private final PermissionTemplateCharacteristicDao permissionTemplateCharacteristicDao;
private final IssueDao issueDao;
@@ -158,7 +158,7 @@ public class DbClient {
userTokenDao = getDao(map, UserTokenDao.class);
groupMembershipDao = getDao(map, GroupMembershipDao.class);
roleDao = getDao(map, RoleDao.class);
permissionDao = getDao(map, PermissionDao.class);
groupPermissionDao = getDao(map, GroupPermissionDao.class);
permissionTemplateDao = getDao(map, PermissionTemplateDao.class);
permissionTemplateCharacteristicDao = getDao(map, PermissionTemplateCharacteristicDao.class);
issueDao = getDao(map, IssueDao.class);
@@ -294,8 +294,8 @@ public class DbClient {
return roleDao;
}

public PermissionDao permissionDao() {
return permissionDao;
public GroupPermissionDao groupPermissionDao() {
return groupPermissionDao;
}

public PermissionTemplateDao permissionTemplateDao() {

+ 1
- 1
sonar-db/src/main/java/org/sonar/db/MyBatis.java View File

@@ -223,7 +223,7 @@ public class MyBatis {
// ResourceMapper has to be loaded before IssueMapper because this last one used it
confBuilder.loadMapper(ResourceMapper.class);

confBuilder.loadMapper("org.sonar.db.permission.PermissionMapper");
confBuilder.loadMapper("org.sonar.db.permission.GroupPermissionMapper");
// keep them sorted alphabetically
Class<?>[] mappers = {
ActiveDashboardMapper.class,

sonar-db/src/main/java/org/sonar/db/permission/PermissionDao.java → sonar-db/src/main/java/org/sonar/db/permission/GroupPermissionDao.java View File

@@ -33,7 +33,7 @@ import org.sonar.db.user.GroupRoleDto;
import static org.sonar.db.DatabaseUtils.executeLargeInputs;
import static org.sonar.db.DatabaseUtils.executeLargeInputsWithoutOutput;

public class PermissionDao implements Dao {
public class GroupPermissionDao implements Dao {

private static final String COMPONENT_ID_PARAMETER = "componentId";
private static final String ANYONE_GROUP_PARAMETER = "anyoneGroup";
@@ -78,8 +78,8 @@ public class PermissionDao implements Dao {
});
}

private static PermissionMapper mapper(DbSession session) {
return session.getMapper(PermissionMapper.class);
private static GroupPermissionMapper mapper(DbSession session) {
return session.getMapper(GroupPermissionMapper.class);
}

}

sonar-db/src/main/java/org/sonar/db/permission/PermissionMapper.java → sonar-db/src/main/java/org/sonar/db/permission/GroupPermissionMapper.java View File

@@ -27,7 +27,7 @@ import org.apache.ibatis.session.ResultHandler;
import org.apache.ibatis.session.RowBounds;
import org.sonar.db.user.GroupRoleDto;

public interface PermissionMapper {
public interface GroupPermissionMapper {

int countGroups(Map<String, Object> parameters);


sonar-db/src/main/resources/org/sonar/db/permission/PermissionMapper.xml → sonar-db/src/main/resources/org/sonar/db/permission/GroupPermissionMapper.xml View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="org.sonar.db.permission.PermissionMapper">
<mapper namespace="org.sonar.db.permission.GroupPermissionMapper">

<sql id="usersSelection">
FROM users u

sonar-db/src/test/java/org/sonar/db/permission/GroupWithPermissionDaoTest.java → sonar-db/src/test/java/org/sonar/db/permission/GroupPermissionDaoTest.java View File

@@ -48,7 +48,7 @@ import static org.sonar.core.permission.GlobalPermissions.SYSTEM_ADMIN;
import static org.sonar.db.component.ComponentTesting.newProjectDto;
import static org.sonar.db.user.GroupTesting.newGroupDto;

public class GroupWithPermissionDaoTest {
public class GroupPermissionDaoTest {

private static final long COMPONENT_ID = 100L;

@@ -59,7 +59,7 @@ public class GroupWithPermissionDaoTest {
private ComponentDbTester componentDb = new ComponentDbTester(db);
private DbSession dbSession = db.getSession();

private PermissionDao underTest = new PermissionDao();
private GroupPermissionDao underTest = new GroupPermissionDao();

@Test
public void group_count_by_permission_and_component_id() {

+ 0
- 18
sonar-db/src/test/resources/org/sonar/db/permission/UserWithPermissionDaoTest/select_only_enable_users.xml View File

@@ -1,18 +0,0 @@
<dataset>

<users id="200" login="user1" name="User1" active="[true]"/>
<users id="201" login="user2" name="User2" active="[true]"/>
<users id="202" login="user3" name="User3" active="[true]"/>
<users id="999" login="disabledUser" name="disabledUser" active="[false]"/>

<!-- Project permissions -->
<user_roles id="1" user_id="200" resource_id="100" role="user"/>
<user_roles id="2" user_id="200" resource_id="100" role="admin"/>
<user_roles id="3" user_id="200" resource_id="100" role="codeviewer"/>

<user_roles id="4" user_id="201" resource_id="100" role="user"/>

<!-- Global permission -->
<user_roles id="10" user_id="200" resource_id="[null]" role="admin"/>

</dataset>

+ 0
- 17
sonar-db/src/test/resources/org/sonar/db/permission/UserWithPermissionDaoTest/users_with_permissions.xml View File

@@ -1,17 +0,0 @@
<dataset>

<users id="200" login="user1" name="User1" active="[true]"/>
<users id="201" login="user2" name="User2" active="[true]"/>
<users id="202" login="user3" name="User3" active="[true]"/>

<!-- Project permissions -->
<user_roles id="1" user_id="200" resource_id="100" role="user"/>
<user_roles id="2" user_id="200" resource_id="100" role="admin"/>
<user_roles id="3" user_id="200" resource_id="100" role="codeviewer"/>

<user_roles id="4" user_id="201" resource_id="100" role="user"/>

<!-- Global permission -->
<user_roles id="10" user_id="200" resource_id="[null]" role="admin"/>

</dataset>

+ 0
- 11
sonar-db/src/test/resources/org/sonar/db/permission/UserWithPermissionDaoTest/users_with_permissions_should_be_sorted_by_user_name.xml View File

@@ -1,11 +0,0 @@
<dataset>

<users id="200" login="user3" name="User3" active="[true]"/>
<users id="201" login="user1" name="User1" active="[true]"/>
<users id="202" login="user2" name="User2" active="[true]"/>

<user_roles id="1" user_id="200" resource_id="100" role="user"/>
<user_roles id="2" user_id="200" resource_id="100" role="admin"/>
<user_roles id="3" user_id="200" resource_id="100" role="codeviewer"/>

</dataset>

Loading…
Cancel
Save