From 693415dadcf222e9e1fa3c61a3a0f6d6fa0c6543 Mon Sep 17 00:00:00 2001 From: "lorenz.compagnucci" Date: Mon, 9 May 2022 21:15:46 +0200 Subject: [PATCH] Small improvements of the class RetrayableEurekaHttpClient --- .../decorator/RetryableEurekaHttpClient.java | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/eureka-client/src/main/java/com/netflix/discovery/shared/transport/decorator/RetryableEurekaHttpClient.java b/eureka-client/src/main/java/com/netflix/discovery/shared/transport/decorator/RetryableEurekaHttpClient.java index 92abccc575..d302079c49 100644 --- a/eureka-client/src/main/java/com/netflix/discovery/shared/transport/decorator/RetryableEurekaHttpClient.java +++ b/eureka-client/src/main/java/com/netflix/discovery/shared/transport/decorator/RetryableEurekaHttpClient.java @@ -62,7 +62,7 @@ public class RetryableEurekaHttpClient extends EurekaHttpClientDecorator { private final String name; private final EurekaTransportConfig transportConfig; - private final ClusterResolver clusterResolver; + private final ClusterResolver clusterResolver; private final TransportClientFactory clientFactory; private final ServerStatusEvaluator serverStatusEvaluator; private final int numberOfRetries; @@ -73,7 +73,7 @@ public class RetryableEurekaHttpClient extends EurekaHttpClientDecorator { public RetryableEurekaHttpClient(String name, EurekaTransportConfig transportConfig, - ClusterResolver clusterResolver, + ClusterResolver clusterResolver, TransportClientFactory clientFactory, ServerStatusEvaluator serverStatusEvaluator, int numberOfRetries) { @@ -168,18 +168,16 @@ private List getHostCandidates() { if (threshold > candidateHosts.size()) { threshold = candidateHosts.size(); } - if (quarantineSet.isEmpty()) { - // no-op - } else if (quarantineSet.size() >= threshold) { + + if (quarantineSet.size() >= threshold) { logger.debug("Clearing quarantined list of size {}", quarantineSet.size()); quarantineSet.clear(); } else { List remainingHosts = new ArrayList<>(candidateHosts.size()); - for (EurekaEndpoint endpoint : candidateHosts) { - if (!quarantineSet.contains(endpoint)) { - remainingHosts.add(endpoint); - } - } + candidateHosts.forEach(e -> { + if (!quarantineSet.contains(e)) + remainingHosts.add(e); + }); candidateHosts = remainingHosts; }