Browse Source

[NO-JIRA] explicitly declare toList collector mutable or not

tags/9.9.0.65466
Zipeng WU 1 year ago
parent
commit
b6cb156530

+ 1
- 1
server/sonar-ce-common/src/main/java/org/sonar/ce/queue/CeQueueImpl.java View File

@@ -138,7 +138,7 @@ public class CeQueueImpl implements CeQueue {
List<CeQueueDto> taskDtos = submissions.stream()
.filter(filterBySubmitOptions(options, submissions, dbSession))
.map(submission -> addToQueueInDb(dbSession, submission))
.collect(Collectors.toList());
.toList();
List<CeTask> tasks = loadTasks(dbSession, taskDtos);
dbSession.commit();
return tasks;

+ 1
- 1
server/sonar-webserver-auth/src/main/java/org/sonar/server/usertoken/notification/TokenExpirationNotificationSender.java View File

@@ -46,7 +46,7 @@ public class TokenExpirationNotificationSender {
try (var dbSession = dbClient.openSession(false)) {
var expiringTokens = dbClient.userTokenDao().selectTokensExpiredInDays(dbSession, 7);
var expiredTokens = dbClient.userTokenDao().selectTokensExpiredInDays(dbSession, 0);
var tokensToNotify = Stream.concat(expiringTokens.stream(), expiredTokens.stream()).collect(Collectors.toList());
var tokensToNotify = Stream.concat(expiringTokens.stream(), expiredTokens.stream()).toList();
var usersToNotify = tokensToNotify.stream().map(UserTokenDto::getUserUuid).collect(Collectors.toSet());
Map<String, String> userUuidToEmail = dbClient.userDao().selectByUuids(dbSession, usersToNotify).stream()
.collect(Collectors.toMap(UserDto::getUuid, UserDto::getEmail));

+ 2
- 1
server/sonar-webserver-core/src/main/java/org/sonar/server/issue/index/AsyncIssueIndexingImpl.java View File

@@ -41,6 +41,7 @@ import org.sonar.db.component.BranchDto;
import org.sonar.db.component.BranchType;
import org.sonar.db.component.SnapshotDto;

import static java.util.stream.Collectors.toCollection;
import static org.sonar.db.ce.CeTaskCharacteristicDto.BRANCH_KEY;
import static org.sonar.db.ce.CeTaskCharacteristicDto.BRANCH_TYPE_KEY;
import static org.sonar.db.ce.CeTaskCharacteristicDto.PULL_REQUEST;
@@ -75,7 +76,7 @@ public class AsyncIssueIndexingImpl implements AsyncIssueIndexing {
return;
}

List<String> projectUuids = branchInNeedOfIssueSync.stream().map(BranchDto::getProjectUuid).distinct().collect(Collectors.toList());
List<String> projectUuids = branchInNeedOfIssueSync.stream().map(BranchDto::getProjectUuid).distinct().collect(toCollection(ArrayList<String>::new));
LOG.info("{} projects found in need of issue sync.", projectUuids.size());

sortProjectUuids(dbSession, projectUuids);

+ 3
- 2
server/sonar-webserver-es/src/main/java/org/sonar/server/issue/index/IssueIndex.java View File

@@ -99,7 +99,7 @@ import org.springframework.util.CollectionUtils;
import static com.google.common.base.Preconditions.checkState;
import static java.lang.String.format;
import static java.util.Collections.singletonList;
import static java.util.stream.Collectors.toList;
import static java.util.stream.Collectors.toCollection;
import static org.elasticsearch.index.query.QueryBuilders.boolQuery;
import static org.elasticsearch.index.query.QueryBuilders.existsQuery;
import static org.elasticsearch.index.query.QueryBuilders.matchAllQuery;
@@ -1245,7 +1245,8 @@ public class IssueIndex {
List<SecurityStandardCategoryStatistics> children = new ArrayList<>();
if (includeDistribution) {
Stream<? extends Terms.Bucket> stream = ((ParsedStringTerms) categoryBucket.getAggregations().get(AGG_DISTRIBUTION)).getBuckets().stream();
children = stream.map(cweBucket -> processSecurityReportCategorySearchResults(cweBucket, cweBucket.getKeyAsString(), null, null)).collect(toList());
children = stream.map(cweBucket -> processSecurityReportCategorySearchResults(cweBucket, cweBucket.getKeyAsString(), null, null))
.collect(toCollection(ArrayList<SecurityStandardCategoryStatistics>::new));
}

return processSecurityReportCategorySearchResults(categoryBucket, categoryBucket.getName(), children, version);

+ 6
- 8
server/sonar-webserver-webapi/src/main/java/org/sonar/server/setting/ws/Setting.java View File

@@ -20,11 +20,10 @@
package org.sonar.server.setting.ws;

import com.google.common.base.Splitter;
import com.google.common.collect.ImmutableTable;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import javax.annotation.CheckForNull;
import javax.annotation.Nullable;
import org.sonar.api.config.PropertyDefinition;
@@ -97,18 +96,17 @@ public class Setting {
if (propertySets.isEmpty()) {
return Collections.emptyList();
}
ImmutableTable.Builder<String, String, String> tableBuilder = new ImmutableTable.Builder<>();
Map<String, Map<String, String>> table = new HashMap<>();
propertySets.forEach(property -> {
String keyWithoutSettingKey = property.getKey().replace(propertyKey + ".", "");
List<String> setIdWithFieldKey = DOT_SPLITTER.splitToList(keyWithoutSettingKey);
String setId = setIdWithFieldKey.get(0);
String fieldKey = keyWithoutSettingKey.replaceFirst(setId + ".", "");
tableBuilder.put(setId, fieldKey, property.getValue());
table.computeIfAbsent(setId, k -> new HashMap<>()).put(fieldKey, property.getValue());
});
ImmutableTable<String, String, String> table = tableBuilder.build();
return table.rowKeySet().stream()
.map(table::row)
.collect(Collectors.toList());
return table.keySet().stream()
.map(table::get)
.toList();
}

}

Loading…
Cancel
Save