2424import com .datastax .oss .driver .api .core .metadata .token .TokenRange ;
2525import com .datastax .oss .driver .internal .core .metadata .token .ReplicationFactor ;
2626import com .datastax .oss .driver .internal .core .util .ConsistencyLevels ;
27+ import com .datastax .oss .driver .shaded .guava .common .collect .ImmutableMap ;
2728import edu .umd .cs .findbugs .annotations .NonNull ;
28- import java .util .Collections ;
2929import java .util .Map ;
30+ import java .util .Map .Entry ;
3031import java .util .Objects ;
3132import java .util .Set ;
32- import java .util .TreeMap ;
3333import 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