Search in sources :

Example 1 with WsSearchGlobalPermissionsResponse

use of org.sonarqube.ws.WsPermissions.WsSearchGlobalPermissionsResponse in project sonarqube by SonarSource.

the class SearchGlobalPermissionsAction method buildResponse.

private WsSearchGlobalPermissionsResponse buildResponse(DbSession dbSession, OrganizationDto org) {
    WsSearchGlobalPermissionsResponse.Builder response = WsSearchGlobalPermissionsResponse.newBuilder();
    Permission.Builder permission = newBuilder();
    OrganizationPermission.all().map(OrganizationPermission::getKey).forEach(permissionKey -> {
        PermissionQuery query = permissionQuery(permissionKey);
        response.addPermissions(permission.clear().setKey(permissionKey).setName(i18nName(permissionKey)).setDescription(i18nDescriptionMessage(permissionKey)).setUsersCount(countUsers(dbSession, org, query)).setGroupsCount(countGroups(dbSession, org, permissionKey)));
    });
    return response.build();
}
Also used : WsSearchGlobalPermissionsResponse(org.sonarqube.ws.WsPermissions.WsSearchGlobalPermissionsResponse) OrganizationPermission(org.sonar.db.permission.OrganizationPermission) Permission(org.sonarqube.ws.WsPermissions.Permission) PermissionQuery(org.sonar.db.permission.PermissionQuery)

Example 2 with WsSearchGlobalPermissionsResponse

use of org.sonarqube.ws.WsPermissions.WsSearchGlobalPermissionsResponse in project sonarqube by SonarSource.

the class SearchGlobalPermissionsAction method handle.

@Override
public void handle(Request wsRequest, Response wsResponse) throws Exception {
    try (DbSession dbSession = dbClient.openSession(false)) {
        OrganizationDto org = support.findOrganization(dbSession, wsRequest.param(PARAM_ORGANIZATION));
        checkGlobalAdmin(userSession, org.getUuid());
        WsSearchGlobalPermissionsResponse response = buildResponse(dbSession, org);
        writeProtobuf(response, wsRequest, wsResponse);
    }
}
Also used : DbSession(org.sonar.db.DbSession) WsSearchGlobalPermissionsResponse(org.sonarqube.ws.WsPermissions.WsSearchGlobalPermissionsResponse) OrganizationDto(org.sonar.db.organization.OrganizationDto)

Aggregations

WsSearchGlobalPermissionsResponse (org.sonarqube.ws.WsPermissions.WsSearchGlobalPermissionsResponse)2 DbSession (org.sonar.db.DbSession)1 OrganizationDto (org.sonar.db.organization.OrganizationDto)1 OrganizationPermission (org.sonar.db.permission.OrganizationPermission)1 PermissionQuery (org.sonar.db.permission.PermissionQuery)1 Permission (org.sonarqube.ws.WsPermissions.Permission)1