Skip to content

Commit 650a970

Browse files
author
dengliming
authored
Add support for local addr in CLIENT KILL (#2478)
* Add support for local addr in CLIENT KILL * test
1 parent dd98ec2 commit 650a970

File tree

2 files changed

+23
-0
lines changed

2 files changed

+23
-0
lines changed

src/main/java/redis/clients/jedis/params/ClientKillParams.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ public class ClientKillParams extends Params {
77
private static final String ADDR = "ADDR";
88
private static final String SKIPME = "SKIPME";
99
private static final String USER = "USER";
10+
private static final String LADDR = "LADDR";
1011

1112
public static enum Type {
1213
NORMAL, MASTER, SLAVE, PUBSUB;
@@ -63,4 +64,13 @@ public ClientKillParams user(String username) {
6364
return this;
6465
}
6566

67+
public ClientKillParams laddr(String ipPort) {
68+
addParam(LADDR, ipPort);
69+
return this;
70+
}
71+
72+
public ClientKillParams laddr(String ip, int port) {
73+
addParam(LADDR, ip + ':' + port);
74+
return this;
75+
}
6676
}

src/test/java/redis/clients/jedis/tests/commands/ClientCommandsTest.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -190,6 +190,19 @@ public void killAddrBinary() {
190190
assertDisconnected(client);
191191
}
192192

193+
@Test
194+
public void killLAddr() {
195+
String info = findInClientList();
196+
Matcher matcher = Pattern.compile("\\bladdr=(\\S+)\\b").matcher(info);
197+
matcher.find();
198+
String laddr = matcher.group(1);
199+
200+
long clients = jedis.clientKill(new ClientKillParams().laddr(laddr));
201+
assertTrue(clients >= 1);
202+
203+
assertDisconnected(client);
204+
}
205+
193206
@Test
194207
public void killAddrIpPort() {
195208
String info = findInClientList();

0 commit comments

Comments
 (0)