(client.getBinaryMultiBulkReply());
+ }
+
+ @Override
+ public Long zremrangeByLex(final byte[] key, final byte[] min, final byte[] max) {
+ checkIsInMulti();
+ client.zremrangeByLex(key, min, max);
+ return client.getIntegerReply();
+ }
+
/**
* Synchronously save the DB on disk.
*
@@ -3385,11 +3447,6 @@ public class BinaryJedis implements BasicCommands, BinaryJedisCommands,
return client.getStatusCodeReply();
}
- @Deprecated
- public Long pexpire(final byte[] key, final int milliseconds) {
- return pexpire(key, (long) milliseconds);
- }
-
public Long pexpire(final byte[] key, final long milliseconds) {
checkIsInMulti();
client.pexpire(key, milliseconds);
diff --git a/src/main/java/redis/clients/jedis/BinaryJedisCommands.java b/src/main/java/redis/clients/jedis/BinaryJedisCommands.java
index ada68c2..164c71c 100644
--- a/src/main/java/redis/clients/jedis/BinaryJedisCommands.java
+++ b/src/main/java/redis/clients/jedis/BinaryJedisCommands.java
@@ -115,6 +115,8 @@ public interface BinaryJedisCommands {
byte[] srandmember(byte[] key);
+ List srandmember(final byte[] key, final int count);
+
Long strlen(byte[] key);
Long zadd(byte[] key, double score, byte[] member);
@@ -194,6 +196,15 @@ public interface BinaryJedisCommands {
Long zremrangeByScore(byte[] key, double start, double end);
Long zremrangeByScore(byte[] key, byte[] start, byte[] end);
+
+ Long zlexcount(final byte[] key, final byte[] min, final byte[] max);
+
+ Set zrangeByLex(final byte[] key, final byte[] min, final byte[] max);
+
+ Set zrangeByLex(final byte[] key, final byte[] min, final byte[] max,
+ int offset, int count);
+
+ Long zremrangeByLex(final byte[] key, final byte[] min, final byte[] max);
Long linsert(byte[] key, Client.LIST_POSITION where, byte[] pivot,
byte[] value);
diff --git a/src/main/java/redis/clients/jedis/BinaryRedisPipeline.java b/src/main/java/redis/clients/jedis/BinaryRedisPipeline.java
index 5ce2ca5..98ebc73 100644
--- a/src/main/java/redis/clients/jedis/BinaryRedisPipeline.java
+++ b/src/main/java/redis/clients/jedis/BinaryRedisPipeline.java
@@ -34,7 +34,7 @@ public interface BinaryRedisPipeline {
Response getSet(byte[] key, byte[] value);
- Response getrange(byte[] key, long startOffset, long endOffset);
+ Response getrange(byte[] key, long startOffset, long endOffset);
Response hdel(byte[] key, byte[]... field);
@@ -206,6 +206,15 @@ public interface BinaryRedisPipeline {
Response zrevrank(byte[] key, byte[] member);
Response zscore(byte[] key, byte[] member);
+
+ Response zlexcount(final byte[] key, final byte[] min, final byte[] max);
+
+ Response> zrangeByLex(final byte[] key, final byte[] max, final byte[] min);
+
+ Response> zrangeByLex(final byte[] key, final byte[] max, final byte[] min,
+ int offset, int count);
+
+ Response zremrangeByLex(final byte[] key, final byte[] min, final byte[] max);
Response bitcount(byte[] key);
diff --git a/src/main/java/redis/clients/jedis/BinaryShardedJedis.java b/src/main/java/redis/clients/jedis/BinaryShardedJedis.java
index 77695e7..c34a574 100644
--- a/src/main/java/redis/clients/jedis/BinaryShardedJedis.java
+++ b/src/main/java/redis/clients/jedis/BinaryShardedJedis.java
@@ -300,6 +300,12 @@ public class BinaryShardedJedis extends Sharded
return j.srandmember(key);
}
+ @Override
+ public List srandmember(byte[] key, int count) {
+ Jedis j = getShard(key);
+ return j.srandmember(key, count);
+ }
+
public Long zadd(byte[] key, double score, byte[] member) {
Jedis j = getShard(key);
return j.zadd(key, score, member);
@@ -484,6 +490,31 @@ public class BinaryShardedJedis extends Sharded
Jedis j = getShard(key);
return j.zremrangeByScore(key, start, end);
}
+
+ @Override
+ public Long zlexcount(final byte[] key, final byte[] min, final byte[] max) {
+ Jedis j = getShard(key);
+ return j.zlexcount(key, min, max);
+ }
+
+ @Override
+ public Set zrangeByLex(final byte[] key, final byte[] min, final byte[] max) {
+ Jedis j = getShard(key);
+ return j.zrangeByLex(key, min, max);
+ }
+
+ @Override
+ public Set zrangeByLex(final byte[] key, final byte[] min, final byte[] max,
+ final int offset, final int count) {
+ Jedis j = getShard(key);
+ return j.zrangeByLex(key, min, max, offset, count);
+ }
+
+ @Override
+ public Long zremrangeByLex(final byte[] key, final byte[] min, final byte[] max) {
+ Jedis j = getShard(key);
+ return j.zremrangeByLex(key, min, max);
+ }
public Long linsert(byte[] key, LIST_POSITION where, byte[] pivot,
byte[] value) {
diff --git a/src/main/java/redis/clients/jedis/BuilderFactory.java b/src/main/java/redis/clients/jedis/BuilderFactory.java
index 76d013e..8c119b6 100755
--- a/src/main/java/redis/clients/jedis/BuilderFactory.java
+++ b/src/main/java/redis/clients/jedis/BuilderFactory.java
@@ -9,6 +9,7 @@ import java.util.List;
import java.util.Map;
import java.util.Set;
+import redis.clients.util.JedisByteHashMap;
import redis.clients.util.SafeEncoder;
public class BuilderFactory {
@@ -104,6 +105,26 @@ public class BuilderFactory {
};
+ public static final Builder