From d15ca10d6d3bd61f9770565a649ae19dca8f3053 Mon Sep 17 00:00:00 2001 From: Chalard Jean Date: Thu, 20 Feb 2020 08:41:38 +0000 Subject: [PATCH] Revert "[NS D01] Remove candidates that don't satisfy the request." This reverts commit a19115d4828d45336fae5b9e407fe55f16686696. Reason for revert: The feature was punted out of R. Change-Id: Ia91b3b3c55f735dae64ffa3194614a6f2631a087 --- .../com/android/server/connectivity/NetworkRanker.java | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/services/core/java/com/android/server/connectivity/NetworkRanker.java b/services/core/java/com/android/server/connectivity/NetworkRanker.java index 1ae7dc5c36..d0aabf95d5 100644 --- a/services/core/java/com/android/server/connectivity/NetworkRanker.java +++ b/services/core/java/com/android/server/connectivity/NetworkRanker.java @@ -20,7 +20,6 @@ import android.annotation.NonNull; import android.annotation.Nullable; import android.net.NetworkRequest; -import java.util.ArrayList; import java.util.Collection; /** @@ -32,15 +31,15 @@ public class NetworkRanker { /** * Find the best network satisfying this request among the list of passed networks. */ + // Almost equivalent to Collections.max(nais), but allows returning null if no network + // satisfies the request. @Nullable public NetworkAgentInfo getBestNetwork(@NonNull final NetworkRequest request, @NonNull final Collection nais) { - final ArrayList candidates = new ArrayList<>(nais); - candidates.removeIf(nai -> !nai.satisfies(request)); - NetworkAgentInfo bestNetwork = null; int bestScore = Integer.MIN_VALUE; - for (final NetworkAgentInfo nai : candidates) { + for (final NetworkAgentInfo nai : nais) { + if (!nai.satisfies(request)) continue; if (nai.getCurrentScore() > bestScore) { bestNetwork = nai; bestScore = nai.getCurrentScore();