private BookKeeperClientBuilder createBKCBuilder(String bkcName, DistributedLogConfiguration conf, String zkServers, String ledgersPath, Optional<FeatureProvider> featureProviderOptional) { BookKeeperClientBuilder builder = BookKeeperClientBuilder.newBuilder() .name(bkcName) .dlConfig(conf) .zkServers(zkServers) .ledgersPath(ledgersPath) .channelFactory(channelFactory) .requestTimer(requestTimer) .featureProvider(featureProviderOptional) .statsLogger(statsLogger); LOG.info("Created shared client builder {} : zkServers = {}, ledgersPath = {}, numIOThreads = {}", new Object[] { bkcName, zkServers, ledgersPath, conf.getBKClientNumberIOThreads() }); return builder; }