@@ -59,15 +59,14 @@ public BaseCluster(final String clusterId, final ClusterSettings settings, final
59
59
}
60
60
61
61
@ Override
62
- public Server getServer (final ServerSelector serverSelector , final long maxWaitTime , final TimeUnit maxWaitTimeTimeUnit ,
63
- final long connectRetryFrequency , final TimeUnit connectRetryFrequencyTimeUnit ) {
62
+ public Server getServer (final ServerSelector serverSelector , final long maxWaitTime , final TimeUnit timeUnit ) {
64
63
isTrue ("open" , !isClosed ());
65
64
66
65
try {
67
66
CountDownLatch currentPhase = phase .get ();
68
67
ClusterDescription curDescription = description ;
69
68
List <ServerDescription > serverDescriptions = serverSelector .choose (curDescription );
70
- final long endTime = System .nanoTime () + NANOSECONDS .convert (maxWaitTime , maxWaitTimeTimeUnit );
69
+ final long endTime = System .nanoTime () + NANOSECONDS .convert (maxWaitTime , timeUnit );
71
70
boolean selectionFailureLogged = false ;
72
71
while (true ) {
73
72
throwIfIncompatible (curDescription );
@@ -81,17 +80,18 @@ public Server getServer(final ServerSelector serverSelector, final long maxWaitT
81
80
82
81
if (System .nanoTime () > endTime ) {
83
82
throw new MongoTimeoutException (format ("Timed out while waiting for a server that matches %s after %d ms" ,
84
- serverSelector , MILLISECONDS .convert (maxWaitTime , maxWaitTimeTimeUnit )));
83
+ serverSelector , MILLISECONDS .convert (maxWaitTime , timeUnit )));
85
84
}
86
85
87
86
if (!selectionFailureLogged ) {
88
87
LOGGER .info (format ("No server chosen by %s from cluster description %s. Waiting for %d ms before timing out" ,
89
- serverSelector , curDescription , MILLISECONDS .convert (maxWaitTime , maxWaitTimeTimeUnit )));
88
+ serverSelector , curDescription , MILLISECONDS .convert (maxWaitTime , timeUnit )));
90
89
selectionFailureLogged = true ;
91
90
}
91
+
92
92
connect ();
93
93
94
- currentPhase .await (connectRetryFrequency , connectRetryFrequencyTimeUnit );
94
+ currentPhase .await (serverFactory . getSettings (). getHeartbeatConnectRetryFrequency ( NANOSECONDS ), NANOSECONDS );
95
95
96
96
currentPhase = phase .get ();
97
97
curDescription = description ;
@@ -103,31 +103,30 @@ public Server getServer(final ServerSelector serverSelector, final long maxWaitT
103
103
}
104
104
105
105
@ Override
106
- public ClusterDescription getDescription (final long maxWaitTime , final TimeUnit maxWaitTimeTimeUnit ,
107
- final long connectRetryFrequency , final TimeUnit connectRetryFrequencyTimeUnit ) {
106
+ public ClusterDescription getDescription (final long maxWaitTime , final TimeUnit timeUnit ) {
108
107
isTrue ("open" , !isClosed ());
109
108
110
109
try {
111
110
CountDownLatch currentPhase = phase .get ();
112
111
ClusterDescription curDescription = description ;
113
- final long endTime = System .nanoTime () + NANOSECONDS .convert (maxWaitTime , maxWaitTimeTimeUnit );
112
+ final long endTime = System .nanoTime () + NANOSECONDS .convert (maxWaitTime , timeUnit );
114
113
boolean selectionFailureLogged = false ;
115
114
while (curDescription .getType () == ClusterType .Unknown ) {
116
115
117
116
if (System .nanoTime () > endTime ) {
118
117
throw new MongoTimeoutException (format ("Timed out while waiting to connect after %d ms" ,
119
- MILLISECONDS .convert (maxWaitTime , maxWaitTimeTimeUnit )));
118
+ MILLISECONDS .convert (maxWaitTime , timeUnit )));
120
119
}
121
120
122
121
if (!selectionFailureLogged ) {
123
122
LOGGER .info (format ("Cluster description not yet available. Waiting for %d ms before timing out" ,
124
- MILLISECONDS .convert (maxWaitTime , maxWaitTimeTimeUnit )));
123
+ MILLISECONDS .convert (maxWaitTime , timeUnit )));
125
124
selectionFailureLogged = true ;
126
125
}
127
126
128
127
connect ();
129
128
130
- currentPhase .await (connectRetryFrequency , connectRetryFrequencyTimeUnit );
129
+ currentPhase .await (serverFactory . getSettings (). getHeartbeatConnectRetryFrequency ( NANOSECONDS ), NANOSECONDS );
131
130
132
131
currentPhase = phase .get ();
133
132
curDescription = description ;
0 commit comments