diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2022-12-02 22:44:23 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-12-02 22:44:23 +0100 |
commit | c0a2a4c5b8c595b3f523026a9684d505cabedf05 (patch) | |
tree | 94fedd0f85998659dd956b5256e60ca8e4950817 /container-search/src/main/java/com/yahoo/search/federation/FederationResult.java | |
parent | 7f870bf3cb8dd0a3d015a448608ba7291a783932 (diff) |
Revert "Revert "Let list handling catch up with Java 17""
Diffstat (limited to 'container-search/src/main/java/com/yahoo/search/federation/FederationResult.java')
-rw-r--r-- | container-search/src/main/java/com/yahoo/search/federation/FederationResult.java | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/container-search/src/main/java/com/yahoo/search/federation/FederationResult.java b/container-search/src/main/java/com/yahoo/search/federation/FederationResult.java index f6cbb49f7d5..89c45fde6ae 100644 --- a/container-search/src/main/java/com/yahoo/search/federation/FederationResult.java +++ b/container-search/src/main/java/com/yahoo/search/federation/FederationResult.java @@ -1,7 +1,6 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.search.federation; -import com.google.common.collect.ImmutableList; import com.yahoo.search.Result; import com.yahoo.search.searchchain.FutureResult; @@ -27,9 +26,9 @@ class FederationResult { * The remaining targets to wait for. * Other targets are either complete, or should only be included if they are available when we complete */ - private List<TargetResult> targetsToWaitFor; + private final List<TargetResult> targetsToWaitFor; - private FederationResult(ImmutableList<TargetResult> targetResults) { + private FederationResult(List<TargetResult> targetResults) { this.targetResults = targetResults; if (targetResults.stream().anyMatch(TargetResult::isMandatory)) @@ -94,7 +93,7 @@ class FederationResult { public Optional<Result> getIfAvailable(long timeout) { if (availableResult.isPresent()) return availableResult; availableResult = futureResult.getIfAvailable(timeout, TimeUnit.MILLISECONDS); - availableResult.ifPresent(result -> target.modifyTargetResult(result)); + availableResult.ifPresent(target::modifyTargetResult); return availableResult; } @@ -121,14 +120,14 @@ class FederationResult { public static class Builder { - private final ImmutableList.Builder<TargetResult> results = new ImmutableList.Builder(); + private final List<TargetResult> results = new ArrayList<>(); public void add(FederationSearcher.Target target, FutureResult futureResult) { results.add(new TargetResult(target, futureResult)); } public FederationResult build() { - return new FederationResult(results.build()); + return new FederationResult(List.copyOf(results)); } } |