@@ -170,7 +170,7 @@ private InternalDriver createDriver(
170
170
try {
171
171
var homeDatabaseCache =
172
172
HomeDatabaseCache .newInstance (uri .getScheme ().startsWith ("neo4j" ));
173
- boltConnectionProvider = createBoltConnectionProvider (
173
+ boltConnectionProvider = createDriverBoltConnectionProvider (
174
174
uri ,
175
175
config ,
176
176
eventLoopGroup ,
@@ -223,7 +223,7 @@ private Function<BoltServerAddress, Set<BoltServerAddress>> createBoltServerAddr
223
223
.collect (Collectors .toCollection (LinkedHashSet ::new ));
224
224
}
225
225
226
- private DriverBoltConnectionProvider createBoltConnectionProvider (
226
+ private DriverBoltConnectionProvider createDriverBoltConnectionProvider (
227
227
URI uri ,
228
228
Config config ,
229
229
EventLoopGroup eventLoopGroup ,
@@ -238,6 +238,47 @@ private DriverBoltConnectionProvider createBoltConnectionProvider(
238
238
MetricsListener metricsListener ) {
239
239
DriverBoltConnectionProvider boltConnectionProvider ;
240
240
var clock = createClock ();
241
+ var errorMapper = ErrorMapper .getInstance ();
242
+ return new AdaptingDriverBoltConnectionProvider (
243
+ createBoltConnectionProvider (
244
+ uri ,
245
+ config ,
246
+ eventLoopGroup ,
247
+ routingSettings ,
248
+ rediscoverySupplier ,
249
+ boltConnectionListener ,
250
+ address ,
251
+ routingContext ,
252
+ boltAgent ,
253
+ userAgent ,
254
+ connectTimeoutMillis ,
255
+ metricsListener ,
256
+ clock ),
257
+ errorMapper ,
258
+ BoltValueFactory .getInstance (),
259
+ false ,
260
+ address ,
261
+ routingContext ,
262
+ boltAgent ,
263
+ userAgent ,
264
+ connectTimeoutMillis );
265
+ }
266
+
267
+ protected BoltConnectionProvider createBoltConnectionProvider (
268
+ URI uri ,
269
+ Config config ,
270
+ EventLoopGroup eventLoopGroup ,
271
+ RoutingSettings routingSettings ,
272
+ Supplier <Rediscovery > rediscoverySupplier ,
273
+ BoltConnectionListener boltConnectionListener ,
274
+ BoltServerAddress address ,
275
+ RoutingContext routingContext ,
276
+ BoltAgent boltAgent ,
277
+ String userAgent ,
278
+ int connectTimeoutMillis ,
279
+ MetricsListener metricsListener ,
280
+ Clock clock ) {
281
+ BoltConnectionProvider boltConnectionProvider ;
241
282
var loggingProvider = new BoltLoggingProvider (config .logging ());
242
283
Function <BoltServerAddress , BoltConnectionProvider > pooledBoltConnectionProviderSupplier =
243
284
selectedAddress -> createPooledBoltConnectionProvider (
@@ -252,42 +293,23 @@ private DriverBoltConnectionProvider createBoltConnectionProvider(
252
293
userAgent ,
253
294
connectTimeoutMillis ,
254
295
metricsListener );
255
- var errorMapper = ErrorMapper .getInstance ();
256
296
if (uri .getScheme ().startsWith ("bolt" )) {
257
297
assertNoRoutingContext (uri , routingSettings );
258
- boltConnectionProvider = new AdaptingDriverBoltConnectionProvider (
259
- pooledBoltConnectionProviderSupplier .apply (address ),
260
- errorMapper ,
261
- BoltValueFactory .getInstance (),
262
- false ,
263
- address ,
264
- routingContext ,
265
- boltAgent ,
266
- userAgent ,
267
- connectTimeoutMillis );
298
+ boltConnectionProvider = pooledBoltConnectionProviderSupplier .apply (address );
268
299
} else {
269
- boltConnectionProvider = new AdaptingDriverBoltConnectionProvider (
270
- createRoutedBoltConnectionProvider (
271
- config ,
272
- pooledBoltConnectionProviderSupplier ,
273
- routingSettings ,
274
- rediscoverySupplier ,
275
- clock ,
276
- loggingProvider ,
277
- address ,
278
- routingContext ,
279
- boltAgent ,
280
- userAgent ,
281
- connectTimeoutMillis ,
282
- metricsListener ),
283
- errorMapper ,
284
- BoltValueFactory .getInstance (),
285
- true ,
300
+ boltConnectionProvider = createRoutedBoltConnectionProvider (
301
+ config ,
302
+ pooledBoltConnectionProviderSupplier ,
303
+ routingSettings ,
304
+ rediscoverySupplier ,
305
+ clock ,
306
+ loggingProvider ,
286
307
address ,
287
308
routingContext ,
288
309
boltAgent ,
289
310
userAgent ,
290
- connectTimeoutMillis );
311
+ connectTimeoutMillis ,
312
+ metricsListener );
291
313
}
292
314
return boltConnectionProvider ;
293
315
}
0 commit comments