Class RedisStaticMasterReplicaConfiguration
java.lang.Object
org.springframework.data.redis.connection.RedisStaticMasterReplicaConfiguration
- All Implemented Interfaces:
RedisConfiguration,RedisConfiguration.StaticMasterReplicaConfiguration,RedisConfiguration.WithAuthentication,RedisConfiguration.WithDatabaseIndex,RedisConfiguration.WithPassword
public class RedisStaticMasterReplicaConfiguration
extends Object
implements RedisConfiguration, RedisConfiguration.StaticMasterReplicaConfiguration
Configuration class used for setting up
RedisConnection via RedisConnectionFactory using the provided
Master / Replica configuration to nodes know to not change address. Useful when connecting to
AWS ElastiCache with Read Replicas.
A Master/Replica connection cannot be used for Pub/Sub operations as Pub/Sub messages are not broadcasted across
replicas. Pub/Sub broadcasting is only available using Redis Cluster.
- Since:
- 2.1
- Author:
- Mark Paluch, Christoph Strobl, Tamer Soliman
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.springframework.data.redis.connection.RedisConfiguration
RedisConfiguration.ClusterConfiguration, RedisConfiguration.DomainSocketConfiguration, RedisConfiguration.SentinelConfiguration, RedisConfiguration.StaticMasterReplicaConfiguration, RedisConfiguration.WithAuthentication, RedisConfiguration.WithDatabaseIndex, RedisConfiguration.WithDomainSocket, RedisConfiguration.WithHostAndPort, RedisConfiguration.WithPassword -
Constructor Summary
ConstructorsConstructorDescriptionCreate a new defaultRedisStaticMasterReplicaConfiguration.RedisStaticMasterReplicaConfiguration(String hostName) Create a newStaticMasterReplicaConfigurationgivenhostName.RedisStaticMasterReplicaConfiguration(String hostName, int port) Create a newStaticMasterReplicaConfigurationgivenhostNameandport. -
Method Summary
Modifier and TypeMethodDescriptionvoidAdd anodeto the list of nodes givenhostName.booleanintGet the database index to use.getNodes()Get the RedisPassword to use when connecting.@Nullable StringGet the username to use when connecting.inthashCode()Add anodeto the list of nodes givenhostName.voidsetDatabase(int index) Set the database index to use.voidsetPassword(RedisPassword password) Create and set aRedisPasswordfor givenString.voidsetUsername(@Nullable String username) Create and set a username with the givenString.Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.springframework.data.redis.connection.RedisConfiguration
getDatabaseOrElse, getPasswordOrElseMethods inherited from interface org.springframework.data.redis.connection.RedisConfiguration.WithAuthentication
setPassword, setPassword
-
Constructor Details
-
RedisStaticMasterReplicaConfiguration
public RedisStaticMasterReplicaConfiguration()Create a new defaultRedisStaticMasterReplicaConfiguration.- Since:
- 4.0
-
RedisStaticMasterReplicaConfiguration
Create a newStaticMasterReplicaConfigurationgivenhostName.- Parameters:
hostName- must not be null or empty.
-
RedisStaticMasterReplicaConfiguration
Create a newStaticMasterReplicaConfigurationgivenhostNameandport.- Parameters:
hostName- must not be null or empty.port- a valid TCP port (1-65535).
-
-
Method Details
-
addNode
Add anodeto the list of nodes givenhostName.- Parameters:
hostName- must not be null or empty.port- a valid TCP port (1-65535).
-
node
Add anodeto the list of nodes givenhostName.- Parameters:
hostName- must not be null or empty.- Returns:
thisStaticMasterReplicaConfiguration.
-
node
- Parameters:
hostName- must not be null or empty.port- a valid TCP port (1-65535).- Returns:
thisStaticMasterReplicaConfiguration.
-
getDatabase
public int getDatabase()Description copied from interface:RedisConfiguration.WithDatabaseIndexGet the database index to use.- Specified by:
getDatabasein interfaceRedisConfiguration.WithDatabaseIndex- Returns:
zeroby default.
-
setDatabase
public void setDatabase(int index) Description copied from interface:RedisConfiguration.WithDatabaseIndexSet the database index to use.- Specified by:
setDatabasein interfaceRedisConfiguration.WithDatabaseIndex
-
setUsername
Description copied from interface:RedisConfiguration.WithAuthenticationCreate and set a username with the givenString. Requires Redis 6 or newer.- Specified by:
setUsernamein interfaceRedisConfiguration.WithAuthentication- Parameters:
username- the username.
-
getUsername
Description copied from interface:RedisConfiguration.WithAuthenticationGet the username to use when connecting.- Specified by:
getUsernamein interfaceRedisConfiguration.WithAuthentication- Returns:
- null if none set.
-
getPassword
Description copied from interface:RedisConfiguration.WithAuthenticationGet the RedisPassword to use when connecting.- Specified by:
getPasswordin interfaceRedisConfiguration.WithAuthentication- Returns:
RedisPassword.none()if none set.
-
setPassword
Description copied from interface:RedisConfiguration.WithAuthenticationCreate and set aRedisPasswordfor givenString.- Specified by:
setPasswordin interfaceRedisConfiguration.WithAuthentication- Parameters:
password- must not be null useRedisPassword.none()instead.
-
getNodes
- Specified by:
getNodesin interfaceRedisConfiguration.StaticMasterReplicaConfiguration- Returns:
- unmodifiable
Listofnodes.
-
equals
-
hashCode
public int hashCode()
-