From 5ad02d083a753e63e692ce31b893cf1179d206f3 Mon Sep 17 00:00:00 2001 From: Hisham Mardam-Bey Date: Fri, 10 Jun 2011 17:08:10 -0400 Subject: [PATCH] Added string argument versions of zrange functions that can use -inf and +inf. Also added byte array versions where missing to make the API more complete. --- .../redis/clients/jedis/BinaryClient.java | 122 +++++++++++++++++- 1 file changed, 117 insertions(+), 5 deletions(-) diff --git a/src/main/java/redis/clients/jedis/BinaryClient.java b/src/main/java/redis/clients/jedis/BinaryClient.java index 348160b..c982151 100644 --- a/src/main/java/redis/clients/jedis/BinaryClient.java +++ b/src/main/java/redis/clients/jedis/BinaryClient.java @@ -503,6 +503,14 @@ public class BinaryClient extends Connection { sendCommand(ZCOUNT, key, byteArrayMin, byteArrayMax); } + public void zcount(final byte[] key, final byte min[], final byte max[]) { + sendCommand(ZCOUNT, key, min, max); + } + + public void zcount(final byte[] key, final String min, final String max) { + sendCommand(ZCOUNT, key, min.getBytes(), max.getBytes()); + } + public void zrangeByScore(final byte[] key, final double min, final double max) { @@ -512,6 +520,16 @@ public class BinaryClient extends Connection { sendCommand(ZRANGEBYSCORE, key, byteArrayMin, byteArrayMax); } + public void zrangeByScore(final byte[] key, final byte[] min, + final byte[] max) { + sendCommand(ZRANGEBYSCORE, key, min, max); + } + + public void zrangeByScore(final byte[] key, final String min, + final String max) { + sendCommand(ZRANGEBYSCORE, key, min.getBytes(), max.getBytes()); + } + public void zrevrangeByScore(final byte[] key, final double max, final double min) { @@ -521,16 +539,16 @@ public class BinaryClient extends Connection { sendCommand(ZREVRANGEBYSCORE, key, byteArrayMax, byteArrayMin); } - public void zrangeByScore(final byte[] key, final byte[] min, - final byte[] max) { - sendCommand(ZRANGEBYSCORE, key, min, max); - } - public void zrevrangeByScore(final byte[] key, final byte[] max, final byte[] min) { sendCommand(ZREVRANGEBYSCORE, key, max, min); } + public void zrevrangeByScore(final byte[] key, final String max, + final String min) { + sendCommand(ZREVRANGEBYSCORE, key, max.getBytes(), min.getBytes()); + } + public void zrangeByScore(final byte[] key, final double min, final double max, final int offset, int count) { @@ -541,6 +559,20 @@ public class BinaryClient extends Connection { LIMIT.raw, toByteArray(offset), toByteArray(count)); } + public void zrangeByScore(final byte[] key, final byte min[], + final byte max[], final int offset, int count) { + + sendCommand(ZRANGEBYSCORE, key, min, max, + LIMIT.raw, toByteArray(offset), toByteArray(count)); + } + + public void zrangeByScore(final byte[] key, final String min, + final String max, final int offset, int count) { + + sendCommand(ZRANGEBYSCORE, key, min.getBytes(), max.getBytes(), + LIMIT.raw, toByteArray(offset), toByteArray(count)); + } + public void zrevrangeByScore(final byte[] key, final double max, final double min, final int offset, int count) { @@ -551,6 +583,20 @@ public class BinaryClient extends Connection { LIMIT.raw, toByteArray(offset), toByteArray(count)); } + public void zrevrangeByScore(final byte[] key, final byte max[], + final byte min[], final int offset, int count) { + + sendCommand(ZREVRANGEBYSCORE, key, max, min, + LIMIT.raw, toByteArray(offset), toByteArray(count)); + } + + public void zrevrangeByScore(final byte[] key, final String max, + final String min, final int offset, int count) { + + sendCommand(ZREVRANGEBYSCORE, key, max.getBytes(), min.getBytes(), + LIMIT.raw, toByteArray(offset), toByteArray(count)); + } + public void zrangeByScoreWithScores(final byte[] key, final double min, final double max) { @@ -561,6 +607,20 @@ public class BinaryClient extends Connection { WITHSCORES.raw); } + public void zrangeByScoreWithScores(final byte[] key, final byte min[], + final byte max[]) { + + sendCommand(ZRANGEBYSCORE, key, min, max, + WITHSCORES.raw); + } + + public void zrangeByScoreWithScores(final byte[] key, final String min, + final String max) { + + sendCommand(ZRANGEBYSCORE, key, min.getBytes(), max.getBytes(), + WITHSCORES.raw); + } + public void zrevrangeByScoreWithScores(final byte[] key, final double max, final double min) { @@ -571,6 +631,18 @@ public class BinaryClient extends Connection { WITHSCORES.raw); } + public void zrevrangeByScoreWithScores(final byte[] key, final byte max[], + final byte min[]) { + sendCommand(ZREVRANGEBYSCORE, key, max, min, + WITHSCORES.raw); + } + + public void zrevrangeByScoreWithScores(final byte[] key, final String max, + final String min) { + sendCommand(ZREVRANGEBYSCORE, key, max.getBytes(), min.getBytes(), + WITHSCORES.raw); + } + public void zrangeByScoreWithScores(final byte[] key, final double min, final double max, final int offset, final int count) { @@ -582,6 +654,20 @@ public class BinaryClient extends Connection { WITHSCORES.raw); } + public void zrangeByScoreWithScores(final byte[] key, final byte min[], + final byte max[], final int offset, final int count) { + sendCommand(ZRANGEBYSCORE, key, min, max, + LIMIT.raw, toByteArray(offset), toByteArray(count), + WITHSCORES.raw); + } + + public void zrangeByScoreWithScores(final byte[] key, final String min, + final String max, final int offset, final int count) { + sendCommand(ZRANGEBYSCORE, key, min.getBytes(), max.getBytes(), + LIMIT.raw, toByteArray(offset), toByteArray(count), + WITHSCORES.raw); + } + public void zrevrangeByScoreWithScores(final byte[] key, final double max, final double min, final int offset, final int count) { @@ -593,6 +679,22 @@ public class BinaryClient extends Connection { WITHSCORES.raw); } + public void zrevrangeByScoreWithScores(final byte[] key, final byte max[], + final byte min[], final int offset, final int count) { + + sendCommand(ZREVRANGEBYSCORE, key, max, min, + LIMIT.raw, toByteArray(offset), toByteArray(count), + WITHSCORES.raw); + } + + public void zrevrangeByScoreWithScores(final byte[] key, final String max, + final String min, final int offset, final int count) { + + sendCommand(ZREVRANGEBYSCORE, key, max.getBytes(), min.getBytes(), + LIMIT.raw, toByteArray(offset), toByteArray(count), + WITHSCORES.raw); + } + public void zremrangeByRank(final byte[] key, final int start, final int end) { sendCommand(ZREMRANGEBYRANK, key, toByteArray(start), toByteArray(end)); } @@ -602,6 +704,16 @@ public class BinaryClient extends Connection { sendCommand(ZREMRANGEBYSCORE, key, toByteArray(start), toByteArray(end)); } + public void zremrangeByScore(final byte[] key, final byte start[], + final byte end[]) { + sendCommand(ZREMRANGEBYSCORE, key, start, end); + } + + public void zremrangeByScore(final byte[] key, final String start, + final String end) { + sendCommand(ZREMRANGEBYSCORE, key, start.getBytes(), end.getBytes()); + } + public void zunionstore(final byte[] dstkey, final byte[]... sets) { final byte[][] params = new byte[sets.length + 2][]; params[0] = dstkey;