Add CLUSTER MEET command
This commit is contained in:
@@ -808,10 +808,10 @@ public class Client extends BinaryClient implements Commands {
|
||||
hincrByFloat(SafeEncoder.encode(key), SafeEncoder.encode(field), increment);
|
||||
}
|
||||
|
||||
public void cluster(final String... args) {
|
||||
public void cluster(final Object... args) {
|
||||
final byte[][] arg = new byte[args.length][];
|
||||
for (int i = 0; i < arg.length; i++) {
|
||||
arg[i] = SafeEncoder.encode(args[i]);
|
||||
arg[i] = SafeEncoder.encode(args[i].toString());
|
||||
}
|
||||
cluster(arg);
|
||||
}
|
||||
|
||||
@@ -3082,4 +3082,10 @@ public class Jedis extends BinaryJedis implements JedisCommands, MultiKeyCommand
|
||||
client.cluster(Protocol.CLUSTER_NODES);
|
||||
return client.getBulkReply();
|
||||
}
|
||||
|
||||
public String clusterMeet(final String ip, final int port) {
|
||||
checkIsInMulti();
|
||||
client.cluster(Protocol.CLUSTER_MEET, ip, port);
|
||||
return client.getStatusCodeReply();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -31,6 +31,7 @@ public final class Protocol {
|
||||
public static final String SENTINEL_SLAVES = "slaves";
|
||||
|
||||
public static final String CLUSTER_NODES = "nodes";
|
||||
public static final String CLUSTER_MEET = "meet";
|
||||
|
||||
private Protocol() {
|
||||
// this prevent the class from instantiation
|
||||
|
||||
@@ -13,10 +13,11 @@ public class ClusterCommandsTest extends JedisTestBase {
|
||||
private Jedis node1;
|
||||
private Jedis node2;
|
||||
|
||||
private HostAndPort nodeInfo1 = HostAndPortUtil.getClusterServers().get(0);
|
||||
private HostAndPort nodeInfo2 = HostAndPortUtil.getClusterServers().get(1);
|
||||
|
||||
@Before
|
||||
public void setUp() throws Exception {
|
||||
HostAndPort nodeInfo1 = HostAndPortUtil.getClusterServers().get(0);
|
||||
HostAndPort nodeInfo2 = HostAndPortUtil.getClusterServers().get(1);
|
||||
|
||||
node1 = new Jedis(nodeInfo1.getHost(), nodeInfo1.getPort());
|
||||
node1.connect();
|
||||
@@ -36,6 +37,12 @@ public class ClusterCommandsTest extends JedisTestBase {
|
||||
@Test
|
||||
public void clusterNodes() {
|
||||
String nodes = node1.clusterNodes();
|
||||
assertEquals(1, nodes.split("\n").length);
|
||||
assertTrue(nodes.split("\n").length > 0);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void clusterMeet() {
|
||||
String status = node1.clusterMeet("127.0.0.1", nodeInfo2.getPort());
|
||||
assertEquals("OK", status);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user