diff --git a/src/main/java/redis/clients/jedis/params/ClientKillParams.java b/src/main/java/redis/clients/jedis/params/ClientKillParams.java index 7b6c6a1a35..89a3e576fa 100644 --- a/src/main/java/redis/clients/jedis/params/ClientKillParams.java +++ b/src/main/java/redis/clients/jedis/params/ClientKillParams.java @@ -7,6 +7,7 @@ public class ClientKillParams extends Params { private static final String ADDR = "ADDR"; private static final String SKIPME = "SKIPME"; private static final String USER = "USER"; + private static final String LADDR = "LADDR"; public static enum Type { NORMAL, MASTER, SLAVE, PUBSUB; @@ -63,4 +64,13 @@ public ClientKillParams user(String username) { return this; } + public ClientKillParams laddr(String ipPort) { + addParam(LADDR, ipPort); + return this; + } + + public ClientKillParams laddr(String ip, int port) { + addParam(LADDR, ip + ':' + port); + return this; + } } diff --git a/src/test/java/redis/clients/jedis/tests/commands/ClientCommandsTest.java b/src/test/java/redis/clients/jedis/tests/commands/ClientCommandsTest.java index b7fd128229..26c8c6b860 100644 --- a/src/test/java/redis/clients/jedis/tests/commands/ClientCommandsTest.java +++ b/src/test/java/redis/clients/jedis/tests/commands/ClientCommandsTest.java @@ -190,6 +190,19 @@ public void killAddrBinary() { assertDisconnected(client); } + @Test + public void killLAddr() { + String info = findInClientList(); + Matcher matcher = Pattern.compile("\\bladdr=(\\S+)\\b").matcher(info); + matcher.find(); + String laddr = matcher.group(1); + + long clients = jedis.clientKill(new ClientKillParams().laddr(laddr)); + assertTrue(clients >= 1); + + assertDisconnected(client); + } + @Test public void killAddrIpPort() { String info = findInClientList();