|
|
@@ -53,6 +53,7 @@ import org.sonar.db.DbSession; |
|
|
|
import org.sonar.db.component.BranchDto; |
|
|
|
import org.sonar.db.component.ComponentDto; |
|
|
|
import org.sonar.db.component.SnapshotDto; |
|
|
|
import org.sonar.db.permission.GlobalPermission; |
|
|
|
import org.sonar.db.rule.RuleDto; |
|
|
|
import org.sonar.server.issue.SearchRequest; |
|
|
|
import org.sonar.server.issue.index.IssueQuery.PeriodStart; |
|
|
@@ -71,6 +72,7 @@ import static org.sonar.api.measures.CoreMetrics.ANALYSIS_FROM_SONARQUBE_9_4_KEY |
|
|
|
import static org.sonar.api.utils.DateUtils.longToDate; |
|
|
|
import static org.sonar.api.utils.DateUtils.parseEndingDateOrDateTime; |
|
|
|
import static org.sonar.api.utils.DateUtils.parseStartingDateOrDateTime; |
|
|
|
import static org.sonar.api.web.UserRole.SCAN; |
|
|
|
import static org.sonar.api.web.UserRole.USER; |
|
|
|
import static org.sonar.db.newcodeperiod.NewCodePeriodType.REFERENCE_BRANCH; |
|
|
|
import static org.sonarqube.ws.client.issue.IssuesWsParameters.PARAM_COMPONENTS; |
|
|
@@ -357,7 +359,7 @@ public class IssueQueryFactory { |
|
|
|
|
|
|
|
private void addViewsOrSubViews(IssueQuery.Builder builder, Collection<ComponentDto> viewOrSubViewUuids) { |
|
|
|
List<String> filteredViewUuids = viewOrSubViewUuids.stream() |
|
|
|
.filter(uuid -> userSession.hasComponentPermission(USER, uuid)) |
|
|
|
.filter(uuid -> (userSession.hasComponentPermission(USER, uuid) || userSession.hasComponentPermission(SCAN, uuid) || userSession.hasPermission(GlobalPermission.SCAN))) |
|
|
|
.map(ComponentDto::uuid) |
|
|
|
.collect(Collectors.toCollection(ArrayList::new)); |
|
|
|
if (filteredViewUuids.isEmpty()) { |