Skip to content

Commit 9866703

Browse files
committed
Simplify creation of requiredReplicasByDc map
1 parent 27cafd5 commit 9866703

1 file changed

Lines changed: 10 additions & 15 deletions

File tree

core/src/main/java/com/datastax/oss/driver/internal/core/metadata/diagnostic/ring/EachQuorumTokenRingDiagnosticGenerator.java

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,12 @@
2424
import com.datastax.oss.driver.api.core.metadata.token.TokenRange;
2525
import com.datastax.oss.driver.internal.core.metadata.token.ReplicationFactor;
2626
import com.datastax.oss.driver.internal.core.util.ConsistencyLevels;
27+
import com.datastax.oss.driver.shaded.guava.common.collect.ImmutableMap;
2728
import edu.umd.cs.findbugs.annotations.NonNull;
28-
import java.util.Collections;
2929
import java.util.Map;
30+
import java.util.Map.Entry;
3031
import java.util.Objects;
3132
import java.util.Set;
32-
import java.util.TreeMap;
3333
import java.util.stream.Collectors;
3434

3535
/**
@@ -49,19 +49,14 @@ public EachQuorumTokenRingDiagnosticGenerator(
4949
@NonNull Map<String, ReplicationFactor> replicationFactorsByDc) {
5050
super(metadata, keyspace);
5151
Objects.requireNonNull(replicationFactorsByDc, "replicationFactorsByDc cannot be null");
52-
this.requiredReplicasByDc = createRequiredReplicasByDcMap(replicationFactorsByDc);
53-
}
54-
55-
private Map<String, Integer> createRequiredReplicasByDcMap(
56-
Map<String, ReplicationFactor> replicationFactorsByDc) {
57-
Map<String, Integer> requiredReplicasByDc = new TreeMap<>();
58-
for (String datacenter : replicationFactorsByDc.keySet()) {
59-
int requiredReplicas =
60-
ConsistencyLevels.requiredReplicas(
61-
ConsistencyLevel.EACH_QUORUM, replicationFactorsByDc.get(datacenter));
62-
requiredReplicasByDc.put(datacenter, requiredReplicas);
63-
}
64-
return Collections.unmodifiableMap(requiredReplicasByDc);
52+
this.requiredReplicasByDc =
53+
replicationFactorsByDc.entrySet().stream()
54+
.collect(
55+
ImmutableMap.toImmutableMap(
56+
Entry::getKey,
57+
entry ->
58+
ConsistencyLevels.requiredReplicas(
59+
ConsistencyLevel.EACH_QUORUM, entry.getValue())));
6560
}
6661

6762
@Override

0 commit comments

Comments
 (0)