diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2023-01-18 12:17:52 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-01-18 12:17:52 +0100 |
commit | 6c457e6dd5993ec2ef15177dab4a16e3d3702b85 (patch) | |
tree | 2a180e00fa5b77e3ac8512873a259d1ecc6cc619 | |
parent | 827dd7099d2da4f4914c91bd70e0ad4707b93f26 (diff) | |
parent | 592674c7317fd1e97107ed700fb7a039ef9365a7 (diff) |
Merge pull request #25610 from vespa-engine/balder/unify-on-toList
Balder/unify on to list
110 files changed, 227 insertions, 325 deletions
diff --git a/application/src/main/java/com/yahoo/application/container/DocumentAccesses.java b/application/src/main/java/com/yahoo/application/container/DocumentAccesses.java index 90f87d0b37e..709b804fade 100644 --- a/application/src/main/java/com/yahoo/application/container/DocumentAccesses.java +++ b/application/src/main/java/com/yahoo/application/container/DocumentAccesses.java @@ -10,8 +10,6 @@ import com.yahoo.schema.derived.Deriver; import java.io.File; import java.util.stream.Stream; -import static java.util.stream.Collectors.toList; - /** * Utility for working with a {@link LocalDocumentAccess} for unit testing components which require a {@link DocumentAccess}. * @@ -37,7 +35,7 @@ public class DocumentAccesses { throw new IllegalArgumentException("No schema files found under " + schemaDirectory); DocumentmanagerConfig config = Deriver.getDocumentManagerConfig(Stream.of(schemasFiles) .map(File::toString) - .collect(toList())).build(); + .toList()).build(); return new LocalDocumentAccess(new DocumentAccessParams().setDocumentmanagerConfig(config)); } diff --git a/bundle-plugin/src/main/java/com/yahoo/container/plugin/mojo/AbstractGenerateOsgiManifestMojo.java b/bundle-plugin/src/main/java/com/yahoo/container/plugin/mojo/AbstractGenerateOsgiManifestMojo.java index 00c915b8b91..e5b9938cdb4 100644 --- a/bundle-plugin/src/main/java/com/yahoo/container/plugin/mojo/AbstractGenerateOsgiManifestMojo.java +++ b/bundle-plugin/src/main/java/com/yahoo/container/plugin/mojo/AbstractGenerateOsgiManifestMojo.java @@ -33,7 +33,6 @@ import java.util.stream.Collectors; import java.util.stream.Stream; import static com.yahoo.container.plugin.util.IO.withFileOutputStream; -import static java.util.stream.Collectors.toList; /** * @author bjorncs @@ -175,7 +174,7 @@ abstract class AbstractGenerateOsgiManifestMojo extends AbstractMojo { String[] parts = projectVersion.split("-", 2); List<String> numericPart = Stream.of(parts[0].split("\\.")).map(s -> Strings.replaceEmptyString(s, "0")).limit(3) - .collect(toList()); + .collect(Collectors.toCollection(ArrayList::new)); while (numericPart.size() < 3) { numericPart.add("0"); } diff --git a/bundle-plugin/src/main/java/com/yahoo/container/plugin/mojo/GenerateTestBundleOsgiManifestMojo.java b/bundle-plugin/src/main/java/com/yahoo/container/plugin/mojo/GenerateTestBundleOsgiManifestMojo.java index 5708d90f82f..9ee658ddc22 100644 --- a/bundle-plugin/src/main/java/com/yahoo/container/plugin/mojo/GenerateTestBundleOsgiManifestMojo.java +++ b/bundle-plugin/src/main/java/com/yahoo/container/plugin/mojo/GenerateTestBundleOsgiManifestMojo.java @@ -26,7 +26,6 @@ import static com.yahoo.container.plugin.util.TestBundleUtils.outputDirectory; import static com.yahoo.container.plugin.osgi.ExportPackages.exportsByPackageName; import static com.yahoo.container.plugin.osgi.ImportPackages.calculateImports; import static com.yahoo.container.plugin.util.Files.allDescendantFiles; -import static java.util.stream.Collectors.toList; /** * @author bjorncs @@ -44,7 +43,7 @@ public class GenerateTestBundleOsgiManifestMojo extends AbstractGenerateOsgiMani List<File> providedJars = artifactSet.getJarArtifactsProvided().stream() .map(Artifact::getFile) - .collect(toList()); + .toList(); List<Export> exportedPackagesFromProvidedJars = exportedPackagesAggregated(providedJars); @@ -79,7 +78,7 @@ public class GenerateTestBundleOsgiManifestMojo extends AbstractGenerateOsgiMani allDescendantFiles(new File(project.getBuild().getTestOutputDirectory()))) .filter(file -> file.getName().endsWith(".class")) .map(classFile -> Analyze.analyzeClass(classFile, null)) - .collect(toList()); + .toList(); } private static List<String> referencedTestCategories(List<ClassFileMetaData> analyzedClasses) { @@ -93,7 +92,7 @@ public class GenerateTestBundleOsgiManifestMojo extends AbstractGenerateOsgiMani "ai.vespa.hosted.cd.ProductionTest") .filter(referencedClasses::contains) .map(name -> name.substring(19)) - .collect(toList()); + .toList(); } } diff --git a/bundle-plugin/src/main/java/com/yahoo/container/plugin/util/TestBundleDependencyScopeTranslator.java b/bundle-plugin/src/main/java/com/yahoo/container/plugin/util/TestBundleDependencyScopeTranslator.java index 65606633dee..dd2e41b6dc3 100644 --- a/bundle-plugin/src/main/java/com/yahoo/container/plugin/util/TestBundleDependencyScopeTranslator.java +++ b/bundle-plugin/src/main/java/com/yahoo/container/plugin/util/TestBundleDependencyScopeTranslator.java @@ -13,7 +13,6 @@ import java.util.function.Function; import java.util.logging.Logger; import java.util.stream.Collectors; -import static java.util.stream.Collectors.toList; import static java.util.stream.Collectors.toMap; /** @@ -60,7 +59,7 @@ public class TestBundleDependencyScopeTranslator implements Artifacts.ScopeTrans .map(String::strip) .filter(s -> !s.isBlank()) .map(TestBundleDependencyScopeTranslator::toDependencyOverride) - .collect(toList()); + .toList(); } private static DependencyOverride toDependencyOverride(String overrideString) { @@ -96,7 +95,7 @@ public class TestBundleDependencyScopeTranslator implements Artifacts.ScopeTrans .skip(1) // Maven project itself is the first entry .map(otherArtifacts::get) .filter(Objects::nonNull) - .collect(toList()); + .toList(); } private static class DependencyOverride { diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/FleetController.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/FleetController.java index 2952d3bf9ee..4dc1fe81fd2 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/FleetController.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/FleetController.java @@ -560,7 +560,7 @@ public class FleetController implements NodeListener, SlobrokListener, SystemSta StringBuilder content = new StringBuilder(); response.setContentType("text/html"); response.setResponseCode(responseCode); - content.append("<!-- Answer to request " + httpRequest.getRequest() + " -->\n"); + content.append("<!-- Answer to request ").append(httpRequest.getRequest()).append(" -->\n"); content.append("<p>UTC time when creating this page: ").append(RealTimer.printDateNoMilliSeconds(currentTime, tz)).append("</p>"); response.writeHtmlHeader(content, message); response.writeHtmlFooter(content, hiddenMessage); @@ -781,7 +781,7 @@ public class FleetController implements NodeListener, SlobrokListener, SystemSta return cluster.getNodeInfos().stream(). filter(n -> effectiveActivatedStateVersion(n, bundle) < version). map(NodeInfo::getNode). - collect(Collectors.toList()); + toList(); } private static <E> String stringifyListWithLimits(List<E> list, int limit) { diff --git a/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/Reindexer.java b/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/Reindexer.java index 246092034de..92b5e56ac08 100644 --- a/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/Reindexer.java +++ b/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/Reindexer.java @@ -32,7 +32,6 @@ import static java.util.Objects.requireNonNull; import static java.util.logging.Level.FINE; import static java.util.logging.Level.INFO; import static java.util.logging.Level.WARNING; -import static java.util.stream.Collectors.toUnmodifiableList; /** * Progresses reindexing efforts by creating visitor sessions against its own content cluster, @@ -82,7 +81,7 @@ public class Reindexer { this.cluster = cluster; this.ready = ready.stream() // Iterate through document types in consistent order. .sorted(comparingDouble(Trigger::speed).reversed().thenComparing(Trigger::readyAt).thenComparing(Trigger::type)) - .collect(toUnmodifiableList()); + .toList(); this.database = database; this.visitorSessions = visitorSessions; this.metrics = new ReindexingMetrics(metric, cluster.name); diff --git a/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/ReindexingMaintainer.java b/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/ReindexingMaintainer.java index 53d126ebc22..0a1fdb32a84 100644 --- a/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/ReindexingMaintainer.java +++ b/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/ReindexingMaintainer.java @@ -31,9 +31,7 @@ import java.util.stream.Stream; import static java.util.logging.Level.FINE; import static java.util.logging.Level.WARNING; -import static java.util.stream.Collectors.toList; import static java.util.stream.Collectors.toMap; -import static java.util.stream.Collectors.toUnmodifiableList; /** * Runs in all cluster controller containers, and progresses reindexing efforts. @@ -71,7 +69,7 @@ public class ReindexingMaintainer extends AbstractComponent { access, metric, clock)) - .collect(toUnmodifiableList()); + .toList(); this.executor = new ScheduledThreadPoolExecutor(reindexingConfig.clusters().size(), new DaemonThreadFactory("reindexer-")); if (reindexingConfig.enabled()) scheduleStaggered((delayMillis, intervalMillis) -> executor.scheduleAtFixedRate(this::maintain, delayMillis, intervalMillis, TimeUnit.MILLISECONDS), @@ -124,7 +122,7 @@ public class ReindexingMaintainer extends AbstractComponent { .map(typeStatus -> new Trigger(manager.getDocumentType(typeStatus.getKey()), Instant.ofEpochMilli(typeStatus.getValue().readyAtMillis()), typeStatus.getValue().speed())) - .collect(toUnmodifiableList()); + .toList(); } /** Schedules a task with the given interval (across all containers in this ZK cluster). */ @@ -135,7 +133,7 @@ public class ReindexingMaintainer extends AbstractComponent { long intervalMillis = interval.toMillis(); List<String> hostnames = Stream.of(clusterHostnames.split(",")) .map(hostPort -> hostPort.split(":")[0]) - .collect(toList()); + .toList(); if (hostnames.contains(hostname)) { long offset = hostnames.indexOf(hostname) * intervalMillis; intervalMillis *= hostnames.size(); diff --git a/clustercontroller-reindexer/src/test/java/ai/vespa/reindexing/ReindexerTest.java b/clustercontroller-reindexer/src/test/java/ai/vespa/reindexing/ReindexerTest.java index dffe1dd43ef..9c4d43faa4b 100644 --- a/clustercontroller-reindexer/src/test/java/ai/vespa/reindexing/ReindexerTest.java +++ b/clustercontroller-reindexer/src/test/java/ai/vespa/reindexing/ReindexerTest.java @@ -32,7 +32,6 @@ import java.util.concurrent.Executors; import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicReference; -import static java.util.stream.Collectors.toList; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertSame; import static org.junit.jupiter.api.Assertions.assertThrows; @@ -182,7 +181,7 @@ class ReindexerTest { } List<Trigger> triggers(long... ready) { - return Arrays.stream(ready).mapToObj(at -> new Trigger(music, Instant.ofEpochMilli(at), 0.2)).collect(toList()); + return Arrays.stream(ready).mapToObj(at -> new Trigger(music, Instant.ofEpochMilli(at), 0.2)).toList(); } } diff --git a/config-model-api/src/main/java/com/yahoo/config/application/api/TimeWindow.java b/config-model-api/src/main/java/com/yahoo/config/application/api/TimeWindow.java index 8256237dc43..1b5c5ce5873 100644 --- a/config-model-api/src/main/java/com/yahoo/config/application/api/TimeWindow.java +++ b/config-model-api/src/main/java/com/yahoo/config/application/api/TimeWindow.java @@ -34,8 +34,8 @@ public class TimeWindow { private final LocalDateRange dateRange; private TimeWindow(List<DayOfWeek> days, List<Integer> hours, ZoneId zone, LocalDateRange dateRange) { - this.days = Objects.requireNonNull(days).stream().distinct().sorted().collect(Collectors.toUnmodifiableList()); - this.hours = Objects.requireNonNull(hours).stream().distinct().sorted().collect(Collectors.toUnmodifiableList()); + this.days = Objects.requireNonNull(days).stream().distinct().sorted().toList(); + this.hours = Objects.requireNonNull(hours).stream().distinct().sorted().toList(); this.zone = Objects.requireNonNull(zone); this.dateRange = Objects.requireNonNull(dateRange); if (days.isEmpty()) throw new IllegalArgumentException("At least one day must be specified"); diff --git a/config-model/src/main/java/com/yahoo/schema/LargeRankingExpressions.java b/config-model/src/main/java/com/yahoo/schema/LargeRankingExpressions.java index 2ae9041b1a2..319b1ac343a 100644 --- a/config-model/src/main/java/com/yahoo/schema/LargeRankingExpressions.java +++ b/config-model/src/main/java/com/yahoo/schema/LargeRankingExpressions.java @@ -40,7 +40,7 @@ public class LargeRankingExpressions { /** Returns a read-only list of ranking constants ordered by name */ public Collection<RankingExpressionBody> expressions() { - return expressions.values().stream().sorted().collect(Collectors.toUnmodifiableList()); + return expressions.values().stream().sorted().toList(); } // Note: Use by integration tests in internal repo diff --git a/config-model/src/main/java/com/yahoo/schema/document/ImmutableImportedComplexSDField.java b/config-model/src/main/java/com/yahoo/schema/document/ImmutableImportedComplexSDField.java index 553b5b4d940..35b5d06067f 100644 --- a/config-model/src/main/java/com/yahoo/schema/document/ImmutableImportedComplexSDField.java +++ b/config-model/src/main/java/com/yahoo/schema/document/ImmutableImportedComplexSDField.java @@ -3,8 +3,6 @@ package com.yahoo.schema.document; import java.util.Collection; -import static java.util.stream.Collectors.toList; - /** * Wraps {@link ImportedComplexField} as {@link ImmutableSDField}. */ @@ -24,6 +22,6 @@ public class ImmutableImportedComplexSDField extends ImmutableImportedSDField { @Override public Collection<? extends ImmutableSDField> getStructFields() { - return importedComplexField.getNestedFields().stream().map(field -> field.asImmutableSDField()).collect(toList()); + return importedComplexField.getNestedFields().stream().map(field -> field.asImmutableSDField()).toList(); } } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/CloudWatchValidator.java b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/CloudWatchValidator.java index 67be9d7bad8..847a3402dc5 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/CloudWatchValidator.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/CloudWatchValidator.java @@ -8,8 +8,6 @@ import com.yahoo.vespa.model.admin.monitoring.MetricsConsumer; import java.util.List; -import static java.util.stream.Collectors.toList; - /** * @author gjoranv */ @@ -23,7 +21,7 @@ public class CloudWatchValidator extends Validator { var offendingConsumers = model.getAdmin().getUserMetrics().getConsumers().values().stream() .filter(consumer -> !consumer.cloudWatches().isEmpty()) - .collect(toList()); + .toList(); if (! offendingConsumers.isEmpty()) { throw new IllegalArgumentException("CloudWatch cannot be set up for non-public hosted Vespa and must " + @@ -32,7 +30,7 @@ public class CloudWatchValidator extends Validator { } private List<String> consumerIds(List<MetricsConsumer> offendingConsumers) { - return offendingConsumers.stream().map(MetricsConsumer::id).collect(toList()); + return offendingConsumers.stream().map(MetricsConsumer::id).toList(); } } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/Validation.java b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/Validation.java index 877dd12104f..93a28820125 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/Validation.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/Validation.java @@ -42,7 +42,6 @@ import java.util.stream.Collectors; import static java.util.stream.Collectors.groupingBy; import static java.util.stream.Collectors.mapping; import static java.util.stream.Collectors.toCollection; -import static java.util.stream.Collectors.toList; /** * Executor of validators. This defines the right order of validator execution. @@ -129,7 +128,7 @@ public class Validation { }; List<ConfigChangeAction> actions = Arrays.stream(validators) .flatMap(v -> v.validate(currentModel, nextModel, overrides, now).stream()) - .collect(toList()); + .toList(); Map<ValidationId, Collection<String>> disallowableActions = actions.stream() .filter(action -> action.validationId().isPresent()) diff --git a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/IndexedSearchClusterChangeValidator.java b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/IndexedSearchClusterChangeValidator.java index 8c333a099d0..778ae604333 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/IndexedSearchClusterChangeValidator.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/IndexedSearchClusterChangeValidator.java @@ -94,7 +94,7 @@ public class IndexedSearchClusterChangeValidator implements ChangeValidator { private static List<ServiceInfo> getSearchNodeServices(IndexedSearchCluster cluster) { return cluster.getSearchNodes().stream(). map(node -> node.getServiceInfo()). - collect(Collectors.toList()); + toList(); } private static List<ConfigChangeAction> modifyActions(List<VespaConfigChangeAction> result, diff --git a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/NodeResourceChangeValidator.java b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/NodeResourceChangeValidator.java index 7c6f242bbe2..490fea40fab 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/NodeResourceChangeValidator.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/NodeResourceChangeValidator.java @@ -4,6 +4,7 @@ package com.yahoo.vespa.model.application.validation.change; import com.yahoo.config.application.api.ValidationOverrides; import com.yahoo.config.model.api.ConfigChangeAction; import com.yahoo.config.provision.ClusterSpec; +import com.yahoo.config.provision.HostSpec; import com.yahoo.config.provision.NodeResources; import com.yahoo.vespa.model.VespaModel; import com.yahoo.vespa.model.container.ApplicationContainerCluster; @@ -46,7 +47,7 @@ public class NodeResourceChangeValidator implements ChangeValidator { return model.allocatedHosts().getHosts().stream().filter(host -> host.membership().isPresent()) .filter(host -> host.membership().get().cluster().id().equals(clusterId)) .findFirst() - .map(host -> host.advertisedResources()); + .map(HostSpec::advertisedResources); } private List<ConfigChangeAction> createRestartActionsFor(ClusterSpec.Id clusterId, VespaModel model) { diff --git a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/StreamingSearchClusterChangeValidator.java b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/StreamingSearchClusterChangeValidator.java index 167aff1064b..83d723398a6 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/StreamingSearchClusterChangeValidator.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/StreamingSearchClusterChangeValidator.java @@ -8,6 +8,7 @@ import com.yahoo.config.provision.ClusterSpec; import com.yahoo.documentmodel.NewDocumentType; import com.yahoo.schema.derived.AttributeFields; import com.yahoo.schema.document.Attribute; +import com.yahoo.vespa.model.AbstractService; import com.yahoo.vespa.model.VespaModel; import com.yahoo.vespa.model.application.validation.change.search.ChangeMessageBuilder; import com.yahoo.vespa.model.application.validation.change.search.DocumentTypeChangeValidator; @@ -36,10 +37,8 @@ public class StreamingSearchClusterChangeValidator implements ChangeValidator { List<StreamingSearchCluster> nextStreamingClusters = nextCluster.getSearch().getStreamingClusters(); currentCluster.getSearch().getStreamingClusters().forEach(currentStreamingCluster -> { Optional<StreamingSearchCluster> nextStreamingCluster = findStreamingCluster(currentStreamingCluster.getClusterName(), nextStreamingClusters); - if (nextStreamingCluster.isPresent()) { - result.addAll(validateStreamingCluster(currentCluster, currentStreamingCluster, - nextCluster, nextStreamingCluster.get(), overrides, now)); - } + nextStreamingCluster.ifPresent(streamingSearchCluster -> result.addAll(validateStreamingCluster(currentCluster, currentStreamingCluster, + nextCluster, streamingSearchCluster))); }); } }); @@ -55,14 +54,12 @@ public class StreamingSearchClusterChangeValidator implements ChangeValidator { private static List<ConfigChangeAction> validateStreamingCluster(ContentCluster currentCluster, StreamingSearchCluster currentStreamingCluster, ContentCluster nextCluster, - StreamingSearchCluster nextStreamingCluster, - ValidationOverrides overrides, - Instant now) { + StreamingSearchCluster nextStreamingCluster) { List<VespaConfigChangeAction> result = new ArrayList<>(); result.addAll(validateDocumentTypeChanges(currentCluster.id(), getDocumentType(currentCluster, currentStreamingCluster), - getDocumentType(nextCluster, nextStreamingCluster), overrides, now)); + getDocumentType(nextCluster, nextStreamingCluster))); result.addAll(validateAttributeFastAccessAdded(currentCluster.id(), currentStreamingCluster.derived().getAttributeFields(), nextStreamingCluster.derived().getAttributeFields())); @@ -75,9 +72,7 @@ public class StreamingSearchClusterChangeValidator implements ChangeValidator { private static List<VespaConfigChangeAction> validateDocumentTypeChanges(ClusterSpec.Id id, NewDocumentType currentDocType, - NewDocumentType nextDocType, - ValidationOverrides overrides, - Instant now) { + NewDocumentType nextDocType) { return new DocumentTypeChangeValidator(id, currentDocType, nextDocType).validate(); } @@ -115,8 +110,8 @@ public class StreamingSearchClusterChangeValidator implements ChangeValidator { private static List<ServiceInfo> getSearchNodeServices(ContentCluster cluster) { return cluster.getSearch().getSearchNodes().stream() - .map(node -> node.getServiceInfo()) - .collect(Collectors.toList()); + .map(AbstractService::getServiceInfo) + .toList(); } private static List<ConfigChangeAction> modifyActions(List<VespaConfigChangeAction> result, diff --git a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/search/AttributeChangeValidator.java b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/search/AttributeChangeValidator.java index 5c3905e3311..838c96a8249 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/search/AttributeChangeValidator.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/search/AttributeChangeValidator.java @@ -69,7 +69,7 @@ public class AttributeChangeValidator { private List<VespaConfigChangeAction> validateAddAttributeAspect() { return nextFields.attributes().stream(). - map(attr -> attr.getName()). + map(Attribute::getName). filter(attrName -> !currentFields.containsAttribute(attrName) && currentDocType.containsField(attrName)). map(attrName -> new VespaRestartAction(id, new ChangeMessageBuilder(attrName).addChange("add attribute aspect").build())). @@ -78,7 +78,7 @@ public class AttributeChangeValidator { private List<VespaConfigChangeAction> validateRemoveAttributeAspect() { return currentFields.attributes().stream(). - map(attr -> attr.getName()). + map(Attribute::getName). filter(attrName -> !nextFields.containsAttribute(attrName) && nextDocType.containsField(attrName) && !isIndexField(attrName)). diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/component/DiscBindingsConfigGenerator.java b/config-model/src/main/java/com/yahoo/vespa/model/container/component/DiscBindingsConfigGenerator.java index e4a5c2cd440..ca45a1d1687 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/component/DiscBindingsConfigGenerator.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/component/DiscBindingsConfigGenerator.java @@ -7,7 +7,6 @@ import java.util.LinkedHashMap; import java.util.Map; import static com.yahoo.container.jdisc.JdiscBindingsConfig.Handlers; -import static java.util.stream.Collectors.toList; /** * @author gjoranv @@ -34,6 +33,6 @@ public class DiscBindingsConfigGenerator { } private static Collection<String> toStrings(Collection<BindingPattern> bindings) { - return bindings.stream().map(BindingPattern::patternString).collect(toList()); + return bindings.stream().map(BindingPattern::patternString).toList(); } } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/http/xml/JettyConnectorBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/container/http/xml/JettyConnectorBuilder.java index 69480ee0703..8a89355ee36 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/http/xml/JettyConnectorBuilder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/http/xml/JettyConnectorBuilder.java @@ -19,8 +19,6 @@ import java.util.Arrays; import java.util.List; import java.util.Optional; -import static java.util.stream.Collectors.toList; - /** * @author Einar M R Rosenvinge * @author mortent @@ -76,7 +74,7 @@ public class JettyConnectorBuilder extends VespaDomBuilder.DomConfigProducerBuil Arrays.stream(element.split(",")) .filter(listEntry -> !listEntry.isBlank()) .map(String::trim) - .collect(toList())) + .toList()) .orElse(List.of()); } } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/content/ContentSearchCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/content/ContentSearchCluster.java index 60ab5dacc5f..d4a41a090b9 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/content/ContentSearchCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/content/ContentSearchCluster.java @@ -35,8 +35,6 @@ import java.util.TreeMap; import java.util.function.Predicate; import java.util.stream.Collectors; -import static java.util.stream.Collectors.toList; - /** * Encapsulates the various options for search in a content model. * Wraps a search cluster from com.yahoo.vespa.model.search. @@ -345,7 +343,7 @@ public class ContentSearchCluster extends AbstractConfigProducer<SearchCluster> return getClusters().values().stream() .filter(StreamingSearchCluster.class::isInstance) .map(StreamingSearchCluster.class::cast) - .collect(toList()); + .toList(); } public List<NewDocumentType> getDocumentTypesWithStreamingCluster() { return documentTypes(this::hasIndexingModeStreaming); } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/content/cluster/ContentCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/content/cluster/ContentCluster.java index bf5770681ef..3b01cd02b9c 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/content/cluster/ContentCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/content/cluster/ContentCluster.java @@ -62,8 +62,6 @@ import java.util.Set; import java.util.TreeMap; import java.util.logging.Level; -import static java.util.stream.Collectors.toList; - /** * A content cluster. * @@ -304,7 +302,7 @@ public class ContentCluster extends AbstractConfigProducer<AbstractConfigProduce } else { // self-hosted: Put cluster controller on config servers or use explicit cluster controllers if (admin.getClusterControllers() == null) { - var hosts = admin.getConfigservers().stream().map(s -> s.getHostResource()).collect(toList()); + var hosts = admin.getConfigservers().stream().map(s -> s.getHostResource()).toList(); if (hosts.size() > 1) { var message = "When having content clusters and more than 1 config server " + "it is recommended to configure cluster controllers explicitly."; diff --git a/config-model/src/test/java/com/yahoo/schema/DocumentGraphValidatorTest.java b/config-model/src/test/java/com/yahoo/schema/DocumentGraphValidatorTest.java index ccfa5c51a16..a8a606c87b2 100644 --- a/config-model/src/test/java/com/yahoo/schema/DocumentGraphValidatorTest.java +++ b/config-model/src/test/java/com/yahoo/schema/DocumentGraphValidatorTest.java @@ -14,7 +14,6 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -import static java.util.stream.Collectors.toList; import static org.junit.jupiter.api.Assertions.*; /** @@ -136,7 +135,7 @@ public class DocumentGraphValidatorTest { } private static List<SDDocumentType> documentListOf(Schema... schemas) { - return Arrays.stream(schemas).map(Schema::getDocument).collect(toList()); + return Arrays.stream(schemas).map(Schema::getDocument).toList(); } private static Schema createSearchWithName(String name, Schema... parents) { diff --git a/config-model/src/test/java/com/yahoo/schema/derived/SchemaOrdererTestCase.java b/config-model/src/test/java/com/yahoo/schema/derived/SchemaOrdererTestCase.java index 16001d3912d..a3c0897bb02 100644 --- a/config-model/src/test/java/com/yahoo/schema/derived/SchemaOrdererTestCase.java +++ b/config-model/src/test/java/com/yahoo/schema/derived/SchemaOrdererTestCase.java @@ -19,7 +19,6 @@ import java.util.Map; import java.util.Objects; import static java.util.Collections.emptyMap; -import static java.util.stream.Collectors.toList; import static org.junit.jupiter.api.Assertions.assertEquals; /** @@ -80,12 +79,12 @@ public class SchemaOrdererTestCase extends AbstractSchemaTestCase { List<Schema> inputSchemas = inputNames.stream() .map(schemas::get) .map(Objects::requireNonNull) - .collect(toList()); + .toList(); List<String> actualSearchOrder = new SearchOrderer() .order(inputSchemas) .stream() .map(Schema::getName) - .collect(toList()); + .toList(); assertEquals(expectedSearchOrder, actualSearchOrder); } diff --git a/config-model/src/test/java/com/yahoo/vespa/model/admin/metricsproxy/MetricsProxyContainerClusterTest.java b/config-model/src/test/java/com/yahoo/vespa/model/admin/metricsproxy/MetricsProxyContainerClusterTest.java index 0eb1db1acaa..a388fdd1b3d 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/admin/metricsproxy/MetricsProxyContainerClusterTest.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/admin/metricsproxy/MetricsProxyContainerClusterTest.java @@ -37,7 +37,6 @@ import static com.yahoo.vespa.model.admin.metricsproxy.MetricsProxyModelTester.g import static com.yahoo.vespa.model.admin.metricsproxy.MetricsProxyModelTester.getMetricsNodesConfig; import static com.yahoo.vespa.model.admin.metricsproxy.MetricsProxyModelTester.getModel; import static com.yahoo.vespa.model.admin.metricsproxy.MetricsProxyModelTester.servicesWithAdminOnly; -import static java.util.stream.Collectors.toList; import static java.util.stream.Collectors.toSet; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue; @@ -82,7 +81,7 @@ public class MetricsProxyContainerClusterTest { void http_handlers_are_set_up() { VespaModel model = getModel(servicesWithAdminOnly(), self_hosted); Collection<Handler> handlers = model.getAdmin().getMetricsProxyCluster().getHandlers(); - Collection<ComponentSpecification> handlerClasses = handlers.stream().map(Component::getClassId).collect(toList()); + Collection<ComponentSpecification> handlerClasses = handlers.stream().map(Component::getClassId).toList(); assertTrue(handlerClasses.contains(ComponentSpecification.fromString(MetricsV1Handler.class.getName()))); assertTrue(handlerClasses.contains(ComponentSpecification.fromString(PrometheusHandler.class.getName()))); diff --git a/config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/ConfigChangeTestUtils.java b/config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/ConfigChangeTestUtils.java index d975618c1db..64eb63e8a56 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/ConfigChangeTestUtils.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/ConfigChangeTestUtils.java @@ -54,7 +54,7 @@ public class ConfigChangeTestUtils { return services.stream() .map(service -> new ServiceInfo(service.getServiceName(), "null", null, null, service.getConfigId(), "null")) - .collect(Collectors.toList()); + .toList(); } public static void assertEqualActions(List<ConfigChangeAction> exp, List<ConfigChangeAction> act) { diff --git a/config-model/src/test/java/com/yahoo/vespa/model/content/utils/ContentClusterBuilder.java b/config-model/src/test/java/com/yahoo/vespa/model/content/utils/ContentClusterBuilder.java index b56f8fa2f25..2538cdb5ab1 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/content/utils/ContentClusterBuilder.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/content/utils/ContentClusterBuilder.java @@ -56,7 +56,7 @@ public class ContentClusterBuilder { public ContentClusterBuilder docTypes(String ... docTypes) { this.docTypes = Arrays.asList(docTypes).stream(). map(type -> DocType.index(type)). - collect(Collectors.toList()); + toList(); return this; } diff --git a/config/src/main/java/com/yahoo/config/subscription/ConfigSubscriber.java b/config/src/main/java/com/yahoo/config/subscription/ConfigSubscriber.java index e2b53879d92..9a360c3d350 100644 --- a/config/src/main/java/com/yahoo/config/subscription/ConfigSubscriber.java +++ b/config/src/main/java/com/yahoo/config/subscription/ConfigSubscriber.java @@ -18,7 +18,6 @@ import java.util.logging.Logger; import static java.util.logging.Level.FINE; import static java.util.logging.Level.SEVERE; import static java.util.logging.Level.WARNING; -import static java.util.stream.Collectors.toList; /** * Used for subscribing to one or more configs. Can optionally be given a {@link ConfigSource} for the configs @@ -495,7 +494,7 @@ public class ConfigSubscriber implements AutoCloseable { log.log(WARNING, stackTraceAtConstruction, () -> String.format("%s: Closing subscription from finalizer() - close() has not been called (keys=%s)", super.toString(), - subscriptionHandles.stream().map(handle -> handle.subscription().getKey().toString()).collect(toList()))); + subscriptionHandles.stream().map(handle -> handle.subscription().getKey().toString()).toList())); close(); } } finally { diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/application/ApplicationCuratorDatabase.java b/configserver/src/main/java/com/yahoo/vespa/config/server/application/ApplicationCuratorDatabase.java index 438ac7dc9a8..d757421c23a 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/application/ApplicationCuratorDatabase.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/application/ApplicationCuratorDatabase.java @@ -122,7 +122,7 @@ public class ApplicationCuratorDatabase { .sorted() .map(ApplicationId::fromSerializedForm) .filter(id -> activeSessionOf(id).isPresent()) - .collect(Collectors.toUnmodifiableList()); + .toList(); } public Optional<ApplicationReindexing> readReindexingStatus(ApplicationId id) { diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/http/v1/RoutingStatusApiHandler.java b/configserver/src/main/java/com/yahoo/vespa/config/server/http/v1/RoutingStatusApiHandler.java index cbd66c0bb67..369f91ec876 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/http/v1/RoutingStatusApiHandler.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/http/v1/RoutingStatusApiHandler.java @@ -99,7 +99,7 @@ public class RoutingStatusApiHandler extends RestApiRequestHandler<RoutingStatus List<String> inactiveDeployments = curator.getChildren(DEPLOYMENT_STATUS_ROOT).stream() .filter(upstreamName -> deploymentStatus(upstreamName).status() == RoutingStatus.out) .sorted() - .collect(Collectors.toUnmodifiableList()); + .toList(); Slime slime = new Slime(); Cursor rootArray = slime.setArray(); inactiveDeployments.forEach(rootArray::addString); diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/HostedDeployTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/HostedDeployTest.java index 39b1a588a17..842416615e2 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/HostedDeployTest.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/HostedDeployTest.java @@ -52,7 +52,6 @@ import static com.yahoo.vespa.config.server.deploy.DeployTester.CountingModelFac import static com.yahoo.vespa.config.server.deploy.DeployTester.createFailingModelFactory; import static com.yahoo.vespa.config.server.deploy.DeployTester.createHostedModelFactory; import static com.yahoo.yolean.Exceptions.uncheck; -import static java.util.stream.Collectors.toList; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertThrows; @@ -529,7 +528,7 @@ public class HostedDeployTest { private List<Host> createHosts(int count, String ... versions) { return IntStream.rangeClosed(1, count) .mapToObj(i -> createHost("host" + i, versions[Math.min(i, versions.length) - 1])) - .collect(toList()); + .toList(); } private Host createHost(String hostname, String version) { diff --git a/container-core/src/main/java/com/yahoo/container/core/config/ApplicationBundleLoader.java b/container-core/src/main/java/com/yahoo/container/core/config/ApplicationBundleLoader.java index 7311641b1bd..d0054f703c5 100644 --- a/container-core/src/main/java/com/yahoo/container/core/config/ApplicationBundleLoader.java +++ b/container-core/src/main/java/com/yahoo/container/core/config/ApplicationBundleLoader.java @@ -15,7 +15,6 @@ import java.util.List; import java.util.Map; import java.util.Set; import java.util.logging.Logger; -import java.util.stream.Collectors; /** * Manages the set of installed and active/inactive bundles. @@ -55,7 +54,7 @@ public class ApplicationBundleLoader { */ public synchronized List<BsnVersion> activeBundlesBsnVersion() { return activeBundles.values().stream().map(BsnVersion::new) - .collect(Collectors.toList()); + .toList(); } /** diff --git a/container-core/src/main/java/com/yahoo/container/core/config/HandlersConfigurerDi.java b/container-core/src/main/java/com/yahoo/container/core/config/HandlersConfigurerDi.java index 30c271309d1..06dce96e70a 100644 --- a/container-core/src/main/java/com/yahoo/container/core/config/HandlersConfigurerDi.java +++ b/container-core/src/main/java/com/yahoo/container/core/config/HandlersConfigurerDi.java @@ -143,7 +143,7 @@ public class HandlersConfigurerDi { return activeBundles.stream() .filter(bundle -> bundle.symbolicName().equals(bundleSpec.getName())) .map(BsnVersion::version) - .collect(Collectors.toList()); + .toList(); } } diff --git a/container-core/src/main/java/com/yahoo/container/di/componentgraph/core/ComponentGraph.java b/container-core/src/main/java/com/yahoo/container/di/componentgraph/core/ComponentGraph.java index 8a07ef0ae14..a735ed32774 100644 --- a/container-core/src/main/java/com/yahoo/container/di/componentgraph/core/ComponentGraph.java +++ b/container-core/src/main/java/com/yahoo/container/di/componentgraph/core/ComponentGraph.java @@ -92,8 +92,7 @@ public class ComponentGraph { return Optional.ofNullable(Iterables.get(components, 0)); } else { - List<Node> nonProviderComponents = components.stream().filter(c -> !Provider.class.isAssignableFrom(c.instanceType())) - .collect(Collectors.toList()); + var nonProviderComponents = components.stream().filter(c -> !Provider.class.isAssignableFrom(c.instanceType())).toList(); if (nonProviderComponents.isEmpty()) { throw new IllegalStateException("Multiple global component providers for class '" + clazz.getName() + "' found :" + components); } else if (nonProviderComponents.size() == 1) { @@ -125,7 +124,7 @@ public class ComponentGraph { } private Collection<ComponentNode> osgiComponentsOfClass(Class<?> clazz) { - return componentNodes().stream().filter(node -> clazz.isAssignableFrom(node.componentType())).collect(Collectors.toList()); + return componentNodes().stream().filter(node -> clazz.isAssignableFrom(node.componentType())).toList(); } public List<Node> complete(Injector fallbackInjector) { @@ -198,9 +197,8 @@ public class ComponentGraph { return node.componentId(); } else if (parameterType instanceof Class && ConfigInstance.class.isAssignableFrom((Class<?>) parameterType)) { return handleConfigParameter((ComponentNode) node, (Class<?>) parameterType); - } else if (parameterType instanceof ParameterizedType + } else if (parameterType instanceof ParameterizedType registry && ((ParameterizedType) parameterType).getRawType().equals(ComponentRegistry.class)) { - ParameterizedType registry = (ParameterizedType) parameterType; return getComponentRegistry(registry.getActualTypeArguments()[0]); } else if (parameterType instanceof Class) { return handleComponentParameter(node, fallbackInjector, (Class<?>) parameterType, annotations); @@ -219,8 +217,7 @@ public class ComponentGraph { private ComponentRegistryNode getComponentRegistry(Type componentType) { Class<?> componentClass; - if (componentType instanceof WildcardType) { - WildcardType wildcardType = (WildcardType) componentType; + if (componentType instanceof WildcardType wildcardType) { if (wildcardType.getLowerBounds().length > 0 || wildcardType.getUpperBounds().length > 1) { throw new RuntimeException("Can't create ComponentRegistry of unknown wildcard type" + wildcardType); } @@ -289,7 +286,7 @@ public class ComponentGraph { private Node handleComponentParameter(Node node, Injector fallbackInjector, Class<?> clazz, Collection<Annotation> annotations) { - List<Annotation> bindingAnnotations = annotations.stream().filter(ComponentGraph::isBindingAnnotation).collect(Collectors.toList()); + List<Annotation> bindingAnnotations = annotations.stream().filter(ComponentGraph::isBindingAnnotation).toList(); Key<?> key = getKey(clazz, bindingAnnotations.stream().findFirst()); if (bindingAnnotations.size() > 1) { @@ -351,7 +348,7 @@ public class ComponentGraph { Annotation annotation = key.getAnnotation(); List<T> filteredByClass = nodesOfType(nodes, nodeType).stream().filter(node -> clazz.isAssignableFrom(node.componentType())) - .collect(Collectors.toList()); + .toList(); if (filteredByClass.size() == 1) { return filteredByClass; @@ -359,7 +356,7 @@ public class ComponentGraph { List<T> filteredByClassAndAnnotation = filteredByClass.stream() .filter(node -> (annotation == null && node.instanceKey().getAnnotation() == null) || annotation.equals(node.instanceKey().getAnnotation())) - .collect(Collectors.toList()); + .toList(); if (filteredByClassAndAnnotation.size() > 0) { return filteredByClassAndAnnotation; } else { diff --git a/container-core/src/main/java/com/yahoo/container/http/filter/FilterChainRepository.java b/container-core/src/main/java/com/yahoo/container/http/filter/FilterChainRepository.java index 1f933899e03..d1ebf774d9b 100644 --- a/container-core/src/main/java/com/yahoo/container/http/filter/FilterChainRepository.java +++ b/container-core/src/main/java/com/yahoo/container/http/filter/FilterChainRepository.java @@ -28,7 +28,6 @@ import java.util.Set; import java.util.logging.Logger; import static java.util.Collections.emptyList; -import static java.util.stream.Collectors.toList; import static java.util.stream.Collectors.toSet; /** @@ -100,7 +99,7 @@ public class FilterChainRepository extends AbstractComponent { checkFilterTypesCompatible(chain); List<?> jdiscFilters = chain.components().stream() .map(filterWrapper -> filterWrapper.filter) - .collect(toList()); + .toList(); List<?> wrappedFilters = wrapSecurityFilters(jdiscFilters); Object head = wrappedFilters.get(0); if (wrappedFilters.size() == 1) return head; diff --git a/container-core/src/main/java/com/yahoo/jdisc/http/Cookie.java b/container-core/src/main/java/com/yahoo/jdisc/http/Cookie.java index c2faa1cd10a..f4837d32014 100644 --- a/container-core/src/main/java/com/yahoo/jdisc/http/Cookie.java +++ b/container-core/src/main/java/com/yahoo/jdisc/http/Cookie.java @@ -14,8 +14,6 @@ import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; import java.util.stream.StreamSupport; -import static java.util.stream.Collectors.toList; - /** * A RFC 6265 compliant cookie. * @@ -194,7 +192,7 @@ public class Cookie { cookie.setHttpOnly(servletCookie.isHttpOnly()); return cookie; }) - .collect(toList()); + .toList(); } public static List<String> toSetCookieHeaders(Iterable<? extends Cookie> cookies) { @@ -212,7 +210,7 @@ public class Cookie { 0, /* version */ Optional.ofNullable(cookie.getSameSite()).map(SameSite::jettySameSite).orElse(null) ).getRFC6265SetCookie()) - .collect(toList()); + .toList(); } public static Cookie fromSetCookieHeader(String headerVal) { diff --git a/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/ConnectionThrottler.java b/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/ConnectionThrottler.java index 61bc767c330..06d1a707be9 100644 --- a/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/ConnectionThrottler.java +++ b/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/ConnectionThrottler.java @@ -25,8 +25,6 @@ import java.util.Set; import java.util.concurrent.TimeUnit; import java.util.logging.Logger; -import static java.util.stream.Collectors.toList; - /** * Monitor various resource constraints and throttles new connections once a threshold is exceeded. * Implementation inspired by Jetty's {@link LowResourceMonitor}, {@link AcceptRateLimit} and {@link ConnectionLimit}. @@ -133,7 +131,7 @@ class ConnectionThrottler extends ContainerLifeCycle implements SelectorManager. .map(ResourceLimit::isThresholdExceeded) .filter(Optional::isPresent) .map(Optional::get) - .collect(toList()); + .toList(); } } diff --git a/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/JettyHttpServer.java b/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/JettyHttpServer.java index 7b723b3a48e..46fbc158f0a 100644 --- a/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/JettyHttpServer.java +++ b/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/JettyHttpServer.java @@ -41,8 +41,6 @@ import java.util.logging.Level; import java.util.logging.Logger; import java.util.stream.Collectors; -import static java.util.stream.Collectors.toList; - /** * @author Simon Thoresen Hult * @author bjorncs @@ -87,7 +85,7 @@ public class JettyHttpServer extends AbstractServerProvider { ServletHolder jdiscServlet = new ServletHolder(new JDiscHttpServlet(jDiscContext)); List<JDiscServerConnector> connectors = Arrays.stream(server.getConnectors()) .map(JDiscServerConnector.class::cast) - .collect(toList()); + .toList(); server.setHandler(createRootHandler(serverConfig, connectors, jdiscServlet)); this.metricsReporter = new ServerMetricReporter(metric, server); } diff --git a/container-search/src/main/java/com/yahoo/search/grouping/vespa/RequestBuilder.java b/container-search/src/main/java/com/yahoo/search/grouping/vespa/RequestBuilder.java index 2280ea01263..e5b45373370 100644 --- a/container-search/src/main/java/com/yahoo/search/grouping/vespa/RequestBuilder.java +++ b/container-search/src/main/java/com/yahoo/search/grouping/vespa/RequestBuilder.java @@ -25,8 +25,6 @@ import java.util.OptionalLong; import java.util.Stack; import java.util.TimeZone; -import static java.util.stream.Collectors.toList; - /** * This class implements the necessary logic to build a list of {@link Grouping} objects from an instance of {@link * GroupingOperation}. It is used by the {@link GroupingExecutor}. @@ -456,7 +454,7 @@ class RequestBuilder { return lvl.getGroupPrototype().getAggregationResults().stream() .filter(ar -> ar instanceof HitsAggregationResult) .map(ar -> (HitsAggregationResult) ar) - .collect(toList()); + .toList(); } private static class BuildFrame { diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/LogEntry.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/LogEntry.java index 73f83a9b6e5..96a0e5baa56 100644 --- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/LogEntry.java +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/LogEntry.java @@ -71,7 +71,7 @@ public class LogEntry { .replaceAll("\\\\t", "\t"))) .filter(entry -> entry.at().isAfter(from)) .limit(100_000) - .collect(Collectors.toUnmodifiableList()); + .toList(); } catch (IOException e) { throw new UncheckedIOException(e); diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athenz/ZtsClientMock.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athenz/ZtsClientMock.java index 4d019f2ce59..d3e74965c4b 100644 --- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athenz/ZtsClientMock.java +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/athenz/ZtsClientMock.java @@ -20,8 +20,6 @@ import java.util.List; import java.util.logging.Level; import java.util.logging.Logger; -import static java.util.stream.Collectors.toList; - /** * @author bjorncs */ @@ -41,7 +39,7 @@ public class ZtsClientMock implements ZtsClient { return athenz.domains.values().stream() .filter(domain -> domain.tenantAdmins.contains(userIdentity) || domain.admins.contains(userIdentity)) .map(domain -> domain.name) - .collect(toList()); + .toList(); } @Override diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateMock.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateMock.java index f7e7d69cd2f..7ae03d7ce6b 100644 --- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateMock.java +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateMock.java @@ -58,7 +58,7 @@ public class EndpointCertificateMock implements EndpointCertificateProvider { "athenzDomain", p.requestedDnsSans().stream() .map(san -> new EndpointCertificateRequestMetadata.DnsNameStatus(san, "done")) - .collect(Collectors.toUnmodifiableList()), + .toList(), 3600, "ok", "2021-09-28T00:14:31.946562037Z", @@ -66,7 +66,7 @@ public class EndpointCertificateMock implements EndpointCertificateProvider { p.issuer(), "rsa_2048" )) - .collect(Collectors.toUnmodifiableList()); + .toList(); } @Override diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/MemoryNameService.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/MemoryNameService.java index 0a71e185717..0ca4ae66fb3 100644 --- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/MemoryNameService.java +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/dns/MemoryNameService.java @@ -81,7 +81,7 @@ public class MemoryNameService implements NameService { public List<Record> findRecords(Record.Type type, RecordName name) { return records.stream() .filter(record -> record.type() == type && record.name().equals(name)) - .collect(Collectors.toUnmodifiableList()); + .toList(); } @Override @@ -103,7 +103,7 @@ public class MemoryNameService implements NameService { } return false; }) - .collect(Collectors.toUnmodifiableList()); + .toList(); } @Override diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/maven/Metadata.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/maven/Metadata.java index 6750c6d2eaf..dd80a2b3a9a 100644 --- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/maven/Metadata.java +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/maven/Metadata.java @@ -23,7 +23,7 @@ public class Metadata { public Metadata(ArtifactId id, List<Version> versions) { this.id = requireNonNull(id); - this.versions = versions.stream().sorted().collect(Collectors.toUnmodifiableList()); + this.versions = versions.stream().sorted().toList(); } /** Creates a new Metadata object from the given XML document. */ diff --git a/controller-api/src/test/java/com/yahoo/vespa/hosted/controller/api/systemflags/v1/SystemFlagsDataArchiveTest.java b/controller-api/src/test/java/com/yahoo/vespa/hosted/controller/api/systemflags/v1/SystemFlagsDataArchiveTest.java index c40788ecb3f..d010893f1d4 100644 --- a/controller-api/src/test/java/com/yahoo/vespa/hosted/controller/api/systemflags/v1/SystemFlagsDataArchiveTest.java +++ b/controller-api/src/test/java/com/yahoo/vespa/hosted/controller/api/systemflags/v1/SystemFlagsDataArchiveTest.java @@ -34,7 +34,6 @@ import java.util.List; import java.util.Map; import java.util.Set; -import static java.util.stream.Collectors.toList; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertThrows; import static org.junit.jupiter.api.Assertions.assertTrue; @@ -325,7 +324,7 @@ public class SystemFlagsDataArchiveTest { private static List<FlagData> getData(SystemFlagsDataArchive archive, FlagId flagId, FlagsTarget target) { return archive.flagData(target).stream() .filter(d -> d.id().equals(flagId)) - .collect(toList()); + .toList(); } private static class SimpleZone implements ZoneApi { @@ -338,4 +337,4 @@ public class SystemFlagsDataArchiveTest { @Override public String getCloudNativeRegionName() { throw new UnsupportedOperationException(); } } -}
\ No newline at end of file +} diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/ApplicationController.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/ApplicationController.java index a092a133807..2693fdcbd7c 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/ApplicationController.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/ApplicationController.java @@ -114,7 +114,6 @@ import static java.util.stream.Collectors.collectingAndThen; import static java.util.stream.Collectors.counting; import static java.util.stream.Collectors.groupingBy; import static java.util.stream.Collectors.joining; -import static java.util.stream.Collectors.toList; import static java.util.stream.Collectors.toMap; import static java.util.stream.Collectors.toSet; @@ -648,7 +647,7 @@ public class ApplicationController { .orElse(List.of()); List<X509Certificate> operatorCertificates = controller.supportAccess().activeGrantsFor(deployment).stream() .map(SupportAccessGrant::certificate) - .collect(toList()); + .toList(); if (testerCertificate.isPresent()) { operatorCertificates = Stream.concat(operatorCertificates.stream(), testerCertificate.stream()).toList(); } diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/application/pkg/TestPackage.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/application/pkg/TestPackage.java index 17644d5e207..afb854b2aaa 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/application/pkg/TestPackage.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/application/pkg/TestPackage.java @@ -172,11 +172,11 @@ public class TestPackage { if (bundleCategoriesHeader == null) continue; for (String suite : bundleCategoriesHeader.split(",")) if ( ! suite.isBlank()) switch (suite.trim()) { - case "SystemTest": suites.add(system); break; - case "StagingSetup": suites.add(staging_setup); break; - case "StagingTest": suites.add(staging); break; - case "ProductionTest": suites.add(production); break; - default: problems.add("unexpected test suite name '" + suite + "' in bundle manifest"); + case "SystemTest" -> suites.add(system); + case "StagingSetup" -> suites.add(staging_setup); + case "StagingTest" -> suites.add(staging); + case "ProductionTest" -> suites.add(production); + default -> problems.add("unexpected test suite name '" + suite + "' in bundle manifest"); } } catch (Exception e) { diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/athenz/impl/AthenzFacade.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/athenz/impl/AthenzFacade.java index 3bc2aec95ff..6a493f3f5ed 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/athenz/impl/AthenzFacade.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/athenz/impl/AthenzFacade.java @@ -235,7 +235,7 @@ public class AthenzFacade implements AccessControl { return tenants.stream() .filter(tenant -> tenant.type() == Tenant.Type.athenz && userDomains.apply(identity).contains(((AthenzTenant) tenant).domain())) - .collect(Collectors.toUnmodifiableList()); + .toList(); } public void addTenantAdmin(AthenzDomain tenantDomain, AthenzUser user) { diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentStatus.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentStatus.java index dd285917f2a..a76e76611c2 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentStatus.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentStatus.java @@ -67,7 +67,6 @@ import static java.util.function.BinaryOperator.maxBy; import static java.util.stream.Collectors.collectingAndThen; import static java.util.stream.Collectors.groupingBy; import static java.util.stream.Collectors.mapping; -import static java.util.stream.Collectors.toList; import static java.util.stream.Collectors.toMap; import static java.util.stream.Collectors.toSet; @@ -104,7 +103,7 @@ public class DeploymentStatus { Map<JobId, JobStatus> jobs = new HashMap<>(); this.jobSteps = jobDependencies(application.deploymentSpec(), allSteps, job -> jobs.computeIfAbsent(job, allJobs)); this.allSteps = Collections.unmodifiableList(allSteps); - this.allJobs = JobList.from(jobSteps.keySet().stream().map(allJobs).collect(toList())); + this.allJobs = JobList.from(jobSteps.keySet().stream().map(allJobs).toList()); } private JobType systemTest(JobType dependent) { diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentTrigger.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentTrigger.java index e905b60687e..a5cb839e9c9 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentTrigger.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentTrigger.java @@ -40,7 +40,6 @@ import java.util.stream.Collectors; import static java.util.Comparator.comparing; import static java.util.stream.Collectors.groupingBy; -import static java.util.stream.Collectors.toList; import static java.util.stream.Collectors.toMap; /** @@ -153,7 +152,7 @@ public class DeploymentTrigger { .collect(groupingBy(Job::applicationId)) .values().stream() .flatMap(List::stream) - .collect(Collectors.toUnmodifiableList()); + .toList(); // Map of test jobs, a list for each job type. Jobs in each list are sorted by priority. Map<JobType, List<Job>> sortedTestJobsByType = testJobs.stream() @@ -284,7 +283,7 @@ public class DeploymentTrigger { } newList = newList.stream() .filter(entry -> !(entry.jobId().equals(requiredEntry.jobId()) && entry.requiredRun() < requiredEntry.requiredRun())) - .collect(toList()); + .toList(); controller.curator().writeRetriggerEntries(newList); } controller.jobController().abort(run.id(), "force re-triggered"); @@ -367,7 +366,7 @@ public class DeploymentTrigger { .filter(status -> ! hasExceededQuota(status.application().id().tenant())) .map(this::computeReadyJobs) .flatMap(Collection::stream) - .collect(toList()); + .toList(); } /** Finds the next step to trigger for the given application, if any, and returns these as a list. */ diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunner.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunner.java index c500189dc4d..7da61f9bc63 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunner.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunner.java @@ -92,7 +92,6 @@ import static java.util.logging.Level.FINE; import static java.util.logging.Level.INFO; import static java.util.logging.Level.WARNING; import static java.util.stream.Collectors.joining; -import static java.util.stream.Collectors.toList; import static java.util.stream.Collectors.toSet; /** @@ -210,7 +209,7 @@ public class InternalStepRunner implements StepRunner { Instant.ofEpochMilli(entry.epochMillis()), LogEntry.typeOf(entry.level()), entry.message())) - .collect(toList())); + .toList()); logger.log("Deployment successful."); logger.log(result.message()); @@ -330,7 +329,7 @@ public class InternalStepRunner implements StepRunner { logger.log("######## Details for all nodes ########"); logger.log(nodeList.asList().stream() .flatMap(node -> nodeDetails(node, true)) - .collect(toList())); + .toList()); } else if ( ! summary.converged()) { logger.log("Waiting for convergence of " + summary.services() + " services across " + summary.nodes() + " nodes"); @@ -396,7 +395,7 @@ public class InternalStepRunner implements StepRunner { logger.log("######## Details for all nodes ########"); logger.log(nodeList.asList().stream() .flatMap(node -> nodeDetails(node, true)) - .collect(toList())); + .toList()); logger.log("######## Details for nodes with pending changes ########"); logger.log(nodeList.not().in(nodeList.not().needsNewConfig() .not().needsPlatformUpgrade() @@ -406,7 +405,7 @@ public class InternalStepRunner implements StepRunner { .not().needsOsUpgrade()) .asList().stream() .flatMap(node -> nodeDetails(node, true)) - .collect(toList())); + .toList()); logger.log(INFO, failureReason); return Optional.of(installationFailed); } @@ -415,7 +414,7 @@ public class InternalStepRunner implements StepRunner { logger.log(FINE, nodeList.expectedDown().and(nodeList.needsNewConfig()).asList().stream() .distinct() .flatMap(node -> nodeDetails(node, false)) - .collect(toList())); + .toList()); controller.jobController().locked(id, lockedRun -> { Instant noNodesDownSince = nodeList.allowedDown().size() == 0 ? lockedRun.noNodesDownSince().orElse(controller.clock().instant()) : null; @@ -461,7 +460,7 @@ public class InternalStepRunner implements StepRunner { NodeList nodeList = NodeList.of(nodes, parents, services.get()); logger.log(nodeList.asList().stream() .flatMap(node -> nodeDetails(node, false)) - .collect(toList())); + .toList()); if (nodeList.summary().converged() && testerContainersAreUp(testerId, zone, logger)) { logger.log("Tester container successfully installed!"); diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/JobController.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/JobController.java index 97eb405b32d..73c64be3e47 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/JobController.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/JobController.java @@ -94,8 +94,6 @@ import static java.util.Comparator.naturalOrder; import static java.util.function.Predicate.not; import static java.util.logging.Level.INFO; import static java.util.logging.Level.WARNING; -import static java.util.stream.Collectors.toList; -import static java.util.stream.Collectors.toUnmodifiableList; /** * A singleton owned by the controller, which contains the state and methods for controlling deployment jobs. @@ -184,7 +182,7 @@ public class JobController { public void log(RunId id, Step step, Level level, List<String> messages) { log(id, step, messages.stream() .map(message -> new LogEntry(0, controller.clock().instant(), LogEntry.typeOf(level), message)) - .collect(toList())); + .toList()); } /** Stores the given log message for the given run and step. */ diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/RevisionHistory.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/RevisionHistory.java index ab8f7fe22d3..bbab9487ea2 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/RevisionHistory.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/RevisionHistory.java @@ -19,7 +19,6 @@ import java.util.TreeMap; import static ai.vespa.validation.Validation.require; import static java.util.Collections.emptyNavigableMap; -import static java.util.stream.Collectors.toList; /** * History of application revisions for an {@link com.yahoo.vespa.hosted.controller.Application}. @@ -113,7 +112,7 @@ public class RevisionHistory { public List<ApplicationVersion> withPackage() { return production.values().stream() .filter(ApplicationVersion::hasPackage) - .collect(toList()); + .toList(); } /** Returns the currently deployable revisions of the application. */ diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/Run.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/Run.java index 71ff28c47e6..fd1e5592608 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/Run.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/Run.java @@ -307,7 +307,7 @@ public class Run { .allMatch(step -> steps.get(step) == null || steps.get(step).status() == succeeded)) .map(Map.Entry::getKey) - .collect(Collectors.toUnmodifiableList()); + .toList(); } /** Returns the list of not-yet-run run-always steps whose run-always prerequisites have all run. */ @@ -320,7 +320,7 @@ public class Run { .allMatch(step -> steps.get(step) == null || steps.get(step).status() != unfinished)) .map(Map.Entry::getKey) - .collect(Collectors.toUnmodifiableList()); + .toList(); } private void requireActive() { diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/Step.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/Step.java index ec4d138c44f..358925d00b2 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/Step.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/Step.java @@ -6,7 +6,6 @@ import java.util.List; import java.util.stream.Stream; import static java.util.Comparator.reverseOrder; -import static java.util.stream.Collectors.toList; /** * Steps that make up a deployment job. See {@link JobProfile} for preset profiles. @@ -90,7 +89,7 @@ public enum Step { pre.allPrerequisites(among).stream())) .sorted(reverseOrder()) .distinct() - .collect(toList()); + .toList(); } diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/SupportAccessSerializer.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/SupportAccessSerializer.java index a913e86dda9..af7c03f8657 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/SupportAccessSerializer.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/SupportAccessSerializer.java @@ -124,7 +124,7 @@ public class SupportAccessSerializer { inspector.field(requestorFieldName).asString(), X509CertificateUtils.fromPem(inspector.field(certificateFieldName).asString()) )) - .collect(Collectors.toUnmodifiableList()); + .toList(); List<SupportAccessChange> changeHistory = SlimeUtils.entriesStream(slime.get().field(historyFieldName)) .map(inspector -> @@ -133,7 +133,7 @@ public class SupportAccessSerializer { Instant.parse(inspector.field(atFieldName).asString()), inspector.field(byFieldName).asString()) ) - .collect(Collectors.toUnmodifiableList()); + .toList(); return new SupportAccess(changeHistory, grantHistory); } diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/TenantSerializer.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/TenantSerializer.java index d4536da91fe..f6b28a2ee34 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/TenantSerializer.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/TenantSerializer.java @@ -271,7 +271,7 @@ public class TenantSerializer { inspector.field(nameField).asString(), inspector.field(awsIdField).asString(), inspector.field(roleField).asString())) - .collect(Collectors.toUnmodifiableList()); + .toList(); } private LastLoginInfo lastLoginInfoFromSlime(Inspector lastLoginInfoObject) { @@ -337,7 +337,7 @@ public class TenantSerializer { private TenantContacts tenantContactsFrom(Inspector object) { List<TenantContacts.Contact> contacts = SlimeUtils.entriesStream(object) .map(this::readContact) - .collect(Collectors.toUnmodifiableList()); + .toList(); return new TenantContacts(contacts); } @@ -405,7 +405,7 @@ public class TenantSerializer { .orElseThrow(() -> new RuntimeException("Unknown type: " + inspector.field("type").asString())); var audiences = SlimeUtils.entriesStream(inspector.field("audiences")) .map(audience -> TenantSerializer.fromAudience(audience.asString())) - .collect(Collectors.toUnmodifiableList()); + .toList(); switch (type) { case EMAIL: var isVerified = asBoolOrTrue(inspector.field("data").field("emailVerified")); diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java index 39cb9bf0d8d..3f68be611eb 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java @@ -168,7 +168,6 @@ import static java.util.Comparator.comparingInt; import static java.util.Map.Entry.comparingByKey; import static java.util.stream.Collectors.collectingAndThen; import static java.util.stream.Collectors.joining; -import static java.util.stream.Collectors.toList; /** * This implements the application/v4 API which is used to deploy and manage applications @@ -398,7 +397,7 @@ public class ApplicationApiHandler extends AuditLoggingRequestHandler { for (Tenant tenant : controller.tenants().asList(includeDeleted(request))) toSlime(tenantArray.addObject(), tenant, - applications.stream().filter(app -> app.id().tenant().equals(tenant.name())).collect(toList()), + applications.stream().filter(app -> app.id().tenant().equals(tenant.name())).toList(), request); return new SlimeJsonResponse(slime); } diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/deployment/Badges.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/deployment/Badges.java index 26a5da45bdb..eed12f61a76 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/deployment/Badges.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/deployment/Badges.java @@ -17,8 +17,6 @@ import java.util.Collections; import java.util.List; import java.util.Optional; -import static java.util.stream.Collectors.toList; - public class Badges { // https://chrishewett.com/blog/calculating-text-width-programmatically/ thank you! @@ -120,7 +118,7 @@ public class Badges { .filter(Run::hasEnded) .skip(1) .limit(length) - .collect(toList()); + .toList(); text = lastTriggered.id().type().jobName(); textWidth = widthOf(text); @@ -312,4 +310,4 @@ public class Badges { "</svg>\n"; } -}
\ No newline at end of file +} diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/deployment/DeploymentApiHandler.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/deployment/DeploymentApiHandler.java index 9c529230a7f..6946efdbe2a 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/deployment/DeploymentApiHandler.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/deployment/DeploymentApiHandler.java @@ -98,7 +98,7 @@ public class DeploymentApiHandler extends ThreadedHttpRequestHandler { var versionStatus = controller.readVersionStatus(); ApplicationList applications = ApplicationList.from(controller.applications().asList()).withJobs(); var deploymentStatuses = controller.jobController().deploymentStatuses(applications, versionStatus); - Map<Version, DeploymentStatistics> deploymentStatistics = DeploymentStatistics.compute(versionStatus.versions().stream().map(VespaVersion::versionNumber).collect(toList()), + Map<Version, DeploymentStatistics> deploymentStatistics = DeploymentStatistics.compute(versionStatus.versions().stream().map(VespaVersion::versionNumber).toList(), deploymentStatuses) .stream().collect(toMap(DeploymentStatistics::version, identity())); for (VespaVersion version : versionStatus.versions()) { diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/systemflags/SystemFlagsDeployResult.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/systemflags/SystemFlagsDeployResult.java index b8f884e67ac..872202dc222 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/systemflags/SystemFlagsDeployResult.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/systemflags/SystemFlagsDeployResult.java @@ -23,8 +23,6 @@ import java.util.Set; import java.util.function.BiFunction; import java.util.function.Function; -import static java.util.stream.Collectors.toList; - /** * @author bjorncs */ @@ -104,7 +102,7 @@ class SystemFlagsDeployResult { wireChange.flagId = change.flagId().toString(); wireChange.owners = owners(change.flagId()); wireChange.operation = change.operation().asString(); - wireChange.targets = change.targets().stream().map(FlagsTarget::asString).collect(toList()); + wireChange.targets = change.targets().stream().map(FlagsTarget::asString).toList(); wireChange.data = change.data().map(FlagData::toWire).orElse(null); wireChange.previousData = change.previousData().map(FlagData::toWire).orElse(null); wireResult.changes.add(wireChange); @@ -114,7 +112,7 @@ class SystemFlagsDeployResult { var wireError = new WireOperationFailure(); wireError.message = error.message(); wireError.operation = error.operation().asString(); - wireError.targets = error.targets().stream().map(FlagsTarget::asString).collect(toList()); + wireError.targets = error.targets().stream().map(FlagsTarget::asString).toList(); wireError.flagId = error.flagId().map(FlagId::toString).orElse(null); wireError.owners = error.flagId().map(id -> owners(id)).orElse(List.of()); wireError.data = error.flagData().map(FlagData::toWire).orElse(null); @@ -126,7 +124,7 @@ class SystemFlagsDeployResult { wireWarning.message = warning.message(); wireWarning.flagId = warning.flagId().toString(); wireWarning.owners = owners(warning.flagId()); - wireWarning.targets = warning.targets().stream().map(FlagsTarget::asString).collect(toList()); + wireWarning.targets = warning.targets().stream().map(FlagsTarget::asString).toList(); wireResult.warnings.add(wireWarning); } return wireResult; diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/user/UserFlagsSerializer.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/user/UserFlagsSerializer.java index 44d537883f9..54a24360b5a 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/user/UserFlagsSerializer.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/user/UserFlagsSerializer.java @@ -36,7 +36,7 @@ public class UserFlagsSerializer { .filter(fd -> fd.getDimensions().contains(FetchVector.Dimension.CONSOLE_USER_EMAIL)) .map(FlagDefinition::getUnboundFlag) .map(flag -> filteredFlagData(flag, Optional.ofNullable(rawFlagData.get(flag.id())), authorizedForTenantNames, isOperator, resolveVector)) - .collect(Collectors.toUnmodifiableList()); + .toList(); byte[] bytes = FlagData.serializeListToUtf8Json(filteredFlagData); SlimeUtils.copyObject(SlimeUtils.jsonToSlime(bytes).get(), cursor); @@ -55,10 +55,10 @@ public class UserFlagsSerializer { .map(rule -> new Rule(rule.getValueToApply().or(() -> defaultValue), rule.conditions().stream() .flatMap(condition -> filteredCondition(condition, authorizedForTenantNames, isOperator, resolveVector).stream()) - .collect(Collectors.toUnmodifiableList()))) + .toList())) // We can stop as soon as we hit the first rule that has no conditions .takeWhile(rule -> !encounteredEmpty.getAndSet(rule.conditions().isEmpty())) - .collect(Collectors.toUnmodifiableList()); + .toList(); return new FlagData(definition.id(), new FetchVector(), rules); } @@ -80,7 +80,7 @@ public class UserFlagsSerializer { private static Optional<Condition> valueSubset(Condition condition, Predicate<String> predicate) { Condition.CreateParams createParams = condition.toCreateParams(); return Optional.of(createParams - .withValues(createParams.values().stream().filter(predicate).collect(Collectors.toUnmodifiableList())) + .withValues(createParams.values().stream().filter(predicate).toList()) .createAs(condition.type())); } } diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/support/access/SupportAccess.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/support/access/SupportAccess.java index 27cf61564aa..e5304a05d02 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/support/access/SupportAccess.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/support/access/SupportAccess.java @@ -71,7 +71,7 @@ public class SupportAccess { private <T> List<T> prepend(T newEntry, List<T> existingEntries) { return Stream.concat(Stream.of(newEntry), existingEntries.stream()) // latest change first - .collect(Collectors.toUnmodifiableList()); + .toList(); } public static class CurrentStatus { diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/support/access/SupportAccessControl.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/support/access/SupportAccessControl.java index 27b61a4fd17..1561a486fda 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/support/access/SupportAccessControl.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/support/access/SupportAccessControl.java @@ -88,7 +88,7 @@ public class SupportAccessControl { return supportAccess.grantHistory().stream() .filter(grant -> now.isAfter(grant.certificate().getNotBefore().toInstant())) .filter(grant -> now.isBefore(grant.certificate().getNotAfter().toInstant())) - .collect(Collectors.toUnmodifiableList()); + .toList(); } public boolean allowDataplaneMembership(AthenzUser identity, DeploymentId deploymentId) { diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/integration/ConfigServerMock.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/integration/ConfigServerMock.java index 7acd31c2ded..6f859ff3d15 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/integration/ConfigServerMock.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/integration/ConfigServerMock.java @@ -338,7 +338,7 @@ public class ConfigServerMock extends AbstractComponent implements ConfigServer public List<LoadBalancer> getLoadBalancers(ApplicationId application, ZoneId zone) { return getLoadBalancers(zone).stream() .filter(lb -> lb.application().equals(application)) - .collect(Collectors.toUnmodifiableList()); + .toList(); } @Override diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/ResourceMeterMaintainerTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/ResourceMeterMaintainerTest.java index 1f92c7f6e41..157abe17841 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/ResourceMeterMaintainerTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/ResourceMeterMaintainerTest.java @@ -152,6 +152,6 @@ public class ResourceMeterMaintainerTest { .clusterId("clusterA") .clusterType(state == Node.State.active ? Node.ClusterType.admin : Node.ClusterType.container) .build()) - .collect(Collectors.toUnmodifiableList()); + .toList(); } } diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/persistence/BufferedLogStoreTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/persistence/BufferedLogStoreTest.java index eb5422f5cff..59433a6bb69 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/persistence/BufferedLogStoreTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/persistence/BufferedLogStoreTest.java @@ -19,7 +19,6 @@ import java.util.List; import java.util.Optional; import java.util.stream.IntStream; -import static java.util.stream.Collectors.toUnmodifiableList; import static org.junit.jupiter.api.Assertions.assertArrayEquals; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -100,7 +99,7 @@ public class BufferedLogStoreTest { // Logging a large entry enough times to reach the maximum size causes no further entries to be stored. List<LogEntry> monsterLog = IntStream.range(0, 2 * maxChunks + 3) .mapToObj(i -> new LogEntry(i, entry.at(), entry.type(), entry.message())) - .collect(toUnmodifiableList()); + .toList(); List<LogEntry> logged = new ArrayList<>(monsterLog); logged.remove(logged.size() - 1); logged.remove(logged.size() - 1); diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/routing/rotation/RotationRepositoryTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/routing/rotation/RotationRepositoryTest.java index cd8a9e72051..43ad01fc5c2 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/routing/rotation/RotationRepositoryTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/routing/rotation/RotationRepositoryTest.java @@ -209,7 +209,7 @@ public class RotationRepositoryTest { } private static List<RotationId> rotationIds(List<AssignedRotation> assignedRotations) { - return assignedRotations.stream().map(AssignedRotation::rotationId).collect(Collectors.toUnmodifiableList()); + return assignedRotations.stream().map(AssignedRotation::rotationId).toList(); } } diff --git a/hosted-api/src/main/java/ai/vespa/hosted/api/DeploymentLog.java b/hosted-api/src/main/java/ai/vespa/hosted/api/DeploymentLog.java index ea35732a7d6..b930fe7d10a 100644 --- a/hosted-api/src/main/java/ai/vespa/hosted/api/DeploymentLog.java +++ b/hosted-api/src/main/java/ai/vespa/hosted/api/DeploymentLog.java @@ -8,7 +8,6 @@ import java.util.stream.Collectors; import java.util.stream.Stream; import static java.util.Comparator.comparing; -import static java.util.stream.Collectors.toUnmodifiableList; /** * A list of {@link Entry} items from a deployment job. @@ -23,7 +22,7 @@ public class DeploymentLog { private final OptionalLong last; public DeploymentLog(List<Entry> entries, boolean active, Status status, OptionalLong last) { - this.entries = entries.stream().sorted(comparing(Entry::at)).collect(toUnmodifiableList()); + this.entries = entries.stream().sorted(comparing(Entry::at)).toList(); this.active = active; this.status = status; this.last = last; @@ -31,7 +30,7 @@ public class DeploymentLog { /** Returns this log updated with the content of the other. */ public DeploymentLog updatedWith(DeploymentLog other) { - return new DeploymentLog(Stream.concat(entries.stream(), other.entries.stream()).collect(toUnmodifiableList()), + return new DeploymentLog(Stream.concat(entries.stream(), other.entries.stream()).toList(), other.active, other.status, other.last); @@ -101,13 +100,13 @@ public class DeploymentLog { debug; public static Level of(String level) { - switch (level) { - case "error" : return error; - case "warning" : return warning; - case "info" : return info; - case "debug" : return debug; - default : return debug; - } + return switch (level) { + case "error" -> error; + case "warning" -> warning; + case "info" -> info; + case "debug" -> debug; + default -> debug; + }; } } diff --git a/http-client/src/main/java/ai/vespa/hosted/client/HttpClient.java b/http-client/src/main/java/ai/vespa/hosted/client/HttpClient.java index 4da887f0cbb..10ef20980e6 100644 --- a/http-client/src/main/java/ai/vespa/hosted/client/HttpClient.java +++ b/http-client/src/main/java/ai/vespa/hosted/client/HttpClient.java @@ -30,7 +30,6 @@ import java.util.stream.IntStream; import static java.nio.charset.StandardCharsets.UTF_8; import static java.util.Objects.requireNonNull; -import static java.util.stream.Collectors.toUnmodifiableList; /** * @author jonmv @@ -265,7 +264,7 @@ public interface HttpClient extends Closeable { /** Attempts each request against the host the specified number of times. */ static HostStrategy repeating(URI host, int count) { - return ordered(IntStream.range(0, count).mapToObj(__ -> host).collect(toUnmodifiableList())); + return ordered(IntStream.range(0, count).mapToObj(__ -> host).toList()); } } diff --git a/jdisc_core/src/main/java/com/yahoo/jdisc/application/BindingSet.java b/jdisc_core/src/main/java/com/yahoo/jdisc/application/BindingSet.java index 2f0a2806947..8a76f6f796d 100644 --- a/jdisc_core/src/main/java/com/yahoo/jdisc/application/BindingSet.java +++ b/jdisc_core/src/main/java/com/yahoo/jdisc/application/BindingSet.java @@ -6,8 +6,6 @@ import java.util.Collection; import java.util.Iterator; import java.util.Map; -import static java.util.stream.Collectors.toUnmodifiableList; - /** * <p>This is an immutable set of ordered bindings from {@link UriPattern}s to some target type T. To create an instance * of this class, you must 1) create a {@link BindingRepository}, 2) configure it using the {@link @@ -69,7 +67,7 @@ public class BindingSet<T> implements Iterable<Map.Entry<UriPattern, T>> { } private static <T> Collection<Map.Entry<UriPattern, T>> sorted(Collection<Map.Entry<UriPattern, T>> unsorted) { - return unsorted.stream().sorted(Map.Entry.comparingByKey()).collect(toUnmodifiableList()); + return unsorted.stream().sorted(Map.Entry.comparingByKey()).toList(); } } diff --git a/logserver/src/main/java/ai/vespa/logserver/protocol/ProtobufSerialization.java b/logserver/src/main/java/ai/vespa/logserver/protocol/ProtobufSerialization.java index a389ff24347..6fc46817bf1 100644 --- a/logserver/src/main/java/ai/vespa/logserver/protocol/ProtobufSerialization.java +++ b/logserver/src/main/java/ai/vespa/logserver/protocol/ProtobufSerialization.java @@ -10,8 +10,6 @@ import java.time.Instant; import java.util.List; import java.util.logging.Level; -import static java.util.stream.Collectors.toList; - /** * Utility class for serialization of log requests and responses. * @@ -26,7 +24,7 @@ class ProtobufSerialization { LogProtocol.LogRequest logRequest = LogProtocol.LogRequest.parseFrom(logRequestPayload); return logRequest.getLogMessagesList().stream() .map(ProtobufSerialization::fromLogRequest) - .collect(toList()); + .toList(); } catch (InvalidProtocolBufferException e) { throw new IllegalArgumentException("Unable to parse log request: " + e.getMessage(), e); } diff --git a/messagebus/src/test/java/com/yahoo/messagebus/DynamicThrottlePolicyTest.java b/messagebus/src/test/java/com/yahoo/messagebus/DynamicThrottlePolicyTest.java index 8414f6588ea..ee5c39f641b 100644 --- a/messagebus/src/test/java/com/yahoo/messagebus/DynamicThrottlePolicyTest.java +++ b/messagebus/src/test/java/com/yahoo/messagebus/DynamicThrottlePolicyTest.java @@ -7,16 +7,16 @@ import com.yahoo.messagebus.test.SimpleReply; import org.junit.jupiter.api.Test; import java.util.ArrayDeque; +import java.util.ArrayList; import java.util.Collections; import java.util.Deque; import java.util.List; import java.util.Random; import java.util.concurrent.atomic.AtomicLong; import java.util.function.Consumer; +import java.util.stream.Collectors; import java.util.stream.IntStream; -import static java.util.stream.Collectors.toList; -import static java.util.stream.Collectors.toUnmodifiableList; import static org.junit.jupiter.api.Assertions.assertTrue; /** @@ -218,7 +218,7 @@ public class DynamicThrottlePolicyTest { System.err.printf("\n### Running %d operations of %d ticks each against %d workers with parallelism %d and queue size %d\n", operations, workPerSuccess, numberOfWorkers, workerParallelism, maximumTasksPerWorker); - List<Integer> order = IntStream.range(0, policies.length).boxed().collect(toList()); + List<Integer> order = IntStream.range(0, policies.length).boxed().collect(Collectors.toCollection(ArrayList::new)); MockServer resource = new MockServer(workPerSuccess, numberOfWorkers, maximumTasksPerWorker, workerParallelism); AtomicLong outstanding = new AtomicLong(operations); AtomicLong errors = new AtomicLong(0); @@ -306,7 +306,7 @@ public class DynamicThrottlePolicyTest { final int maximumTaskPerWorker; final int workerParallelism; final int[] currentTask; - final List<Deque<Consumer<Boolean>>> outstandingTasks; + final List<ArrayDeque<Consumer<Boolean>>> outstandingTasks; int pending = 0; MockServer(int workPerSuccess, int numberOfWorkers, int maximumTaskPerWorker, int workerParallelism) { @@ -317,7 +317,7 @@ public class DynamicThrottlePolicyTest { this.currentTask = new int[numberOfWorkers]; this.outstandingTasks = IntStream.range(0, numberOfWorkers) .mapToObj(__ -> new ArrayDeque<Consumer<Boolean>>()) - .collect(toUnmodifiableList()); + .toList(); } void tick() { @@ -350,4 +350,4 @@ public class DynamicThrottlePolicyTest { } -}
\ No newline at end of file +} diff --git a/metrics-proxy/src/main/java/ai/vespa/metricsproxy/http/application/NodeMetricsClient.java b/metrics-proxy/src/main/java/ai/vespa/metricsproxy/http/application/NodeMetricsClient.java index e55c42f6b57..3f93cdda61c 100644 --- a/metrics-proxy/src/main/java/ai/vespa/metricsproxy/http/application/NodeMetricsClient.java +++ b/metrics-proxy/src/main/java/ai/vespa/metricsproxy/http/application/NodeMetricsClient.java @@ -26,7 +26,6 @@ import java.util.logging.Logger; import static ai.vespa.metricsproxy.metric.model.processing.MetricsProcessor.applyProcessors; import static java.util.logging.Level.FINE; -import static java.util.stream.Collectors.toList; /** * Retrieves metrics from a single Vespa node over http. To avoid unnecessary load on metrics @@ -101,7 +100,7 @@ public class NodeMetricsClient { return builders.stream() .map(builder -> applyProcessors(builder, processors)) .map(MetricsPacket.Builder::build) - .collect(toList()); + .toList(); } long snapshotsRetrieved() { diff --git a/metrics-proxy/src/main/java/ai/vespa/metricsproxy/metric/model/json/GenericJsonUtil.java b/metrics-proxy/src/main/java/ai/vespa/metricsproxy/metric/model/json/GenericJsonUtil.java index a3555f96be8..a71a5526fc2 100644 --- a/metrics-proxy/src/main/java/ai/vespa/metricsproxy/metric/model/json/GenericJsonUtil.java +++ b/metrics-proxy/src/main/java/ai/vespa/metricsproxy/metric/model/json/GenericJsonUtil.java @@ -65,7 +65,7 @@ public class GenericJsonUtil { var genericMetricsList = packets.stream() .filter(packet -> ! (packet.metrics().isEmpty() && packet.dimensions().isEmpty())) .map(packet -> new GenericMetrics(packet.metrics(), packet.dimensions())) - .collect(toList()); + .toList(); var genericService = packets.stream().findFirst() .map(firstPacket -> new GenericService(serviceId.id, firstPacket.timestamp, diff --git a/metrics-proxy/src/test/java/ai/vespa/metricsproxy/http/application/ApplicationMetricsHandlerTest.java b/metrics-proxy/src/test/java/ai/vespa/metricsproxy/http/application/ApplicationMetricsHandlerTest.java index 2e7f7c7a936..d6b084acbb3 100644 --- a/metrics-proxy/src/test/java/ai/vespa/metricsproxy/http/application/ApplicationMetricsHandlerTest.java +++ b/metrics-proxy/src/test/java/ai/vespa/metricsproxy/http/application/ApplicationMetricsHandlerTest.java @@ -37,7 +37,6 @@ import static com.github.tomakehurst.wiremock.client.WireMock.get; import static com.github.tomakehurst.wiremock.client.WireMock.urlPathEqualTo; import static com.github.tomakehurst.wiremock.core.WireMockConfiguration.options; import static com.yahoo.collections.CollectionUtil.first; -import static java.util.stream.Collectors.toList; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; @@ -220,7 +219,7 @@ public class ApplicationMetricsHandlerTest { private MetricsNodesConfig nodesConfig(String... paths) { var nodes = Arrays.stream(paths) .map(this::nodeConfig) - .collect(toList()); + .toList(); return new MetricsNodesConfig.Builder() .node(nodes) .build(); diff --git a/metrics-proxy/src/test/java/ai/vespa/metricsproxy/http/application/ApplicationMetricsRetrieverTest.java b/metrics-proxy/src/test/java/ai/vespa/metricsproxy/http/application/ApplicationMetricsRetrieverTest.java index de614e14349..cb028713d13 100644 --- a/metrics-proxy/src/test/java/ai/vespa/metricsproxy/http/application/ApplicationMetricsRetrieverTest.java +++ b/metrics-proxy/src/test/java/ai/vespa/metricsproxy/http/application/ApplicationMetricsRetrieverTest.java @@ -17,7 +17,6 @@ import static com.github.tomakehurst.wiremock.client.WireMock.aResponse; import static com.github.tomakehurst.wiremock.client.WireMock.get; import static com.github.tomakehurst.wiremock.client.WireMock.urlPathEqualTo; import static com.github.tomakehurst.wiremock.core.WireMockConfiguration.options; -import static java.util.stream.Collectors.toList; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; @@ -160,7 +159,7 @@ public class ApplicationMetricsRetrieverTest { private MetricsNodesConfig nodesConfig(String... paths) { var nodes = Arrays.stream(paths) .map(this::nodeConfig) - .collect(toList()); + .toList(); return new MetricsNodesConfig.Builder() .node(nodes) .build(); diff --git a/metrics-proxy/src/test/java/ai/vespa/metricsproxy/metric/model/json/GenericJsonModelTest.java b/metrics-proxy/src/test/java/ai/vespa/metricsproxy/metric/model/json/GenericJsonModelTest.java index 5ddd10fd03c..1e21bae25c5 100644 --- a/metrics-proxy/src/test/java/ai/vespa/metricsproxy/metric/model/json/GenericJsonModelTest.java +++ b/metrics-proxy/src/test/java/ai/vespa/metricsproxy/metric/model/json/GenericJsonModelTest.java @@ -15,7 +15,6 @@ import static ai.vespa.metricsproxy.metric.model.DimensionId.toDimensionId; import static ai.vespa.metricsproxy.metric.model.MetricId.toMetricId; import static ai.vespa.metricsproxy.metric.model.ServiceId.toServiceId; import static ai.vespa.metricsproxy.metric.model.json.JacksonUtil.createObjectMapper; -import static java.util.stream.Collectors.toList; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; @@ -51,7 +50,7 @@ public class GenericJsonModelTest { GenericJsonModel modelFromFile = genericJsonModelFromTestFile(TEST_FILE); List<MetricsPacket> metricsPackets = GenericJsonUtil.toMetricsPackets(modelFromFile).stream() .map(MetricsPacket.Builder::build) - .collect(toList()); + .toList(); assertEquals(4, metricsPackets.size()); @@ -70,7 +69,7 @@ public class GenericJsonModelTest { GenericJsonModel modelFromFile = genericJsonModelFromTestFile(TEST_FILE_WITHOUT_NODE); List<MetricsPacket> metricsPackets = GenericJsonUtil.toMetricsPackets(modelFromFile).stream() .map(MetricsPacket.Builder::build) - .collect(toList()); + .toList(); assertEquals(2, metricsPackets.size()); @@ -122,7 +121,7 @@ public class GenericJsonModelTest { String genericJson = getFileContents(TEST_FILE); List<MetricsPacket> metricsPackets = GenericJsonUtil.toMetricsPackets(genericJson).stream() .map(MetricsPacket.Builder::build) - .collect(toList()); + .toList(); assertEquals(4, metricsPackets.size()); GenericJsonModel modelFromPackets = GenericJsonUtil.toGenericJsonModel(metricsPackets); diff --git a/model-integration/src/main/java/ai/vespa/embedding/huggingface/HuggingFaceEmbedder.java b/model-integration/src/main/java/ai/vespa/embedding/huggingface/HuggingFaceEmbedder.java index 2b9e3a2ab60..81150fe99b0 100644 --- a/model-integration/src/main/java/ai/vespa/embedding/huggingface/HuggingFaceEmbedder.java +++ b/model-integration/src/main/java/ai/vespa/embedding/huggingface/HuggingFaceEmbedder.java @@ -14,7 +14,6 @@ import com.yahoo.embedding.huggingface.HuggingFaceEmbedderConfig; import java.io.*; import java.nio.file.Paths; import java.util.*; -import java.util.stream.Collectors; import org.slf4j.LoggerFactory; import org.slf4j.Logger; @@ -87,7 +86,7 @@ public class HuggingFaceEmbedder implements Embedder { public List<Integer> longToInteger(long[] values) { return Arrays.stream(values) .boxed().map(Long::intValue) - .collect(Collectors.toList()); + .toList(); } @Override diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Squeeze.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Squeeze.java index 9229d6af254..9c797a990bc 100644 --- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Squeeze.java +++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Squeeze.java @@ -39,14 +39,14 @@ public class Squeeze extends IntermediateOperation { squeezeDimensions = inputType.type().dimensions().stream(). filter(dim -> OrderedTensorType.dimensionSize(dim) == 1). map(TensorType.Dimension::name). - collect(Collectors.toList()); + toList(); } else { squeezeDimensions = squeezeDimsAttr.get().stream().map(Value::asDouble).map(Double::intValue). map(i -> i < 0 ? inputType.type().dimensions().size() - i : i). map(i -> inputType.type().dimensions().get(i)). filter(dim -> OrderedTensorType.dimensionSize(dim) == 1). map(TensorType.Dimension::name). - collect(Collectors.toList()); + toList(); } return squeezeDimensions.isEmpty() ? inputType : reducedType(inputType); diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/component/ConfigServerInfo.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/component/ConfigServerInfo.java index 77c8b80ca91..a097db2adba 100644 --- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/component/ConfigServerInfo.java +++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/component/ConfigServerInfo.java @@ -26,7 +26,7 @@ public class ConfigServerInfo { this.configServerHostnameToUriMapper = hostname -> URI.create("https://" + hostname + ":4443"); this.configServerURIs = configServerHostNames.stream() .map(configServerHostnameToUriMapper) - .collect(Collectors.toUnmodifiableList()); + .toList(); } public List<URI> getConfigServerUris() { diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/container/image/ContainerImagePruner.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/container/image/ContainerImagePruner.java index 236a4d6718f..8fcd7893f64 100644 --- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/container/image/ContainerImagePruner.java +++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/container/image/ContainerImagePruner.java @@ -158,7 +158,7 @@ public class ContainerImagePruner { if ("<none>:<none>".equals(tag)) return image.id(); return tag; }) - .collect(Collectors.toUnmodifiableList()); + .toList(); } } diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/container/ContainerEngineMock.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/container/ContainerEngineMock.java index 2d3a4976fe5..09590be42f8 100644 --- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/container/ContainerEngineMock.java +++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/container/ContainerEngineMock.java @@ -173,7 +173,7 @@ public class ContainerEngineMock implements ContainerEngine { return images.values().stream() .filter(ImageDownload::isComplete) .map(ImageDownload::image) - .collect(Collectors.toUnmodifiableList()); + .toList(); } private Container requireContainer(ContainerName name) { diff --git a/orchestrator/src/main/java/com/yahoo/vespa/orchestrator/OrchestratorImpl.java b/orchestrator/src/main/java/com/yahoo/vespa/orchestrator/OrchestratorImpl.java index 587875363d5..51f6379ae95 100644 --- a/orchestrator/src/main/java/com/yahoo/vespa/orchestrator/OrchestratorImpl.java +++ b/orchestrator/src/main/java/com/yahoo/vespa/orchestrator/OrchestratorImpl.java @@ -49,7 +49,6 @@ import java.util.logging.Level; import java.util.logging.Logger; import static com.yahoo.vespa.orchestrator.controller.ClusterControllerNodeState.MAINTENANCE; -import static java.util.stream.Collectors.toList; import static java.util.stream.Collectors.toSet; /** @@ -141,7 +140,7 @@ public class OrchestratorImpl implements Orchestrator { .serviceClusters().stream() .flatMap(cluster -> cluster.serviceInstances().stream()) .filter(serviceInstance -> hostName.equals(serviceInstance.hostName())) - .collect(toList()); + .toList(); HostInfo hostInfo = statusService.getHostInfo(applicationInstance.reference(), hostName); @@ -365,7 +364,7 @@ public class OrchestratorImpl implements Orchestrator { return nodeGroupMap.values().stream() .sorted(OrchestratorImpl::compareNodeGroupsForSuspend) - .collect(toList()); + .toList(); } private static int compareNodeGroupsForSuspend(NodeGroup leftNodeGroup, NodeGroup rightNodeGroup) { @@ -418,7 +417,7 @@ public class OrchestratorImpl implements Orchestrator { List<ServiceCluster> contentClusters = application.serviceClusters().stream() .filter(VespaModelUtil::isContent) - .collect(toList()); + .toList(); // For all content clusters, probe whether maintenance is OK. OrchestratorContext context = OrchestratorContext.createContextForBatchProbe(clock); diff --git a/orchestrator/src/main/java/com/yahoo/vespa/orchestrator/model/ApplicationApiImpl.java b/orchestrator/src/main/java/com/yahoo/vespa/orchestrator/model/ApplicationApiImpl.java index 380e34aab8d..478373c8bef 100644 --- a/orchestrator/src/main/java/com/yahoo/vespa/orchestrator/model/ApplicationApiImpl.java +++ b/orchestrator/src/main/java/com/yahoo/vespa/orchestrator/model/ApplicationApiImpl.java @@ -67,7 +67,7 @@ public class ApplicationApiImpl implements ApplicationApi { return getStorageNodesInGroupInClusterOrder().stream() .filter(storageNode -> getHostStatus(storageNode.hostName()).isSuspended()) .sorted(Comparator.reverseOrder()) - .collect(Collectors.toList()); + .toList(); } @Override @@ -81,7 +81,7 @@ public class ApplicationApiImpl implements ApplicationApi { .map(ClusterApi::storageNodeInGroup) .filter(Optional::isPresent) .map(Optional::get) - .collect(Collectors.toList()); + .toList(); } @Override @@ -91,7 +91,7 @@ public class ApplicationApiImpl implements ApplicationApi { .filter(Optional::isPresent) .map(Optional::get) .filter(x -> hostInfos.getOrNoRemarks(x.hostName()).status() == HostStatus.NO_REMARKS) - .collect(Collectors.toList()); + .toList(); } @Override @@ -108,7 +108,7 @@ public class ApplicationApiImpl implements ApplicationApi { public List<HostName> getNodesInGroupWith(Predicate<HostStatus> statusPredicate) { return nodeGroup.getHostNames().stream() .filter(hostName -> statusPredicate.test(getHostStatus(hostName))) - .collect(Collectors.toList()); + .toList(); } private List<ClusterApi> makeClustersInOrder(NodeGroup nodeGroup, diff --git a/orchestrator/src/main/java/com/yahoo/vespa/orchestrator/model/VespaModelUtil.java b/orchestrator/src/main/java/com/yahoo/vespa/orchestrator/model/VespaModelUtil.java index f2133d32867..914929f9cfb 100644 --- a/orchestrator/src/main/java/com/yahoo/vespa/orchestrator/model/VespaModelUtil.java +++ b/orchestrator/src/main/java/com/yahoo/vespa/orchestrator/model/VespaModelUtil.java @@ -103,7 +103,7 @@ public class VespaModelUtil { return controllerClusters.stream(). filter(cluster -> cluster.clusterId().equals(clusterControllerClusterId)). - collect(Collectors.toList()); + toList(); } public static Set<ServiceCluster> getClusterControllerServiceClusters(ApplicationInstance application) { diff --git a/predicate-search-core/src/main/java/com/yahoo/search/predicate/optimization/OrSimplifier.java b/predicate-search-core/src/main/java/com/yahoo/search/predicate/optimization/OrSimplifier.java index 0215ed63d73..a261c6696b7 100644 --- a/predicate-search-core/src/main/java/com/yahoo/search/predicate/optimization/OrSimplifier.java +++ b/predicate-search-core/src/main/java/com/yahoo/search/predicate/optimization/OrSimplifier.java @@ -7,12 +7,13 @@ import com.yahoo.document.predicate.FeatureSet; import com.yahoo.document.predicate.Negation; import com.yahoo.document.predicate.Predicate; +import java.util.ArrayList; import java.util.List; import java.util.Optional; +import java.util.stream.Collectors; import static java.util.stream.Collectors.groupingBy; import static java.util.stream.Collectors.reducing; -import static java.util.stream.Collectors.toList; /** * Simplifies Disjunction nodes where all children are of type FeatureSet. All FeatureSet that share the same key @@ -28,19 +29,16 @@ public class OrSimplifier implements PredicateProcessor { } public Predicate simplifyTree(Predicate predicate) { - if (predicate instanceof Disjunction) { - Disjunction disjunction = (Disjunction) predicate; + if (predicate instanceof Disjunction disjunction) { List<Predicate> newChildren = - disjunction.getOperands().stream().map(this::simplifyTree).collect(toList()); + disjunction.getOperands().stream().map(this::simplifyTree).toList(); return compressFeatureSets(newChildren); - } else if (predicate instanceof Negation) { - Negation negation = (Negation) predicate; + } else if (predicate instanceof Negation negation) { negation.setOperand(simplifyTree(negation.getOperand())); return negation; - } else if (predicate instanceof Conjunction) { - Conjunction conjunction = (Conjunction) predicate; + } else if (predicate instanceof Conjunction conjunction) { List<Predicate> newChildren = - conjunction.getOperands().stream().map(this::simplifyTree).collect(toList()); + conjunction.getOperands().stream().map(this::simplifyTree).toList(); conjunction.setOperands(newChildren); return conjunction; } else { @@ -50,7 +48,7 @@ public class OrSimplifier implements PredicateProcessor { // Groups and merges the feature sets based on key. private static Predicate compressFeatureSets(List<Predicate> children) { - List<Predicate> newChildren = children.stream().filter(p -> !(p instanceof FeatureSet)).collect(toList()); + List<Predicate> newChildren = children.stream().filter(p -> !(p instanceof FeatureSet)).collect(Collectors.toCollection(ArrayList::new)); children.stream() .filter(FeatureSet.class::isInstance) .map(FeatureSet.class::cast) diff --git a/predicate-search/src/main/java/com/yahoo/search/predicate/PredicateIndexBuilder.java b/predicate-search/src/main/java/com/yahoo/search/predicate/PredicateIndexBuilder.java index d9153b24a87..f7ba462f7f2 100644 --- a/predicate-search/src/main/java/com/yahoo/search/predicate/PredicateIndexBuilder.java +++ b/predicate-search/src/main/java/com/yahoo/search/predicate/PredicateIndexBuilder.java @@ -28,7 +28,6 @@ import java.util.Set; import java.util.TreeMap; import static java.util.stream.Collectors.joining; -import static java.util.stream.Collectors.toList; /** * A builder for {@link PredicateIndex}. @@ -178,7 +177,7 @@ public class PredicateIndexBuilder { .forEach(entry -> boundsIndexBuilder.insert(entry.getKey(), new Posting(docId, intervalStoreBuilder.insert( - entry.getValue().stream().flatMap(IntervalWithBounds::stream).collect(toList()))))); + entry.getValue().stream().flatMap(IntervalWithBounds::stream).toList())))); } private void indexDocumentConjunctions( diff --git a/predicate-search/src/main/java/com/yahoo/search/predicate/benchmarks/HitsVerificationBenchmark.java b/predicate-search/src/main/java/com/yahoo/search/predicate/benchmarks/HitsVerificationBenchmark.java index f58360307aa..82387cbc665 100644 --- a/predicate-search/src/main/java/com/yahoo/search/predicate/benchmarks/HitsVerificationBenchmark.java +++ b/predicate-search/src/main/java/com/yahoo/search/predicate/benchmarks/HitsVerificationBenchmark.java @@ -35,7 +35,6 @@ import java.util.stream.Stream; import static com.yahoo.search.predicate.benchmarks.HitsVerificationBenchmark.BenchmarkArguments.*; import static java.util.stream.Collectors.joining; -import static java.util.stream.Collectors.toList; /** * A test that runs outputs the hits for each query into result file. @@ -108,7 +107,7 @@ public class HitsVerificationBenchmark { private static int writeHits(int i, Stream<Hit> hitStream, BufferedWriter writer) { try { - List<Hit> hits = hitStream.collect(toList()); + List<Hit> hits = hitStream.toList(); writer.append(Integer.toString(i)) .append(": ") .append(hits.stream() diff --git a/predicate-search/src/main/java/com/yahoo/search/predicate/benchmarks/PredicateIndexBenchmark.java b/predicate-search/src/main/java/com/yahoo/search/predicate/benchmarks/PredicateIndexBenchmark.java index 38f139cba9a..5f500b816cf 100644 --- a/predicate-search/src/main/java/com/yahoo/search/predicate/benchmarks/PredicateIndexBenchmark.java +++ b/predicate-search/src/main/java/com/yahoo/search/predicate/benchmarks/PredicateIndexBenchmark.java @@ -43,7 +43,6 @@ import java.util.concurrent.atomic.AtomicInteger; import static com.yahoo.search.predicate.benchmarks.PredicateIndexBenchmark.BenchmarkArguments.Algorithm; import static com.yahoo.search.predicate.benchmarks.PredicateIndexBenchmark.BenchmarkArguments.Format; -import static java.util.stream.Collectors.toList; /** * A benchmark that tests the indexing and search performance. @@ -187,7 +186,7 @@ public class PredicateIndexBenchmark { runners.add(new QueryRunner(shuffledQueries, index.searcher())); } long start = System.currentTimeMillis(); - List<Future<ResultMetrics>> futureResults = runners.stream().map(executor::submit).collect(toList()); + List<Future<ResultMetrics>> futureResults = runners.stream().map(executor::submit).toList(); waitAndShutdown(runtime, executor); long searchTime = System.currentTimeMillis() - start; getResult(futureResults).writeMetrics(output, searchTime); diff --git a/predicate-search/src/main/java/com/yahoo/search/predicate/serialization/PredicateQuerySerializer.java b/predicate-search/src/main/java/com/yahoo/search/predicate/serialization/PredicateQuerySerializer.java index 018f037603d..655ebaaafd3 100644 --- a/predicate-search/src/main/java/com/yahoo/search/predicate/serialization/PredicateQuerySerializer.java +++ b/predicate-search/src/main/java/com/yahoo/search/predicate/serialization/PredicateQuerySerializer.java @@ -14,7 +14,6 @@ import java.io.StringWriter; import java.io.Writer; import java.util.List; -import static java.util.stream.Collectors.toList; /** * Converts {@link PredicateQuery} to and from JSON @@ -99,7 +98,7 @@ public class PredicateQuerySerializer { return reader.lines() .limit(maxQueryCount) .map(serializer::fromJSON) - .collect(toList()); + .toList(); } } diff --git a/predicate-search/src/main/java/com/yahoo/search/predicate/utils/VespaQueryParser.java b/predicate-search/src/main/java/com/yahoo/search/predicate/utils/VespaQueryParser.java index d5ab21114d9..60d24744b63 100644 --- a/predicate-search/src/main/java/com/yahoo/search/predicate/utils/VespaQueryParser.java +++ b/predicate-search/src/main/java/com/yahoo/search/predicate/utils/VespaQueryParser.java @@ -12,7 +12,6 @@ import java.util.ArrayList; import java.util.List; import java.util.function.BiConsumer; -import static java.util.stream.Collectors.toList; /** * Parses query file containing Vespa queries using the deprecated predicate format (query properties - not YQL). @@ -29,7 +28,7 @@ public class VespaQueryParser { List<PredicateQuery> queries = reader.lines() .limit(maxQueryCount) .map(VespaQueryParser::parseQueryFromQueryProperties) - .collect(toList()); + .toList(); return queries; } } diff --git a/predicate-search/src/test/java/com/yahoo/search/predicate/PredicateIndexTest.java b/predicate-search/src/test/java/com/yahoo/search/predicate/PredicateIndexTest.java index a8aef273f3c..3634804c415 100644 --- a/predicate-search/src/test/java/com/yahoo/search/predicate/PredicateIndexTest.java +++ b/predicate-search/src/test/java/com/yahoo/search/predicate/PredicateIndexTest.java @@ -7,7 +7,6 @@ import org.junit.jupiter.api.Test; import java.io.IOException; import static com.yahoo.search.predicate.serialization.SerializationTestHelper.assertSerializationDeserializationMatches; -import static java.util.stream.Collectors.toList; import static org.junit.jupiter.api.Assertions.assertEquals; /** @@ -28,9 +27,9 @@ public class PredicateIndexTest { PredicateQuery query = new PredicateQuery(); query.addFeature("country", "no"); query.addFeature("gender", "male"); - assertEquals("[1]", searcher.search(query).collect(toList()).toString()); + assertEquals("[1]", searcher.search(query).toList().toString()); query.addFeature("gender", "female"); - assertEquals("[1, 67108862]", searcher.search(query).collect(toList()).toString()); + assertEquals("[1, 67108862]", searcher.search(query).toList().toString()); } @Test @@ -43,7 +42,7 @@ public class PredicateIndexTest { PredicateQuery query = new PredicateQuery(); query.addFeature("country", "no"); query.addFeature("gender", "female"); - assertEquals("[1]", searcher.search(query).collect(toList()).toString()); + assertEquals("[1]", searcher.search(query).toList().toString()); } { PredicateIndexBuilder builder = new PredicateIndexBuilder(10); @@ -53,7 +52,7 @@ public class PredicateIndexTest { PredicateIndex.Searcher searcher = index.searcher(); PredicateQuery query = new PredicateQuery(); - assertEquals("[43]", searcher.search(query).collect(toList()).toString()); + assertEquals("[43]", searcher.search(query).toList().toString()); query.addFeature("country", "no"); assertEquals(0, searcher.search(query).count()); } @@ -87,7 +86,7 @@ public class PredicateIndexTest { query.addFeature("country", "no", 0x3); assertEquals(0, searcher.search(query).count()); query.addFeature("gender", "male", 0x6); - assertEquals("[[42,0x2]]", searcher.search(query).collect(toList()).toString()); + assertEquals("[[42,0x2]]", searcher.search(query).toList().toString()); } @Test @@ -100,9 +99,9 @@ public class PredicateIndexTest { PredicateQuery query = new PredicateQuery(); query.addFeature("gender", "male"); query.addRangeFeature("age", 36); - assertEquals("[1]", searcher.search(query).collect(toList()).toString()); + assertEquals("[1]", searcher.search(query).toList().toString()); query.addFeature("gender", "female"); - assertEquals("[1, 2]", searcher.search(query).collect(toList()).toString()); + assertEquals("[1, 2]", searcher.search(query).toList().toString()); } @Test @@ -113,7 +112,7 @@ public class PredicateIndexTest { PredicateIndex index = builder.build(); PredicateIndex.Searcher searcher = index.searcher(); PredicateQuery query = new PredicateQuery(); - assertEquals("[1]", searcher.search(query).collect(toList()).toString()); + assertEquals("[1]", searcher.search(query).toList().toString()); } @Test @@ -126,7 +125,7 @@ public class PredicateIndexTest { PredicateQuery query = new PredicateQuery(); query.addFeature("a", "b"); query.addFeature("c", "d"); - assertEquals("[42]", searcher.search(query).collect(toList()).toString()); + assertEquals("[42]", searcher.search(query).toList().toString()); } @Test diff --git a/predicate-search/src/test/java/com/yahoo/search/predicate/index/BoundsPostingListTest.java b/predicate-search/src/test/java/com/yahoo/search/predicate/index/BoundsPostingListTest.java index 2bde0401c51..064b29da544 100644 --- a/predicate-search/src/test/java/com/yahoo/search/predicate/index/BoundsPostingListTest.java +++ b/predicate-search/src/test/java/com/yahoo/search/predicate/index/BoundsPostingListTest.java @@ -7,7 +7,6 @@ import org.junit.jupiter.api.Test; import java.util.ArrayList; import java.util.List; -import static java.util.stream.Collectors.toList; import static org.junit.jupiter.api.Assertions.*; /** @@ -36,7 +35,7 @@ public class BoundsPostingListTest { boundsList.add(new IntervalWithBounds((i + 1) << 16 | 0xffff, bounds)); } docIds.add(id); - dataRefs.add(builder.insert(boundsList.stream().flatMap(IntervalWithBounds::stream).collect(toList()))); + dataRefs.add(builder.insert(boundsList.stream().flatMap(IntervalWithBounds::stream).toList())); } PredicateIntervalStore store = builder.build(); diff --git a/predicate-search/src/test/java/com/yahoo/search/predicate/index/PredicateSearchTest.java b/predicate-search/src/test/java/com/yahoo/search/predicate/index/PredicateSearchTest.java index 433d69e88a2..d6172f39480 100644 --- a/predicate-search/src/test/java/com/yahoo/search/predicate/index/PredicateSearchTest.java +++ b/predicate-search/src/test/java/com/yahoo/search/predicate/index/PredicateSearchTest.java @@ -9,7 +9,6 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; -import static java.util.stream.Collectors.toList; import static org.junit.jupiter.api.Assertions.assertEquals; /** @@ -33,7 +32,7 @@ public class PredicateSearchTest { entry(0, 0x000100ff), entry(1, 0x00010001, 0x000200ff), entry(2, 0x00010042))); - assertEquals(Arrays.asList(new Hit(0), new Hit(1)).toString(), search.stream().collect(toList()).toString()); + assertEquals(Arrays.asList(new Hit(0), new Hit(1)).toString(), search.stream().toList().toString()); } @Test @@ -44,7 +43,7 @@ public class PredicateSearchTest { SubqueryBitmap.ALL_SUBQUERIES, entry(0, 0x000100ff), entry(1, 0x000100ff))); - assertEquals(Arrays.asList(new Hit(1)).toString(), search.stream().collect(toList()).toString()); + assertEquals(Arrays.asList(new Hit(1)).toString(), search.stream().toList().toString()); } @Test @@ -55,7 +54,7 @@ public class PredicateSearchTest { entry(0, 0x00010001)), postingList(SubqueryBitmap.ALL_SUBQUERIES, entry(0, 0x000200ff))); - assertEquals(Arrays.asList(new Hit(0)).toString(), search.stream().collect(toList()).toString()); + assertEquals(Arrays.asList(new Hit(0)).toString(), search.stream().toList().toString()); } @Test @@ -68,7 +67,7 @@ public class PredicateSearchTest { postingList(SubqueryBitmap.ALL_SUBQUERIES, entry(1, 0x000100ff), entry(2, 0x000100ff))); - assertEquals(Arrays.asList(new Hit(1), new Hit(2), new Hit(3)).toString(), search.stream().collect(toList()).toString()); + assertEquals(Arrays.asList(new Hit(1), new Hit(2), new Hit(3)).toString(), search.stream().toList().toString()); } @Test @@ -76,7 +75,7 @@ public class PredicateSearchTest { PredicateSearch search = createPredicateSearch( new byte[0], postingList(SubqueryBitmap.ALL_SUBQUERIES)); - assertEquals(Arrays.asList().toString(), search.stream().collect(toList()).toString()); + assertEquals(Arrays.asList().toString(), search.stream().toList().toString()); } @Test @@ -88,7 +87,7 @@ public class PredicateSearchTest { entry(1, 0x000100ff)), postingList(SubqueryBitmap.ALL_SUBQUERIES, entry(2, 0x000100ff))); - assertEquals(Arrays.asList(new Hit(0), new Hit(1), new Hit(2)).toString(), search.stream().collect(toList()).toString()); + assertEquals(Arrays.asList(new Hit(0), new Hit(1), new Hit(2)).toString(), search.stream().toList().toString()); } @Test @@ -112,7 +111,7 @@ public class PredicateSearchTest { entry(3, 0x000100ff))); assertEquals( Arrays.asList(new Hit(0), new Hit(1), new Hit(2), new Hit(3)).toString(), - search.stream().collect(toList()).toString()); + search.stream().toList().toString()); } @Test @@ -122,7 +121,7 @@ public class PredicateSearchTest { postingList(SubqueryBitmap.ALL_SUBQUERIES, entry(0, 0x00010001), entry(1, 0x000200ff))); - assertEquals(Arrays.asList().toString(), search.stream().collect(toList()).toString()); + assertEquals(Arrays.asList().toString(), search.stream().toList().toString()); } @Test @@ -135,7 +134,7 @@ public class PredicateSearchTest { entry(0, 0x000300ff)), postingList(SubqueryBitmap.ALL_SUBQUERIES, entry(0, 0x00020002))); - assertEquals(Arrays.asList(new Hit(0)).toString(), search.stream().collect(toList()).toString()); + assertEquals(Arrays.asList(new Hit(0)).toString(), search.stream().toList().toString()); } @Test @@ -144,7 +143,7 @@ public class PredicateSearchTest { new byte[]{1}, postingList(SubqueryBitmap.ALL_SUBQUERIES, entry(0, 0x00010001, 0x00020002, 0x00030003, 0x000100ff, 0x00040004, 0x00050005, 0x00060006))); - assertEquals(Arrays.asList(new Hit(0)).toString(), search.stream().collect(toList()).toString()); + assertEquals(Arrays.asList(new Hit(0)).toString(), search.stream().toList().toString()); } @Test @@ -155,7 +154,7 @@ public class PredicateSearchTest { entry(0, 0x00010001)), postingList(SubqueryBitmap.ALL_SUBQUERIES, entry(0, 0x00010000, 0x00ff0001))); - assertEquals(Arrays.asList().toString(), search.stream().collect(toList()).toString()); + assertEquals(Arrays.asList().toString(), search.stream().toList().toString()); } @Test @@ -164,7 +163,7 @@ public class PredicateSearchTest { new byte[]{1}, postingList(SubqueryBitmap.ALL_SUBQUERIES, entry(0, 0x00010000, 0x00ff0001))); - assertEquals(Arrays.asList(new Hit(0)).toString(), search.stream().collect(toList()).toString()); + assertEquals(Arrays.asList(new Hit(0)).toString(), search.stream().toList().toString()); } @Test @@ -173,7 +172,7 @@ public class PredicateSearchTest { new byte[]{1}, postingList(SubqueryBitmap.ALL_SUBQUERIES, entry(0, 0x00020001, 0x00ff0001))); - assertEquals(Arrays.asList().toString(), search.stream().collect(toList()).toString()); + assertEquals(Arrays.asList().toString(), search.stream().toList().toString()); } @Test @@ -184,7 +183,7 @@ public class PredicateSearchTest { entry(0, 0x00010001)), postingList(SubqueryBitmap.ALL_SUBQUERIES, entry(0, 0x00fe0001, 0x00ff00fe))); - assertEquals(Arrays.asList(new Hit(0)).toString(), search.stream().collect(toList()).toString()); + assertEquals(Arrays.asList(new Hit(0)).toString(), search.stream().toList().toString()); } @Test @@ -203,7 +202,7 @@ public class PredicateSearchTest { entry(0, 0x00010008, 0x00060006)), postingList(SubqueryBitmap.ALL_SUBQUERIES, entry(0, 0x00020002, 0x000700ff))); - assertEquals(Arrays.asList(new Hit(0)).toString(), search.stream().collect(toList()).toString()); + assertEquals(Arrays.asList(new Hit(0)).toString(), search.stream().toList().toString()); } private static PredicateSearch createPredicateSearch(byte[] minFeatures, PostingList... postingLists) { diff --git a/routing-generator/src/main/java/com/yahoo/vespa/hosted/routing/RoutingTable.java b/routing-generator/src/main/java/com/yahoo/vespa/hosted/routing/RoutingTable.java index de3207fda2e..7f9f04ed691 100644 --- a/routing-generator/src/main/java/com/yahoo/vespa/hosted/routing/RoutingTable.java +++ b/routing-generator/src/main/java/com/yahoo/vespa/hosted/routing/RoutingTable.java @@ -154,7 +154,7 @@ public class RoutingTable { this.instance = Objects.requireNonNull(instance); this.zone = Objects.requireNonNull(zone); this.cluster = Objects.requireNonNull(cluster); - this.reals = Objects.requireNonNull(reals).stream().sorted().collect(Collectors.toUnmodifiableList()); + this.reals = Objects.requireNonNull(reals).stream().sorted().toList(); for (int i = 0; i < reals.size(); i++) { for (int j = 0; j < i; j++) { if (reals.get(i).equals(reals.get(j))) { diff --git a/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/TensorFunctionNode.java b/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/TensorFunctionNode.java index 1b72213d5ff..75187d8ca19 100644 --- a/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/TensorFunctionNode.java +++ b/searchlib/src/main/java/com/yahoo/searchlib/rankingexpression/rule/TensorFunctionNode.java @@ -99,7 +99,7 @@ public class TensorFunctionNode extends CompositeNode { List<ExpressionNode> nodes, Map<TensorAddress, ScalarFunction<Reference>> receivingMap) { TensorType denseSubtype = new TensorType(type.valueType(), - type.dimensions().stream().filter(d -> d.isIndexed()).collect(Collectors.toList())); + type.dimensions().stream().filter(TensorType.Dimension::isIndexed).collect(Collectors.toList())); List<String> denseDimensionOrder = new ArrayList<>(dimensionOrder); denseDimensionOrder.retainAll(denseSubtype.dimensionNames()); IndexedTensor.Indexes indexes = IndexedTensor.Indexes.of(denseSubtype, denseDimensionOrder); @@ -175,8 +175,7 @@ public class TensorFunctionNode extends CompositeNode { while (outermost.parent() != null) outermost = outermost.parent(); - if (outermost instanceof ExpressionToStringContext) { - ExpressionToStringContext context = (ExpressionToStringContext)outermost; + if (outermost instanceof ExpressionToStringContext context) { ExpressionNode root = expression; if (root instanceof CompositeNode && ! (root instanceof EmbracedNode) && ! isIdentifierReference(root)) root = new EmbracedNode(root); // Output embraced if composite @@ -223,9 +222,9 @@ public class TensorFunctionNode extends CompositeNode { @Override public TensorFunction<Reference> withArguments(List<TensorFunction<Reference>> arguments) { if (arguments.size() == 0) return this; - List<ExpressionNode> unwrappedChildren = arguments.stream() - .map(arg -> ((ExpressionTensorFunction)arg).expression) - .collect(Collectors.toList()); + var unwrappedChildren = arguments.stream() + .map(arg -> ((ExpressionTensorFunction)arg).expression) + .collect(Collectors.toList()); return new ExpressionTensorFunction(((CompositeNode)expression).setChildren(unwrappedChildren)); } @@ -261,15 +260,11 @@ public class TensorFunctionNode extends CompositeNode { while (outermost.parent() != null) outermost = outermost.parent(); - if (outermost instanceof ExpressionToStringContext) { - ExpressionToStringContext context = (ExpressionToStringContext)outermost; - return expression.toString(new StringBuilder(), - new ExpressionToStringContext(context.wrappedSerializationContext, c, - context.path, - context.parent), - context.path, - context.parent) - .toString(); + if (outermost instanceof ExpressionToStringContext context) { + return expression.toString( + new StringBuilder(), + new ExpressionToStringContext(context.wrappedSerializationContext, c, context.path, context.parent), + context.path, context.parent).toString(); } else { return expression.toString(); diff --git a/security-utils/src/main/java/com/yahoo/security/Pkcs10Csr.java b/security-utils/src/main/java/com/yahoo/security/Pkcs10Csr.java index 073b7f43902..199b26d51a4 100644 --- a/security-utils/src/main/java/com/yahoo/security/Pkcs10Csr.java +++ b/security-utils/src/main/java/com/yahoo/security/Pkcs10Csr.java @@ -16,7 +16,6 @@ import java.util.Objects; import java.util.Optional; import static java.util.Collections.emptyList; -import static java.util.stream.Collectors.toList; /** * @author bjorncs @@ -57,7 +56,7 @@ public class Pkcs10Csr { return getExtensions() .map(extensions -> Arrays.stream(extensions.getExtensionOIDs()) .map(ASN1ObjectIdentifier::getId) - .collect(toList())) + .toList()) .orElse(emptyList()); } diff --git a/security-utils/src/main/java/com/yahoo/security/SubjectAlternativeName.java b/security-utils/src/main/java/com/yahoo/security/SubjectAlternativeName.java index e184d982790..c93dd59ea98 100644 --- a/security-utils/src/main/java/com/yahoo/security/SubjectAlternativeName.java +++ b/security-utils/src/main/java/com/yahoo/security/SubjectAlternativeName.java @@ -14,7 +14,6 @@ import java.util.Arrays; import java.util.List; import java.util.Objects; -import static java.util.stream.Collectors.toList; /** * @author bjorncs @@ -51,7 +50,7 @@ public class SubjectAlternativeName { } static List<SubjectAlternativeName> fromGeneralNames(GeneralNames generalNames) { - return Arrays.stream(generalNames.getNames()).map(SubjectAlternativeName::new).collect(toList()); + return Arrays.stream(generalNames.getNames()).map(SubjectAlternativeName::new).toList(); } private String getValue(GeneralName bcGeneralName) { diff --git a/security-utils/src/main/java/com/yahoo/security/X509CertificateUtils.java b/security-utils/src/main/java/com/yahoo/security/X509CertificateUtils.java index feb3b4df3e0..67b91dfc61a 100644 --- a/security-utils/src/main/java/com/yahoo/security/X509CertificateUtils.java +++ b/security-utils/src/main/java/com/yahoo/security/X509CertificateUtils.java @@ -39,7 +39,6 @@ import java.util.Optional; import java.util.Random; import static com.yahoo.security.Extension.SUBJECT_ALTERNATIVE_NAMES; -import static java.util.stream.Collectors.toList; /** * @author bjorncs @@ -138,7 +137,7 @@ public class X509CertificateUtils { return new LdapName(distinguishedName.getName()).getRdns().stream() .filter(rdn -> rdn.getType().equalsIgnoreCase(rdnName)) .map(rdn -> rdn.getValue().toString()) - .collect(toList()); + .toList(); } catch (NamingException e) { throw new IllegalArgumentException("Invalid DN: " + distinguishedName.getName(), e); } diff --git a/security-utils/src/main/java/com/yahoo/security/tls/PeerAuthorizer.java b/security-utils/src/main/java/com/yahoo/security/tls/PeerAuthorizer.java index 951b5c57c9e..746fce0e290 100644 --- a/security-utils/src/main/java/com/yahoo/security/tls/PeerAuthorizer.java +++ b/security-utils/src/main/java/com/yahoo/security/tls/PeerAuthorizer.java @@ -13,7 +13,6 @@ import java.util.logging.Logger; import static com.yahoo.security.SubjectAlternativeName.Type.DNS; import static com.yahoo.security.SubjectAlternativeName.Type.IP; import static com.yahoo.security.SubjectAlternativeName.Type.URI; -import static java.util.stream.Collectors.toList; /** * Uses rules from {@link AuthorizedPeers} to evaluate X509 certificates @@ -75,6 +74,6 @@ public class PeerAuthorizer { return X509CertificateUtils.getSubjectAlternativeNames(peerCertificate).stream() .filter(san -> san.getType() == DNS || san.getType() == IP || san.getType() == URI) .map(SubjectAlternativeName::getValue) - .collect(toList()); + .toList(); } } diff --git a/security-utils/src/main/java/com/yahoo/security/tls/TransportSecurityOptionsJsonSerializer.java b/security-utils/src/main/java/com/yahoo/security/tls/TransportSecurityOptionsJsonSerializer.java index 0349d4085db..34626e23e7a 100644 --- a/security-utils/src/main/java/com/yahoo/security/tls/TransportSecurityOptionsJsonSerializer.java +++ b/security-utils/src/main/java/com/yahoo/security/tls/TransportSecurityOptionsJsonSerializer.java @@ -18,7 +18,6 @@ import java.util.List; import java.util.Optional; import java.util.Set; -import static java.util.stream.Collectors.toList; import static java.util.stream.Collectors.toSet; /** @@ -111,7 +110,7 @@ class TransportSecurityOptionsJsonSerializer { private static List<RequiredPeerCredential> toRequestPeerCredentials(List<RequiredCredential> requiredCredentials) { return requiredCredentials.stream() .map(TransportSecurityOptionsJsonSerializer::toRequiredPeerCredential) - .collect(toList()); + .toList(); } private static RequiredPeerCredential toRequiredPeerCredential(RequiredCredential requiredCredential) { diff --git a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/api/ZToken.java b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/api/ZToken.java index c3c2756b226..7e28b44f20f 100644 --- a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/api/ZToken.java +++ b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/api/ZToken.java @@ -8,7 +8,6 @@ import java.time.Instant; import java.util.List; import java.util.Objects; -import static java.util.stream.Collectors.toList; /** * Represents an Athenz ZToken (role token) @@ -39,7 +38,7 @@ public class ZToken { String domain = token.getDomain(); return token.getRoles().stream() .map(roleName -> new AthenzRole(domain, roleName)) - .collect(toList());} + .toList();} public Instant getExpiryTime () { return Instant.ofEpochSecond(token.getExpiryTime()); diff --git a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/DefaultZmsClient.java b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/DefaultZmsClient.java index 7b3388d1027..68a71b9663f 100644 --- a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/DefaultZmsClient.java +++ b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/DefaultZmsClient.java @@ -50,7 +50,6 @@ import java.util.Set; import java.util.function.Supplier; import java.util.stream.Collectors; -import static java.util.stream.Collectors.toList; /** * @author bjorncs @@ -200,7 +199,7 @@ public class DefaultZmsClient extends ClientBase implements ZmsClient { .build(); return execute(request, response -> { DomainListResponseEntity result = readEntity(response, DomainListResponseEntity.class); - return result.domains.stream().map(AthenzDomain::new).collect(toList()); + return result.domains.stream().map(AthenzDomain::new).toList(); }); } @@ -212,7 +211,7 @@ public class DefaultZmsClient extends ClientBase implements ZmsClient { .build(); return execute(request, response -> { DomainListResponseEntity result = readEntity(response, DomainListResponseEntity.class); - return result.domains.stream().map(AthenzDomain::new).collect(toList()); + return result.domains.stream().map(AthenzDomain::new).toList(); }); } @@ -300,7 +299,7 @@ public class DefaultZmsClient extends ClientBase implements ZmsClient { .id(a.getId()) .effect(AthenzAssertion.Effect.valueOrNull(a.getEffect())) .build()) - .collect(toList()); + .toList(); return Optional.of(new AthenzPolicy(entity.getName(), assertions)); } diff --git a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/bindings/ResourceGroupRolesEntity.java b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/bindings/ResourceGroupRolesEntity.java index 31773f85229..ffc01c97229 100644 --- a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/bindings/ResourceGroupRolesEntity.java +++ b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/bindings/ResourceGroupRolesEntity.java @@ -11,7 +11,6 @@ import com.yahoo.vespa.athenz.client.zms.RoleAction; import java.util.List; import java.util.Set; -import static java.util.stream.Collectors.toList; /** * @author bjorncs @@ -51,7 +50,7 @@ public class ResourceGroupRolesEntity { this.domain = providerService.getDomainName(); this.service = providerService.getName(); this.tenant = tenantDomain.getName(); - this.roles = rolesActions.stream().map(roleAction -> new TenantRoleAction(roleAction.getRoleName(), roleAction.getAction())).collect(toList()); + this.roles = rolesActions.stream().map(roleAction -> new TenantRoleAction(roleAction.getRoleName(), roleAction.getAction())).toList(); this.resourceGroup = resourceGroup; } diff --git a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zts/DefaultZtsClient.java b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zts/DefaultZtsClient.java index 262df8611f5..cf46cad57b1 100644 --- a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zts/DefaultZtsClient.java +++ b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zts/DefaultZtsClient.java @@ -42,7 +42,6 @@ import java.util.Optional; import java.util.function.Supplier; import java.util.stream.Collectors; -import static java.util.stream.Collectors.toList; /** * Default implementation of {@link ZtsClient} @@ -149,7 +148,7 @@ public class DefaultZtsClient extends ClientBase implements ZtsClient { public AthenzAccessToken getAccessToken(List<AthenzRole> athenzRole) { List<AthenzResourceName> athenzResourceNames = athenzRole.stream() .map(AthenzRole::toResourceName) - .collect(toList()); + .toList(); return this.getAccessTokenImpl(athenzResourceNames, List.of()); } @@ -201,7 +200,7 @@ public class DefaultZtsClient extends ClientBase implements ZtsClient { .build(); return execute(request, response -> { TenantDomainsResponseEntity entity = readEntity(response, TenantDomainsResponseEntity.class); - return entity.tenantDomainNames.stream().map(AthenzDomain::new).collect(toList()); + return entity.tenantDomainNames.stream().map(AthenzDomain::new).toList(); }); } diff --git a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/utils/SiaUtils.java b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/utils/SiaUtils.java index 596bc45d127..848a3026843 100644 --- a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/utils/SiaUtils.java +++ b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/utils/SiaUtils.java @@ -19,7 +19,6 @@ import java.util.List; import java.util.Optional; import java.util.stream.StreamSupport; -import static java.util.Collections.emptyList; import static java.util.stream.Collectors.toList; /** @@ -128,7 +127,7 @@ public class SiaUtils { String keyFileSuffix = ".key.pem"; Path keysDirectory = root.resolve("keys"); if ( ! Files.exists(keysDirectory)) - return emptyList(); + return List.of(); try (DirectoryStream<Path> directoryStream = Files.newDirectoryStream(keysDirectory)) { return StreamSupport.stream(directoryStream.spliterator(), false) diff --git a/vespa-osgi-testrunner/src/main/java/com/yahoo/vespa/testrunner/JunitRunner.java b/vespa-osgi-testrunner/src/main/java/com/yahoo/vespa/testrunner/JunitRunner.java index d0e8663731a..21890bab569 100644 --- a/vespa-osgi-testrunner/src/main/java/com/yahoo/vespa/testrunner/JunitRunner.java +++ b/vespa-osgi-testrunner/src/main/java/com/yahoo/vespa/testrunner/JunitRunner.java @@ -32,7 +32,6 @@ import java.util.logging.Level; import java.util.logging.LogRecord; import java.util.logging.Logger; -import static java.util.stream.Collectors.toList; /** * @author mortent @@ -126,7 +125,7 @@ public class JunitRunner extends AbstractComponent implements TestRunner { LauncherDiscoveryRequest discoveryRequest = LauncherDiscoveryRequestBuilder.request() .selectors(testClasses.stream() .map(DiscoverySelectors::selectClass) - .collect(toList())) + .toList()) .build(); testExecutor.accept(discoveryRequest, new TestExecutionListener[] { testReportListener }); diff --git a/vespa-osgi-testrunner/src/test/java/com/yahoo/vespa/testrunner/AggregateTestRunnerTest.java b/vespa-osgi-testrunner/src/test/java/com/yahoo/vespa/testrunner/AggregateTestRunnerTest.java index 52a96521dc1..2690c89e1c1 100644 --- a/vespa-osgi-testrunner/src/test/java/com/yahoo/vespa/testrunner/AggregateTestRunnerTest.java +++ b/vespa-osgi-testrunner/src/test/java/com/yahoo/vespa/testrunner/AggregateTestRunnerTest.java @@ -23,7 +23,6 @@ import static com.yahoo.vespa.testrunner.TestRunner.Status.NOT_STARTED; import static com.yahoo.vespa.testrunner.TestRunner.Status.NO_TESTS; import static com.yahoo.vespa.testrunner.TestRunner.Status.RUNNING; import static com.yahoo.vespa.testrunner.TestRunner.Status.SUCCESS; -import static java.util.stream.Collectors.toList; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertNotNull; @@ -165,10 +164,12 @@ class AggregateTestRunnerTest { } catch (Exception e) { TestReport.trimStackTraces(e, "org.junit.platform.commons.util.ReflectionUtils"); - assertEquals("java.lang.RuntimeException: java.lang.RuntimeException: inner\n" + - "\tat com.yahoo.vespa.testrunner.AggregateTestRunnerTest.testStackTrimming(AggregateTestRunnerTest.java:163)\n" + - "Caused by: java.lang.RuntimeException: inner\n" + - "\tat com.yahoo.vespa.testrunner.AggregateTestRunnerTest.testStackTrimming(AggregateTestRunnerTest.java:160)\n", + assertEquals(""" + java.lang.RuntimeException: java.lang.RuntimeException: inner + \tat com.yahoo.vespa.testrunner.AggregateTestRunnerTest.testStackTrimming(AggregateTestRunnerTest.java:162) + Caused by: java.lang.RuntimeException: inner + \tat com.yahoo.vespa.testrunner.AggregateTestRunnerTest.testStackTrimming(AggregateTestRunnerTest.java:159) + """, ExceptionUtils.getStackTraceAsString(e)); } } @@ -182,7 +183,7 @@ class AggregateTestRunnerTest { @Override public Collection<LogRecord> getLog(long after) { - return log.stream().filter(record -> record.getSequenceNumber() > after).collect(toList()); + return log.stream().filter(record -> record.getSequenceNumber() > after).toList(); } @Override diff --git a/vespaclient-core/src/main/java/com/yahoo/vespaclient/ClusterList.java b/vespaclient-core/src/main/java/com/yahoo/vespaclient/ClusterList.java index c42d48b4821..452ab175862 100644 --- a/vespaclient-core/src/main/java/com/yahoo/vespaclient/ClusterList.java +++ b/vespaclient-core/src/main/java/com/yahoo/vespaclient/ClusterList.java @@ -36,7 +36,7 @@ public class ClusterList { private static List<ClusterDef> parse(ClusterListConfig config) { return config.storage().stream() .map(storage -> new ClusterDef(storage.name())) - .collect(Collectors.toUnmodifiableList()); + .toList(); } } diff --git a/zookeeper-server/zookeeper-server-common/src/main/java/com/yahoo/vespa/zookeeper/Reconfigurer.java b/zookeeper-server/zookeeper-server-common/src/main/java/com/yahoo/vespa/zookeeper/Reconfigurer.java index 6719a68e1cd..0a25d432766 100644 --- a/zookeeper-server/zookeeper-server-common/src/main/java/com/yahoo/vespa/zookeeper/Reconfigurer.java +++ b/zookeeper-server/zookeeper-server-common/src/main/java/com/yahoo/vespa/zookeeper/Reconfigurer.java @@ -17,7 +17,6 @@ import java.util.logging.Level; import java.util.logging.Logger; import static com.yahoo.vespa.zookeeper.Configurator.serverSpec; -import static java.util.stream.Collectors.toList; /** * Starts zookeeper server and supports reconfiguring zookeeper cluster. Keep this as a component @@ -145,7 +144,7 @@ public class Reconfigurer extends AbstractComponent { return config.server().stream() .filter(server -> ! server.retired()) .map(server -> serverSpec(server, false)) - .collect(toList()); + .toList(); } } |