public SingleConnectionManager(SingleServerConfig cfg, Config config) { MasterSlaveServersConfig newconfig = new MasterSlaveServersConfig(); String addr = cfg.getAddress().getHost() + ":" + cfg.getAddress().getPort(); newconfig.setRetryAttempts(cfg.getRetryAttempts()); newconfig.setRetryInterval(cfg.getRetryInterval()); newconfig.setTimeout(cfg.getTimeout()); newconfig.setPingTimeout(cfg.getPingTimeout()); newconfig.setPassword(cfg.getPassword()); newconfig.setDatabase(cfg.getDatabase()); newconfig.setClientName(cfg.getClientName()); newconfig.setMasterAddress(addr); newconfig.setMasterConnectionPoolSize(cfg.getConnectionPoolSize()); newconfig.setSubscriptionsPerConnection(cfg.getSubscriptionsPerConnection()); newconfig.setSlaveSubscriptionConnectionPoolSize(cfg.getSubscriptionConnectionPoolSize()); init(newconfig, config); if (cfg.isDnsMonitoring()) { try { this.currentMaster.set(InetAddress.getByName(cfg.getAddress().getHost())); } catch (UnknownHostException e) { throw new RedisConnectionException("Unknown host", e); } log.debug("DNS monitoring enabled; Current master set to {}", currentMaster.get()); monitorDnsChange(cfg); } }