public class JedisClusterInfoCache
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
static ClusterNodeInformationParser |
nodeInfoParser |
private java.util.Map<java.lang.String,JedisPool> |
nodes |
private org.apache.commons.pool2.impl.GenericObjectPoolConfig |
poolConfig |
private java.util.concurrent.locks.Lock |
r |
private java.util.concurrent.locks.ReentrantReadWriteLock |
rwl |
private java.util.Map<java.lang.Integer,JedisPool> |
slots |
private int |
timeout |
private java.util.concurrent.locks.Lock |
w |
| Constructor and Description |
|---|
JedisClusterInfoCache(org.apache.commons.pool2.impl.GenericObjectPoolConfig poolConfig,
int timeout) |
| Modifier and Type | Method and Description |
|---|---|
void |
assignSlotsToNode(java.util.List<java.lang.Integer> targetSlots,
HostAndPort targetNode) |
void |
assignSlotToNode(int slot,
HostAndPort targetNode) |
void |
discoverClusterNodesAndSlots(Jedis jedis) |
void |
discoverClusterSlots(Jedis jedis) |
private HostAndPort |
generateHostAndPort(java.util.List<java.lang.Object> hostInfos) |
private java.util.List<java.lang.Integer> |
getAssignedSlotArray(java.util.List<java.lang.Object> slotInfo) |
JedisPool |
getNode(java.lang.String nodeKey) |
static java.lang.String |
getNodeKey(Client client) |
static java.lang.String |
getNodeKey(HostAndPort hnp) |
static java.lang.String |
getNodeKey(Jedis jedis) |
java.util.Map<java.lang.String,JedisPool> |
getNodes() |
JedisPool |
getSlotPool(int slot) |
void |
setNodeIfNotExist(HostAndPort node) |
public static final ClusterNodeInformationParser nodeInfoParser
private java.util.Map<java.lang.String,JedisPool> nodes
private java.util.Map<java.lang.Integer,JedisPool> slots
private final java.util.concurrent.locks.ReentrantReadWriteLock rwl
private final java.util.concurrent.locks.Lock r
private final java.util.concurrent.locks.Lock w
private final org.apache.commons.pool2.impl.GenericObjectPoolConfig poolConfig
private int timeout
public JedisClusterInfoCache(org.apache.commons.pool2.impl.GenericObjectPoolConfig poolConfig,
int timeout)
public void discoverClusterNodesAndSlots(Jedis jedis)
public void discoverClusterSlots(Jedis jedis)
private HostAndPort generateHostAndPort(java.util.List<java.lang.Object> hostInfos)
public void setNodeIfNotExist(HostAndPort node)
public void assignSlotToNode(int slot,
HostAndPort targetNode)
public void assignSlotsToNode(java.util.List<java.lang.Integer> targetSlots,
HostAndPort targetNode)
public JedisPool getNode(java.lang.String nodeKey)
public JedisPool getSlotPool(int slot)
public java.util.Map<java.lang.String,JedisPool> getNodes()
public static java.lang.String getNodeKey(HostAndPort hnp)
public static java.lang.String getNodeKey(Client client)
public static java.lang.String getNodeKey(Jedis jedis)
private java.util.List<java.lang.Integer> getAssignedSlotArray(java.util.List<java.lang.Object> slotInfo)