Database setting removed from cluster configuration

pull/395/head
Nikita 9 years ago
parent b6777db0e8
commit cfa8872bc0

@ -71,11 +71,6 @@ class BaseConfig<T extends BaseConfig<T>> {
*/
private int failedAttempts = 3;
/**
* Database index used for Redis connection
*/
private int database = 0;
/**
* Password for Redis authentication. Should be null if not needed
*/
@ -99,7 +94,6 @@ class BaseConfig<T extends BaseConfig<T>> {
setSubscriptionsPerConnection(config.getSubscriptionsPerConnection());
setRetryAttempts(config.getRetryAttempts());
setRetryInterval(config.getRetryInterval());
setDatabase(config.getDatabase());
setTimeout(config.getTimeout());
setClientName(config.getClientName());
setPingTimeout(config.getPingTimeout());
@ -166,20 +160,6 @@ class BaseConfig<T extends BaseConfig<T>> {
return retryInterval;
}
/**
* Database index used for Redis connection
* Default is <code>0</code>
*
* @param database
*/
public T setDatabase(int database) {
this.database = database;
return (T) this;
}
public int getDatabase() {
return database;
}
/**
* Redis server response timeout.
*

@ -118,6 +118,7 @@ public class Config {
*
* @return
*/
@Deprecated
public ClusterServersConfig useClusterServers(ClusterServersConfig config) {
checkMasterSlaveServersConfig();
checkSentinelServersConfig();
@ -152,6 +153,7 @@ public class Config {
*
* @return
*/
@Deprecated
public ElasticacheServersConfig useElasticacheServers(ElasticacheServersConfig config) {
checkClusterServersConfig();
checkMasterSlaveServersConfig();
@ -185,6 +187,7 @@ public class Config {
*
* @return
*/
@Deprecated
public SingleServerConfig useSingleServer(SingleServerConfig config) {
checkClusterServersConfig();
checkMasterSlaveServersConfig();

@ -39,6 +39,11 @@ public class ElasticacheServersConfig extends BaseMasterSlaveServersConfig<Elast
*/
private int scanInterval = 1000;
/**
* Database index used for Redis connection
*/
private int database = 0;
public ElasticacheServersConfig() {
}
@ -46,6 +51,7 @@ public class ElasticacheServersConfig extends BaseMasterSlaveServersConfig<Elast
super(config);
setNodeAddresses(config.getNodeAddresses());
setScanInterval(config.getScanInterval());
setDatabase(config.getDatabase());
}
/**
@ -81,6 +87,18 @@ public class ElasticacheServersConfig extends BaseMasterSlaveServersConfig<Elast
return this;
}
/**
* Database index used for Redis connection
* Default is <code>0</code>
*
* @param database
*/
public ElasticacheServersConfig setDatabase(int database) {
this.database = database;
return this;
}
public int getDatabase() {
return database;
}
}

@ -35,6 +35,11 @@ public class MasterSlaveServersConfig extends BaseMasterSlaveServersConfig<Maste
*/
private List<URI> masterAddress;
/**
* Database index used for Redis connection
*/
private int database = 0;
public MasterSlaveServersConfig() {
}
@ -43,6 +48,7 @@ public class MasterSlaveServersConfig extends BaseMasterSlaveServersConfig<Maste
setLoadBalancer(config.getLoadBalancer());
setMasterAddress(config.getMasterAddress());
setSlaveAddresses(config.getSlaveAddresses());
setDatabase(config.getDatabase());
}
/**
@ -91,4 +97,18 @@ public class MasterSlaveServersConfig extends BaseMasterSlaveServersConfig<Maste
this.slaveAddresses = readAddresses;
}
/**
* Database index used for Redis connection
* Default is <code>0</code>
*
* @param database
*/
public MasterSlaveServersConfig setDatabase(int database) {
this.database = database;
return this;
}
public int getDatabase() {
return database;
}
}

@ -27,6 +27,11 @@ public class SentinelServersConfig extends BaseMasterSlaveServersConfig<Sentinel
private String masterName;
/**
* Database index used for Redis connection
*/
private int database = 0;
public SentinelServersConfig() {
}
@ -34,8 +39,15 @@ public class SentinelServersConfig extends BaseMasterSlaveServersConfig<Sentinel
super(config);
setSentinelAddresses(config.getSentinelAddresses());
setMasterName(config.getMasterName());
setDatabase(config.getDatabase());
}
/**
* Master server name used by Redis Sentinel servers and master change monitoring task.
*
* @param masterName
* @return
*/
public SentinelServersConfig setMasterName(String masterName) {
this.masterName = masterName;
return this;
@ -44,6 +56,12 @@ public class SentinelServersConfig extends BaseMasterSlaveServersConfig<Sentinel
return masterName;
}
/**
* Add Redis Sentinel node address in host:port format. Multiple nodes at once could be added.
*
* @param addresses
* @return
*/
public SentinelServersConfig addSentinelAddress(String ... addresses) {
for (String address : addresses) {
sentinelAddresses.add(URIBuilder.create(address));
@ -57,4 +75,18 @@ public class SentinelServersConfig extends BaseMasterSlaveServersConfig<Sentinel
this.sentinelAddresses = sentinelAddresses;
}
/**
* Database index used for Redis connection
* Default is <code>0</code>
*
* @param database
*/
public SentinelServersConfig setDatabase(int database) {
this.database = database;
return this;
}
public int getDatabase() {
return database;
}
}

@ -50,6 +50,10 @@ public class SingleServerConfig extends BaseConfig<SingleServerConfig> {
*/
private int connectionPoolSize = 100;
/**
* Database index used for Redis connection
*/
private int database = 0;
/**
* Should the server address be monitored for changes in DNS? Useful for
@ -77,6 +81,7 @@ public class SingleServerConfig extends BaseConfig<SingleServerConfig> {
setDnsMonitoringInterval(config.getDnsMonitoringInterval());
setSubscriptionConnectionMinimumIdleSize(config.getSubscriptionConnectionMinimumIdleSize());
setConnectionMinimumIdleSize(config.getConnectionMinimumIdleSize());
setDatabase(config.getDatabase());
}
/**
@ -191,4 +196,18 @@ public class SingleServerConfig extends BaseConfig<SingleServerConfig> {
return connectionMinimumIdleSize;
}
/**
* Database index used for Redis connection
* Default is <code>0</code>
*
* @param database
*/
public SingleServerConfig setDatabase(int database) {
this.database = database;
return this;
}
public int getDatabase() {
return database;
}
}

@ -51,7 +51,7 @@ public interface ConnectionManager {
boolean isShuttingDown();
Promise<PubSubConnectionEntry> subscribe(Codec codec, String channelName, RedisPubSubListener listener);
Promise<PubSubConnectionEntry> subscribe(Codec codec, String channelName, RedisPubSubListener<?> listener);
ConnectionInitializer getConnectListener();

@ -21,8 +21,10 @@ import java.util.Map;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicReference;
import org.redisson.BaseMasterSlaveServersConfig;
import org.redisson.Config;
import org.redisson.ElasticacheServersConfig;
import org.redisson.MasterSlaveServersConfig;
import org.redisson.client.RedisClient;
import org.redisson.client.RedisConnection;
import org.redisson.client.RedisConnectionException;
@ -93,6 +95,13 @@ public class ElasticacheConnectionManager extends MasterSlaveConnectionManager {
monitorRoleChange(cfg);
}
@Override
protected MasterSlaveServersConfig create(BaseMasterSlaveServersConfig<?> cfg) {
MasterSlaveServersConfig res = super.create(cfg);
res.setDatabase(((ElasticacheServersConfig)cfg).getDatabase());
return res;
}
private RedisConnection connect(ElasticacheServersConfig cfg, URI addr) {
RedisConnection connection = nodeConnections.get(addr);
if (connection != null) {

@ -23,6 +23,7 @@ import java.util.Map;
import java.util.concurrent.ConcurrentMap;
import java.util.concurrent.atomic.AtomicReference;
import org.redisson.BaseMasterSlaveServersConfig;
import org.redisson.Config;
import org.redisson.MasterSlaveServersConfig;
import org.redisson.ReadMode;
@ -331,6 +332,13 @@ public class SentinelConnectionManager extends MasterSlaveConnectionManager {
}
}
@Override
protected MasterSlaveServersConfig create(BaseMasterSlaveServersConfig<?> cfg) {
MasterSlaveServersConfig res = super.create(cfg);
res.setDatabase(((SentinelServersConfig)cfg).getDatabase());
return res;
}
@Override
public void shutdown() {
super.shutdown();

Loading…
Cancel
Save