Skip to content

Commit 50e8d34

Browse files
committed
Merge pull request #1115 from ricardorames/master
Add constructors in JedisCluster for just one node
2 parents f9f8a13 + 117192a commit 50e8d34

File tree

2 files changed

+41
-1
lines changed

2 files changed

+41
-1
lines changed

src/main/java/redis/clients/jedis/JedisCluster.java

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import redis.clients.jedis.commands.MultiKeyJedisClusterCommands;
99
import redis.clients.util.KeyMergeUtil;
1010

11+
import java.util.Collections;
1112
import java.util.List;
1213
import java.util.Map;
1314
import java.util.Map.Entry;
@@ -23,6 +24,36 @@ public static enum Reset {
2324
SOFT, HARD
2425
}
2526

27+
public JedisCluster(HostAndPort node) {
28+
this(Collections.singleton(node), DEFAULT_TIMEOUT);
29+
}
30+
31+
public JedisCluster(HostAndPort node, int timeout) {
32+
this(Collections.singleton(node), timeout, DEFAULT_MAX_REDIRECTIONS);
33+
}
34+
35+
public JedisCluster(HostAndPort node, int timeout, int maxRedirections) {
36+
this(Collections.singleton(node), timeout, maxRedirections, new GenericObjectPoolConfig());
37+
}
38+
39+
public JedisCluster(HostAndPort node, final GenericObjectPoolConfig poolConfig) {
40+
this(Collections.singleton(node), DEFAULT_TIMEOUT, DEFAULT_MAX_REDIRECTIONS, poolConfig);
41+
}
42+
43+
public JedisCluster(HostAndPort node, int timeout, final GenericObjectPoolConfig poolConfig) {
44+
this(Collections.singleton(node), timeout, DEFAULT_MAX_REDIRECTIONS, poolConfig);
45+
}
46+
47+
public JedisCluster(HostAndPort node, int timeout, int maxRedirections,
48+
final GenericObjectPoolConfig poolConfig) {
49+
this(Collections.singleton(node), timeout, maxRedirections, poolConfig);
50+
}
51+
52+
public JedisCluster(HostAndPort node, int connectionTimeout, int soTimeout,
53+
int maxRedirections, final GenericObjectPoolConfig poolConfig) {
54+
super(Collections.singleton(node), connectionTimeout, soTimeout, maxRedirections, poolConfig);
55+
}
56+
2657
public JedisCluster(Set<HostAndPort> nodes) {
2758
this(nodes, DEFAULT_TIMEOUT);
2859
}

src/test/java/redis/clients/jedis/tests/JedisClusterTest.java

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -127,8 +127,11 @@ public void testDiscoverNodesAutomatically() {
127127
jedisClusterNode.add(new HostAndPort("127.0.0.1", 7379));
128128
JedisCluster jc = new JedisCluster(jedisClusterNode);
129129
assertEquals(3, jc.getClusterNodes().size());
130+
131+
JedisCluster jc2 = new JedisCluster(new HostAndPort("127.0.0.1", 7379));
132+
assertEquals(3, jc2.getClusterNodes().size());
130133
}
131-
134+
132135
@Test
133136
public void testCalculateConnectionPerSlot() {
134137
Set<HostAndPort> jedisClusterNode = new HashSet<HostAndPort>();
@@ -138,6 +141,12 @@ public void testCalculateConnectionPerSlot() {
138141
jc.set("test", "test");
139142
assertEquals("bar", node3.get("foo"));
140143
assertEquals("test", node2.get("test"));
144+
145+
JedisCluster jc2 = new JedisCluster(new HostAndPort("127.0.0.1", 7379));
146+
jc2.set("foo", "bar");
147+
jc2.set("test", "test");
148+
assertEquals("bar", node3.get("foo"));
149+
assertEquals("test", node2.get("test"));
141150
}
142151

143152
@Test

0 commit comments

Comments
 (0)