From bf9bba6ef221d5e9cb73232ac75576e18710becd Mon Sep 17 00:00:00 2001 From: guycoleman Date: Tue, 4 Dec 2012 17:21:43 +0000 Subject: [PATCH] Extract string and binary common interfaces for Pipline and ShardedJedisPipeline. While I'm here add missing binary methods for some bit operations and fix return types for some sharded operations (e.g. getType) --- .../clients/jedis/BinaryRedisPipeline.java | 205 +++++ .../java/redis/clients/jedis/Pipeline.java | 92 ++- .../redis/clients/jedis/RedisPipeline.java | 184 +++++ .../clients/jedis/ShardedJedisPipeline.java | 725 +++++++++++++++++- 4 files changed, 1153 insertions(+), 53 deletions(-) create mode 100644 src/main/java/redis/clients/jedis/BinaryRedisPipeline.java create mode 100644 src/main/java/redis/clients/jedis/RedisPipeline.java diff --git a/src/main/java/redis/clients/jedis/BinaryRedisPipeline.java b/src/main/java/redis/clients/jedis/BinaryRedisPipeline.java new file mode 100644 index 0000000..24b6089 --- /dev/null +++ b/src/main/java/redis/clients/jedis/BinaryRedisPipeline.java @@ -0,0 +1,205 @@ +package redis.clients.jedis; + +import java.util.List; +import java.util.Map; +import java.util.Set; + +/** + * @author guy + */ +public interface BinaryRedisPipeline { + Response append(byte[] key, byte[] value); + + Response decr(byte[] key); + + Response decrBy(byte[] key, long integer); + + Response exists(byte[] key); + + Response expire(byte[] key, int seconds); + + Response expireAt(byte[] key, long unixTime); + + Response get(byte[] key); + + Response getbit(byte[] key, long offset); + + Response getSet(byte[] key, byte[] value); + + Response getrange(byte[] key, long startOffset, long endOffset); + + Response hdel(byte[] key, byte[] field); + + Response hexists(byte[] key, byte[] field); + + Response hget(byte[] key, byte[] field); + + Response> hgetAll(byte[] key); + + Response hincrBy(byte[] key, byte[] field, long value); + + Response> hkeys(byte[] key); + + Response hlen(byte[] key); + + Response> hmget(byte[] key, byte[]... fields); + + Response hmset(byte[] key, Map hash); + + Response hset(byte[] key, byte[] field, byte[] value); + + Response hsetnx(byte[] key, byte[] field, byte[] value); + + Response> hvals(byte[] key); + + Response incr(byte[] key); + + Response incrBy(byte[] key, long integer); + + Response lindex(byte[] key, int index); + + Response linsert(byte[] key, BinaryClient.LIST_POSITION where, + byte[] pivot, byte[] value); + + Response llen(byte[] key); + + Response lpop(byte[] key); + + Response lpush(byte[] key, byte[] string); + + Response lpushx(byte[] key, byte[] bytes); + + Response> lrange(byte[] key, long start, long end); + + Response lrem(byte[] key, long count, byte[] value); + + Response lset(byte[] key, long index, byte[] value); + + Response ltrim(byte[] key, long start, long end); + + Response persist(byte[] key); + + Response rpop(byte[] key); + + Response rpush(byte[] key, byte[] string); + + Response rpushx(byte[] key, byte[] string); + + Response sadd(byte[] key, byte[] member); + + Response scard(byte[] key); + + Response set(byte[] key, byte[] value); + + Response setbit(byte[] key, long offset, byte[] value); + + Response setrange(byte[] key, long offset, byte[] value); + + Response setex(byte[] key, int seconds, byte[] value); + + Response setnx(byte[] key, byte[] value); + + Response setrange(String key, long offset, String value); + + Response> smembers(byte[] key); + + Response sismember(byte[] key, byte[] member); + + Response sort(byte[] key); + + Response> sort(byte[] key, + SortingParams sortingParameters); + + Response spop(byte[] key); + + Response srandmember(byte[] key); + + Response srem(byte[] key, byte[] member); + + Response strlen(byte[] key); + + Response substr(byte[] key, int start, int end); + + Response ttl(byte[] key); + + Response type(byte[] key); + + Response zadd(byte[] key, double score, byte[] member); + + Response zcard(byte[] key); + + Response zcount(byte[] key, double min, double max); + + Response zincrby(byte[] key, double score, byte[] member); + + Response> zrange(byte[] key, int start, int end); + + Response> zrangeByScore(byte[] key, double min, + double max); + + Response> zrangeByScore(byte[] key, byte[] min, + byte[] max); + + Response> zrangeByScore(byte[] key, double min, + double max, int offset, int count); + + Response> zrangeByScore(byte[] key, byte[] min, + byte[] max, int offset, int count); + + Response> zrangeByScoreWithScores(byte[] key, double min, + double max); + + Response> zrangeByScoreWithScores(byte[] key, byte[] min, + byte[] max); + + Response> zrangeByScoreWithScores(byte[] key, double min, + double max, int offset, int count); + + Response> zrangeByScoreWithScores(byte[] key, byte[] min, + byte[] max, int offset, int count); + + Response> zrevrangeByScore(byte[] key, double max, + double min); + + Response> zrevrangeByScore(byte[] key, byte[] max, + byte[] min); + + Response> zrevrangeByScore(byte[] key, double max, + double min, int offset, int count); + + Response> zrevrangeByScore(byte[] key, byte[] max, + byte[] min, int offset, int count); + + Response> zrevrangeByScoreWithScores(byte[] key, + double max, double min); + + Response> zrevrangeByScoreWithScores(byte[] key, + byte[] max, byte[] min); + + Response> zrevrangeByScoreWithScores(byte[] key, + double max, double min, int offset, int count); + + Response> zrevrangeByScoreWithScores(byte[] key, + byte[] max, byte[] min, int offset, int count); + + Response> zrangeWithScores(byte[] key, int start, int end); + + Response zrank(byte[] key, byte[] member); + + Response zrem(byte[] key, byte[] member); + + Response zremrangeByRank(byte[] key, int start, int end); + + Response zremrangeByScore(byte[] key, double start, double end); + + Response zremrangeByScore(byte[] key, byte[] start, byte[] end); + + Response> zrevrange(byte[] key, int start, int end); + + Response> zrevrangeWithScores(byte[] key, int start, + int end); + + Response zrevrank(byte[] key, byte[] member); + + Response zscore(byte[] key, byte[] member); +} diff --git a/src/main/java/redis/clients/jedis/Pipeline.java b/src/main/java/redis/clients/jedis/Pipeline.java index d89efea..a85fceb 100644 --- a/src/main/java/redis/clients/jedis/Pipeline.java +++ b/src/main/java/redis/clients/jedis/Pipeline.java @@ -9,7 +9,7 @@ import java.util.Set; import redis.clients.jedis.BinaryClient.LIST_POSITION; import redis.clients.jedis.exceptions.JedisDataException; -public class Pipeline extends Queable { +public class Pipeline extends Queable implements BinaryRedisPipeline, RedisPipeline { private MultiResponseBuilder currentMulti; @@ -209,8 +209,13 @@ public class Pipeline extends Queable { return getResponse(BuilderFactory.BOOLEAN); } + public Response getbit(byte[] key, long offset) { + client.getbit(key, offset); + return getResponse(BuilderFactory.BOOLEAN); + } + public Response getrange(String key, long startOffset, - long endOffset) { + long endOffset) { client.getrange(key, startOffset, endOffset); return getResponse(BuilderFactory.STRING); } @@ -225,6 +230,11 @@ public class Pipeline extends Queable { return getResponse(BuilderFactory.BYTE_ARRAY); } + public Response getrange(byte[] key, long startOffset, long endOffset) { + client.getrange(key, startOffset, endOffset); + return getResponse(BuilderFactory.LONG); + } + public Response hdel(String key, String field) { client.hdel(key, field); return getResponse(BuilderFactory.LONG); @@ -386,13 +396,13 @@ public class Pipeline extends Queable { } public Response linsert(String key, LIST_POSITION where, - String pivot, String value) { + String pivot, String value) { client.linsert(key, where, pivot, value); return getResponse(BuilderFactory.LONG); } public Response linsert(byte[] key, LIST_POSITION where, - byte[] pivot, byte[] value) { + byte[] pivot, byte[] value) { client.linsert(key, where, pivot, value); return getResponse(BuilderFactory.LONG); } @@ -642,6 +652,11 @@ public class Pipeline extends Queable { return getResponse(BuilderFactory.BOOLEAN); } + public Response setbit(byte[] key, long offset, byte[] value) { + client.setbit(key, offset, value); + return getResponse(BuilderFactory.BOOLEAN); + } + public Response setex(String key, int seconds, String value) { client.setex(key, seconds, value); return getResponse(BuilderFactory.STRING); @@ -667,6 +682,11 @@ public class Pipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response setrange(byte[] key, long offset, byte[] value) { + client.setrange(key, offset, value); + return getResponse(BuilderFactory.LONG); + } + public Response> sinter(String... keys) { client.sinter(keys); return getResponse(BuilderFactory.STRING_SET); @@ -728,25 +748,25 @@ public class Pipeline extends Queable { } public Response> sort(String key, - SortingParams sortingParameters) { + SortingParams sortingParameters) { client.sort(key, sortingParameters); return getResponse(BuilderFactory.STRING_LIST); } public Response> sort(byte[] key, - SortingParams sortingParameters) { + SortingParams sortingParameters) { client.sort(key, sortingParameters); return getResponse(BuilderFactory.STRING_LIST); } public Response> sort(String key, - SortingParams sortingParameters, String dstkey) { + SortingParams sortingParameters, String dstkey) { client.sort(key, sortingParameters, dstkey); return getResponse(BuilderFactory.STRING_LIST); } public Response> sort(byte[] key, - SortingParams sortingParameters, byte[] dstkey) { + SortingParams sortingParameters, byte[] dstkey) { client.sort(key, sortingParameters, dstkey); return getResponse(BuilderFactory.STRING_LIST); } @@ -934,154 +954,154 @@ public class Pipeline extends Queable { } public Response> zrangeByScore(String key, double min, - double max) { + double max) { client.zrangeByScore(key, min, max); return getResponse(BuilderFactory.STRING_ZSET); } public Response> zrangeByScore(byte[] key, double min, - double max) { + double max) { return zrangeByScore(key, toByteArray(min), toByteArray(max)); } public Response> zrangeByScore(String key, String min, - String max) { + String max) { client.zrangeByScore(key, min, max); return getResponse(BuilderFactory.STRING_ZSET); } public Response> zrangeByScore(byte[] key, byte[] min, - byte[] max) { + byte[] max) { client.zrangeByScore(key, min, max); return getResponse(BuilderFactory.STRING_ZSET); } public Response> zrangeByScore(String key, double min, - double max, int offset, int count) { + double max, int offset, int count) { client.zrangeByScore(key, min, max, offset, count); return getResponse(BuilderFactory.STRING_ZSET); } public Response> zrangeByScore(byte[] key, double min, - double max, int offset, int count) { + double max, int offset, int count) { return zrangeByScore(key, toByteArray(min), toByteArray(max), offset, count); } public Response> zrangeByScore(byte[] key, byte[] min, - byte[] max, int offset, int count) { + byte[] max, int offset, int count) { client.zrangeByScore(key, min, max, offset, count); return getResponse(BuilderFactory.STRING_ZSET); } public Response> zrangeByScoreWithScores(String key, double min, - double max) { + double max) { client.zrangeByScoreWithScores(key, min, max); return getResponse(BuilderFactory.TUPLE_ZSET); } public Response> zrangeByScoreWithScores(byte[] key, double min, - double max) { + double max) { return zrangeByScoreWithScores(key, toByteArray(min), toByteArray(max)); } public Response> zrangeByScoreWithScores(byte[] key, byte[] min, - byte[] max) { + byte[] max) { client.zrangeByScoreWithScores(key, min, max); return getResponse(BuilderFactory.TUPLE_ZSET); } public Response> zrangeByScoreWithScores(String key, double min, - double max, int offset, int count) { + double max, int offset, int count) { client.zrangeByScoreWithScores(key, min, max, offset, count); return getResponse(BuilderFactory.TUPLE_ZSET); } public Response> zrangeByScoreWithScores(byte[] key, double min, - double max, int offset, int count) { + double max, int offset, int count) { client.zrangeByScoreWithScores(key, toByteArray(min), toByteArray(max), offset, count); return getResponse(BuilderFactory.TUPLE_ZSET); } public Response> zrangeByScoreWithScores(byte[] key, byte[] min, - byte[] max, int offset, int count) { + byte[] max, int offset, int count) { client.zrangeByScoreWithScores(key, min, max, offset, count); return getResponse(BuilderFactory.TUPLE_ZSET); } public Response> zrevrangeByScore(String key, double max, - double min) { + double min) { client.zrevrangeByScore(key, max, min); return getResponse(BuilderFactory.STRING_ZSET); } public Response> zrevrangeByScore(byte[] key, double max, - double min) { + double min) { client.zrevrangeByScore(key, toByteArray(max), toByteArray(min)); return getResponse(BuilderFactory.STRING_ZSET); } public Response> zrevrangeByScore(String key, String max, - String min) { + String min) { client.zrevrangeByScore(key, max, min); return getResponse(BuilderFactory.STRING_ZSET); } public Response> zrevrangeByScore(byte[] key, byte[] max, - byte[] min) { + byte[] min) { client.zrevrangeByScore(key, max, min); return getResponse(BuilderFactory.STRING_ZSET); } public Response> zrevrangeByScore(String key, double max, - double min, int offset, int count) { + double min, int offset, int count) { client.zrevrangeByScore(key, max, min, offset, count); return getResponse(BuilderFactory.STRING_ZSET); } public Response> zrevrangeByScore(byte[] key, double max, - double min, int offset, int count) { + double min, int offset, int count) { client.zrevrangeByScore(key, toByteArray(max), toByteArray(min), offset, count); return getResponse(BuilderFactory.STRING_ZSET); } public Response> zrevrangeByScore(byte[] key, byte[] max, - byte[] min, int offset, int count) { + byte[] min, int offset, int count) { client.zrevrangeByScore(key, max, min, offset, count); return getResponse(BuilderFactory.STRING_ZSET); } public Response> zrevrangeByScoreWithScores(String key, - double max, double min) { + double max, double min) { client.zrevrangeByScoreWithScores(key, max, min); return getResponse(BuilderFactory.TUPLE_ZSET); } public Response> zrevrangeByScoreWithScores(byte[] key, - double max, double min) { + double max, double min) { client.zrevrangeByScoreWithScores(key, toByteArray(max), toByteArray(min)); return getResponse(BuilderFactory.TUPLE_ZSET); } public Response> zrevrangeByScoreWithScores(byte[] key, - byte[] max, byte[] min) { + byte[] max, byte[] min) { client.zrevrangeByScoreWithScores(key, max, min); return getResponse(BuilderFactory.TUPLE_ZSET); } public Response> zrevrangeByScoreWithScores(String key, - double max, double min, int offset, int count) { + double max, double min, int offset, int count) { client.zrevrangeByScoreWithScores(key, max, min, offset, count); return getResponse(BuilderFactory.TUPLE_ZSET); } public Response> zrevrangeByScoreWithScores(byte[] key, - double max, double min, int offset, int count) { + double max, double min, int offset, int count) { client.zrevrangeByScoreWithScores(key, toByteArray(max), toByteArray(min), offset, count); return getResponse(BuilderFactory.TUPLE_ZSET); } public Response> zrevrangeByScoreWithScores(byte[] key, - byte[] max, byte[] min, int offset, int count) { + byte[] max, byte[] min, int offset, int count) { client.zrevrangeByScoreWithScores(key, max, min, offset, count); return getResponse(BuilderFactory.TUPLE_ZSET); } @@ -1152,13 +1172,13 @@ public class Pipeline extends Queable { } public Response> zrevrangeWithScores(String key, int start, - int end) { + int end) { client.zrevrangeWithScores(key, start, end); return getResponse(BuilderFactory.TUPLE_ZSET); } public Response> zrevrangeWithScores(byte[] key, int start, - int end) { + int end) { client.zrevrangeWithScores(key, start, end); return getResponse(BuilderFactory.TUPLE_ZSET); } diff --git a/src/main/java/redis/clients/jedis/RedisPipeline.java b/src/main/java/redis/clients/jedis/RedisPipeline.java new file mode 100644 index 0000000..ca3370e --- /dev/null +++ b/src/main/java/redis/clients/jedis/RedisPipeline.java @@ -0,0 +1,184 @@ +package redis.clients.jedis; + +import java.util.List; +import java.util.Map; +import java.util.Set; + +/** + * @author guy + */ +public interface RedisPipeline { + Response append(String key, String value); + + Response decr(String key); + + Response decrBy(String key, long integer); + + Response exists(String key); + + Response expire(String key, int seconds); + + Response expireAt(String key, long unixTime); + + Response get(String key); + + Response getbit(String key, long offset); + + + + Response getrange(String key, long startOffset, + long endOffset); + + Response getSet(String key, String value); + + Response hdel(String key, String field); + + Response hexists(String key, String field); + + Response hget(String key, String field); + + Response> hgetAll(String key); + + Response hincrBy(String key, String field, long value); + + Response> hkeys(String key); + + Response hlen(String key); + + Response> hmget(String key, String... fields); + + Response hmset(String key, Map hash); + + Response hset(String key, String field, String value); + + Response hsetnx(String key, String field, String value); + + Response> hvals(String key); + + Response incr(String key); + + Response incrBy(String key, long integer); + + Response lindex(String key, int index); + + Response linsert(String key, BinaryClient.LIST_POSITION where, + String pivot, String value); + + Response llen(String key); + + Response lpop(String key); + + Response lpush(String key, String string); + + Response lpushx(String key, String string); + + Response> lrange(String key, long start, long end); + + Response lrem(String key, long count, String value); + + Response lset(String key, long index, String value); + + Response ltrim(String key, long start, long end); + + Response persist(String key); + + Response rpop(String key); + + Response rpush(String key, String string); + + Response rpushx(String key, String string); + + Response sadd(String key, String member); + + Response scard(String key); + + Response sismember(String key, String member); + + Response set(String key, String value); + + Response setbit(String key, long offset, boolean value); + + Response setex(String key, int seconds, String value); + + Response setnx(String key, String value); + + Response> smembers(String key); + + Response sort(String key); + + Response> sort(String key, + SortingParams sortingParameters); + + Response spop(String key); + + Response srandmember(String key); + + Response srem(String key, String member); + + Response strlen(String key); + + Response substr(String key, int start, int end); + + Response ttl(String key); + + Response type(String key); + + Response zadd(String key, double score, String member); + + Response zcard(String key); + + Response zcount(String key, double min, double max); + + Response zincrby(String key, double score, String member); + + Response> zrange(String key, int start, int end); + + Response> zrangeByScore(String key, double min, + double max); + + Response> zrangeByScore(String key, String min, + String max); + + Response> zrangeByScore(String key, double min, + double max, int offset, int count); + + Response> zrangeByScoreWithScores(String key, double min, + double max); + + Response> zrangeByScoreWithScores(String key, double min, + double max, int offset, int count); + + Response> zrevrangeByScore(String key, double max, + double min); + + Response> zrevrangeByScore(String key, String max, + String min); + + Response> zrevrangeByScore(String key, double max, + double min, int offset, int count); + + Response> zrevrangeByScoreWithScores(String key, + double max, double min); + + Response> zrevrangeByScoreWithScores(String key, + double max, double min, int offset, int count); + + Response> zrangeWithScores(String key, int start, int end); + + Response zrank(String key, String member); + + Response zrem(String key, String member); + + Response zremrangeByRank(String key, int start, int end); + + Response zremrangeByScore(String key, double start, double end); + + Response> zrevrange(String key, int start, int end); + + Response> zrevrangeWithScores(String key, int start, + int end); + + Response zrevrank(String key, String member); + + Response zscore(String key, String member); +} diff --git a/src/main/java/redis/clients/jedis/ShardedJedisPipeline.java b/src/main/java/redis/clients/jedis/ShardedJedisPipeline.java index af416c0..48371ac 100644 --- a/src/main/java/redis/clients/jedis/ShardedJedisPipeline.java +++ b/src/main/java/redis/clients/jedis/ShardedJedisPipeline.java @@ -4,7 +4,9 @@ import redis.clients.jedis.BinaryClient.LIST_POSITION; import java.util.*; -public class ShardedJedisPipeline extends Queable { +import static redis.clients.jedis.Protocol.toByteArray; + +public class ShardedJedisPipeline extends Queable implements BinaryRedisPipeline, RedisPipeline { private BinaryShardedJedis jedis; private List results = new ArrayList(); private Queue clients = new LinkedList(); @@ -32,6 +34,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.STRING); } + public Response set(byte[] key, byte[] value) { + Client c = getClient(key); + c.set(key, value); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING); + } + public Response get(String key) { Client c = getClient(key); c.get(key); @@ -39,6 +48,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.STRING); } + public Response get(byte[] key) { + Client c = getClient(key); + c.get(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.BYTE_ARRAY); + } + public Response del(String key) { Client c = getClient(key); c.del(key); @@ -53,13 +69,27 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.BOOLEAN); } - public Response type(String key) { + public Response exists(byte[] key) { Client c = getClient(key); - c.type(key); + c.exists(key); results.add(new FutureResult(c)); return getResponse(BuilderFactory.BOOLEAN); } + public Response type(String key) { + Client c = getClient(key); + c.type(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING); + } + + public Response type(byte[] key) { + Client c = getClient(key); + c.type(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING); + } + public Response expire(String key, int seconds) { Client c = getClient(key); c.expire(key, seconds); @@ -67,6 +97,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response expire(byte[] key, int seconds) { + Client c = getClient(key); + c.expire(key, seconds); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response expireAt(String key, long unixTime) { Client c = getClient(key); c.expireAt(key, unixTime); @@ -74,6 +111,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response expireAt(byte[] key, long unixTime) { + Client c = getClient(key); + c.expireAt(key, unixTime); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response ttl(String key) { Client c = getClient(key); c.ttl(key); @@ -81,6 +125,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response ttl(byte[] key) { + Client c = getClient(key); + c.ttl(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response getSet(String key, String value) { Client c = getClient(key); c.getSet(key, value); @@ -88,6 +139,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.STRING); } + public Response getSet(byte[] key, byte[] value) { + Client c = getClient(key); + c.getSet(key, value); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.BYTE_ARRAY); + } + public Response setnx(String key, String value) { Client c = getClient(key); c.setnx(key, value); @@ -95,11 +153,25 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } - public Response setex(String key, int seconds, String value) { + public Response setnx(byte[] key, byte[] value) { + Client c = getClient(key); + c.setnx(key, value); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + + public Response setex(String key, int seconds, String value) { Client c = getClient(key); c.setex(key, seconds, value); results.add(new FutureResult(c)); - return getResponse(BuilderFactory.LONG); + return getResponse(BuilderFactory.STRING); + } + + public Response setex(byte[] key, int seconds, byte[] value) { + Client c = getClient(key); + c.setex(key, seconds, value); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING); } public Response decrBy(String key, long integer) { @@ -109,6 +181,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response decrBy(byte[] key, long integer) { + Client c = getClient(key); + c.decrBy(key, integer); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response decr(String key) { Client c = getClient(key); c.decr(key); @@ -116,7 +195,21 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } - public Response incrBy(String key, int integer) { + public Response decr(byte[] key) { + Client c = getClient(key); + c.decr(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + + public Response incrBy(String key, long integer) { + Client c = getClient(key); + c.incrBy(key, integer); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + + public Response incrBy(byte[] key, long integer) { Client c = getClient(key); c.incrBy(key, integer); results.add(new FutureResult(c)); @@ -130,6 +223,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response incr(byte[] key) { + Client c = getClient(key); + c.incr(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response append(String key, String value) { Client c = getClient(key); c.append(key, value); @@ -137,6 +237,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response append(byte[] key, byte[] value) { + Client c = getClient(key); + c.append(key, value); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response substr(String key, int start, int end) { Client c = getClient(key); c.substr(key, start, end); @@ -144,6 +251,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.STRING); } + public Response substr(byte[] key, int start, int end) { + Client c = getClient(key); + c.substr(key, start, end); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING); + } + public Response hset(String key, String field, String value) { Client c = getClient(key); c.hset(key, field, value); @@ -151,6 +265,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response hset(byte[] key, byte[] field, byte[] value) { + Client c = getClient(key); + c.hset(key, field, value); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response hget(String key, String field) { Client c = getClient(key); c.hget(key, field); @@ -158,6 +279,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.STRING); } + public Response hget(byte[] key, byte[] field) { + Client c = getClient(key); + c.hget(key, field); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING); + } + public Response hsetnx(String key, String field, String value) { Client c = getClient(key); c.hsetnx(key, field, value); @@ -165,6 +293,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response hsetnx(byte[] key, byte[] field, byte[] value) { + Client c = getClient(key); + c.hsetnx(key, field, value); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response hmset(String key, Map hash) { Client c = getClient(key); c.hmset(key, hash); @@ -172,6 +307,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.STRING); } + public Response hmset(byte[] key, Map hash) { + Client c = getClient(key); + c.hmset(key, hash); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING); + } + public Response> hmget(String key, String... fields) { Client c = getClient(key); c.hmget(key, fields); @@ -179,7 +321,21 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.STRING_LIST); } - public Response hincrBy(String key, String field, int value) { + public Response> hmget(byte[] key, byte[]... fields) { + Client c = getClient(key); + c.hmget(key, fields); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING_LIST); + } + + public Response hincrBy(String key, String field, long value) { + Client c = getClient(key); + c.hincrBy(key, field, value); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + + public Response hincrBy(byte[] key, byte[] field, long value) { Client c = getClient(key); c.hincrBy(key, field, value); results.add(new FutureResult(c)); @@ -193,6 +349,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.BOOLEAN); } + public Response hexists(byte[] key, byte[] field) { + Client c = getClient(key); + c.hexists(key, field); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.BOOLEAN); + } + public Response hdel(String key, String field) { Client c = getClient(key); c.hdel(key, field); @@ -200,6 +363,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response hdel(byte[] key, byte[] field) { + Client c = getClient(key); + c.hdel(key, field); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response hlen(String key) { Client c = getClient(key); c.hlen(key); @@ -207,6 +377,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response hlen(byte[] key) { + Client c = getClient(key); + c.hlen(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response> hkeys(String key) { Client c = getClient(key); c.hkeys(key); @@ -214,13 +391,27 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.STRING_SET); } - public Response> hvals(String key) { + public Response> hkeys(byte[] key) { Client c = getClient(key); - c.hvals(key); + c.hkeys(key); results.add(new FutureResult(c)); return getResponse(BuilderFactory.STRING_SET); } + public Response> hvals(String key) { + Client c = getClient(key); + c.hvals(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING_LIST); + } + + public Response> hvals(byte[] key) { + Client c = getClient(key); + c.hvals(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING_LIST); + } + public Response> hgetAll(String key) { Client c = getClient(key); c.hgetAll(key); @@ -228,6 +419,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.STRING_MAP); } + public Response> hgetAll(byte[] key) { + Client c = getClient(key); + c.hgetAll(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING_MAP); + } + public Response rpush(String key, String string) { Client c = getClient(key); c.rpush(key, string); @@ -235,6 +433,27 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response rpush(byte[] key, byte[] string) { + Client c = getClient(key); + c.rpush(key, string); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + + public Response rpushx(String key, String string) { + Client c = getClient(key); + c.rpushx(key, string); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + + public Response rpushx(byte[] key, byte[] string) { + Client c = getClient(key); + c.rpushx(key, string); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response lpush(String key, String string) { Client c = getClient(key); c.lpush(key, string); @@ -242,6 +461,27 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response lpush(byte[] key, byte[] string) { + Client c = getClient(key); + c.lpush(key, string); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + + public Response lpushx(String key, String string) { + Client c = getClient(key); + c.lpushx(key, string); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + + public Response lpushx(byte[] key, byte[] bytes) { + Client c = getClient(key); + c.lpushx(key, bytes); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response llen(String key) { Client c = getClient(key); c.llen(key); @@ -249,20 +489,55 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } - public Response> lrange(String key, int start, int end) { + public Response llen(byte[] key) { + Client c = getClient(key); + c.llen(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + + public Response> lrange(String key, long start, long end) { Client c = getClient(key); c.lrange(key, start, end); results.add(new FutureResult(c)); return getResponse(BuilderFactory.STRING_LIST); } - public Response ltrim(String key, int start, int end) { + public Response> lrange(byte[] key, long start, long end) { + Client c = getClient(key); + c.lrange(key, start, end); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING_LIST); + } + + public Response ltrim(String key, long start, long end) { Client c = getClient(key); c.ltrim(key, start, end); results.add(new FutureResult(c)); return getResponse(BuilderFactory.STRING); } + public Response ltrim(byte[] key, long start, long end) { + Client c = getClient(key); + c.ltrim(key, start, end); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING); + } + + public Response persist(String key) { + Client c = getClient(key); + c.persist(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + + public Response persist(byte[] key) { + Client c = getClient(key); + c.persist(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response lindex(String key, int index) { Client c = getClient(key); c.lindex(key, index); @@ -270,14 +545,35 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.STRING); } - public Response lset(String key, int index, String value) { + public Response lindex(byte[] key, int index) { + Client c = getClient(key); + c.lindex(key, index); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING); + } + + public Response lset(String key, long index, String value) { Client c = getClient(key); c.lset(key, index, value); results.add(new FutureResult(c)); return getResponse(BuilderFactory.STRING); } - public Response lrem(String key, int count, String value) { + public Response lset(byte[] key, long index, byte[] value) { + Client c = getClient(key); + c.lset(key, index, value); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING); + } + + public Response lrem(String key, long count, String value) { + Client c = getClient(key); + c.lrem(key, count, value); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + + public Response lrem(byte[] key, long count, byte[] value) { Client c = getClient(key); c.lrem(key, count, value); results.add(new FutureResult(c)); @@ -291,6 +587,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.STRING); } + public Response lpop(byte[] key) { + Client c = getClient(key); + c.lpop(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING); + } + public Response rpop(String key) { Client c = getClient(key); c.rpop(key); @@ -298,6 +601,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.STRING); } + public Response rpop(byte[] key) { + Client c = getClient(key); + c.rpop(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING); + } + public Response sadd(String key, String member) { Client c = getClient(key); c.sadd(key, member); @@ -305,6 +615,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response sadd(byte[] key, byte[] member) { + Client c = getClient(key); + c.sadd(key, member); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response> smembers(String key) { Client c = getClient(key); c.smembers(key); @@ -312,6 +629,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.STRING_SET); } + public Response> smembers(byte[] key) { + Client c = getClient(key); + c.smembers(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING_SET); + } + public Response srem(String key, String member) { Client c = getClient(key); c.srem(key, member); @@ -319,6 +643,27 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response srem(byte[] key, byte[] member) { + Client c = getClient(key); + c.srem(key, member); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + + public Response strlen(String key) { + Client c = getClient(key); + c.strlen(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + + public Response strlen(byte[] key) { + Client c = getClient(key); + c.strlen(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response spop(String key) { Client c = getClient(key); c.spop(key); @@ -326,6 +671,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.STRING); } + public Response spop(byte[] key) { + Client c = getClient(key); + c.spop(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING); + } + public Response scard(String key) { Client c = getClient(key); c.scard(key); @@ -333,6 +685,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response scard(byte[] key) { + Client c = getClient(key); + c.scard(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response sismember(String key, String member) { Client c = getClient(key); c.sismember(key, member); @@ -340,6 +699,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.BOOLEAN); } + public Response sismember(byte[] key, byte[] member) { + Client c = getClient(key); + c.sismember(key, member); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.BOOLEAN); + } + public Response srandmember(String key) { Client c = getClient(key); c.srandmember(key); @@ -347,6 +713,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.STRING); } + public Response srandmember(byte[] key) { + Client c = getClient(key); + c.srandmember(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING); + } + public Response zadd(String key, double score, String member) { Client c = getClient(key); c.zadd(key, score, member); @@ -354,6 +727,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response zadd(byte[] key, double score, byte[] member) { + Client c = getClient(key); + c.zadd(key, score, member); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response> zrange(String key, int start, int end) { Client c = getClient(key); c.zrange(key, start, end); @@ -361,6 +741,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.STRING_ZSET); } + public Response> zrange(byte[] key, int start, int end) { + Client c = getClient(key); + c.zrange(key, start, end); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING_ZSET); + } + public Response zrem(String key, String member) { Client c = getClient(key); c.zrem(key, member); @@ -368,6 +755,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response zrem(byte[] key, byte[] member) { + Client c = getClient(key); + c.zrem(key, member); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response zincrby(String key, double score, String member) { Client c = getClient(key); c.zincrby(key, score, member); @@ -375,6 +769,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.DOUBLE); } + public Response zincrby(byte[] key, double score, byte[] member) { + Client c = getClient(key); + c.zincrby(key, score, member); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.DOUBLE); + } + public Response zrank(String key, String member) { Client c = getClient(key); c.zrank(key, member); @@ -382,6 +783,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response zrank(byte[] key, byte[] member) { + Client c = getClient(key); + c.zrank(key, member); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response zrevrank(String key, String member) { Client c = getClient(key); c.zrevrank(key, member); @@ -389,6 +797,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response zrevrank(byte[] key, byte[] member) { + Client c = getClient(key); + c.zrevrank(key, member); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response> zrevrange(String key, int start, int end) { Client c = getClient(key); c.zrevrange(key, start, end); @@ -396,6 +811,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.STRING_ZSET); } + public Response> zrevrange(byte[] key, int start, int end) { + Client c = getClient(key); + c.zrevrange(key, start, end); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING_ZSET); + } + public Response> zrangeWithScores(String key, int start, int end) { Client c = getClient(key); c.zrangeWithScores(key, start, end); @@ -403,6 +825,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.TUPLE_ZSET); } + public Response> zrangeWithScores(byte[] key, int start, int end) { + Client c = getClient(key); + c.zrangeWithScores(key, start, end); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.TUPLE_ZSET); + } + public Response> zrevrangeWithScores(String key, int start, int end) { Client c = getClient(key); c.zrevrangeWithScores(key, start, end); @@ -410,6 +839,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.TUPLE_ZSET); } + public Response> zrevrangeWithScores(byte[] key, int start, int end) { + Client c = getClient(key); + c.zrevrangeWithScores(key, start, end); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.TUPLE_ZSET); + } + public Response zcard(String key) { Client c = getClient(key); c.zcard(key); @@ -417,6 +853,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response zcard(byte[] key) { + Client c = getClient(key); + c.zcard(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response zscore(String key, String member) { Client c = getClient(key); c.zscore(key, member); @@ -424,13 +867,27 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.DOUBLE); } - public Response sort(String key) { + public Response zscore(byte[] key, byte[] member) { Client c = getClient(key); - c.sort(key); + c.zscore(key, member); results.add(new FutureResult(c)); return getResponse(BuilderFactory.DOUBLE); } + public Response sort(String key) { + Client c = getClient(key); + c.sort(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + + public Response sort(byte[] key) { + Client c = getClient(key); + c.sort(key); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response> sort(String key, SortingParams sortingParameters) { Client c = getClient(key); c.sort(key, sortingParameters); @@ -438,6 +895,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.STRING_LIST); } + public Response> sort(byte[] key, SortingParams sortingParameters) { + Client c = getClient(key); + c.sort(key, sortingParameters); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING_LIST); + } + public Response zcount(String key, double min, double max) { Client c = getClient(key); c.zcount(key, min, max); @@ -445,6 +909,69 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response zcount(byte[] key, double min, double max) { + Client c = getClient(key); + c.zcount(key, toByteArray(min), toByteArray(max)); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + + public Response> zrevrangeByScore(String key, String max, String min) { + Client c = getClient(key); + c.zrevrangeByScore(key, min, max); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING_ZSET); + } + + public Response> zrevrangeByScore(String key, double max, double min) { + Client c = getClient(key); + c.zrevrangeByScore(key, min, max); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING_ZSET); + } + + public Response> zrevrangeByScore(byte[] key, double max, double min) { + Client c = getClient(key); + c.zrevrangeByScore(key, toByteArray(min), toByteArray(max)); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING_ZSET); + } + + public Response> zrevrangeByScore(byte[] key, byte[] max, byte[] min) { + Client c = getClient(key); + c.zrevrangeByScore(key, min, max); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING_ZSET); + } + + public Response> zrevrangeByScore(String key, double max, double min, int offset, int count) { + Client c = getClient(key); + c.zrevrangeByScore(key, min, max, offset, count); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING_ZSET); + } + + public Response> zrevrangeByScore(byte[] key, double max, double min, int offset, int count) { + Client c = getClient(key); + c.zrevrangeByScore(key, toByteArray(min), toByteArray(max), offset, count); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING_ZSET); + } + + public Response> zrevrangeByScore(byte[] key, byte[] max, byte[] min, int offset, int count) { + Client c = getClient(key); + c.zrevrangeByScore(key, min, max, offset, count); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING_ZSET); + } + + public Response> zrangeByScore(String key, String min, String max) { + Client c = getClient(key); + c.zrangeByScore(key, min, max); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING_ZSET); + } + public Response> zrangeByScore(String key, double min, double max) { Client c = getClient(key); c.zrangeByScore(key, min, max); @@ -452,6 +979,20 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.STRING_ZSET); } + public Response> zrangeByScore(byte[] key, double min, double max) { + Client c = getClient(key); + c.zrangeByScore(key, toByteArray(min), toByteArray(max)); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING_ZSET); + } + + public Response> zrangeByScore(byte[] key, byte[] min, byte[] max) { + Client c = getClient(key); + c.zrangeByScore(key, min, max); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING_ZSET); + } + public Response> zrangeByScore(String key, double min, double max, int offset, int count) { Client c = getClient(key); @@ -460,6 +1001,22 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.STRING_ZSET); } + public Response> zrangeByScore(byte[] key, double min, double max, + int offset, int count) { + Client c = getClient(key); + c.zrangeByScore(key, toByteArray(min), toByteArray(max), offset, count); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING_ZSET); + } + + public Response> zrangeByScore(byte[] key, byte[] min, byte[] max, + int offset, int count) { + Client c = getClient(key); + c.zrangeByScore(key, min, max, offset, count); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING_ZSET); + } + public Response> zrangeByScoreWithScores(String key, double min, double max) { Client c = getClient(key); c.zrangeByScoreWithScores(key, min, max); @@ -467,6 +1024,20 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.TUPLE_ZSET); } + public Response> zrangeByScoreWithScores(byte[] key, double min, double max) { + Client c = getClient(key); + c.zrangeByScoreWithScores(key, toByteArray(min), toByteArray(max)); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.TUPLE_ZSET); + } + + public Response> zrangeByScoreWithScores(byte[] key, byte[] min, byte[] max) { + Client c = getClient(key); + c.zrangeByScoreWithScores(key, min, max); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.TUPLE_ZSET); + } + public Response> zrangeByScoreWithScores(String key, double min, double max, int offset, int count) { Client c = getClient(key); @@ -475,6 +1046,64 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.TUPLE_ZSET); } + public Response> zrangeByScoreWithScores(byte[] key, double min, double max, + int offset, int count) { + Client c = getClient(key); + c.zrangeByScoreWithScores(key, toByteArray(min), toByteArray(max), offset, count); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.TUPLE_ZSET); + } + + public Response> zrangeByScoreWithScores(byte[] key, byte[] min, byte[] max, + int offset, int count) { + Client c = getClient(key); + c.zrangeByScoreWithScores(key, min, max, offset, count); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.TUPLE_ZSET); + } + + public Response> zrevrangeByScoreWithScores(String key, double max, double min) { + Client c = getClient(key); + c.zrevrangeByScoreWithScores(key, min, max); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.TUPLE_ZSET); + } + + public Response> zrevrangeByScoreWithScores(byte[] key, double max, double min) { + Client c = getClient(key); + c.zrevrangeByScoreWithScores(key, toByteArray(min), toByteArray(max)); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.TUPLE_ZSET); + } + + public Response> zrevrangeByScoreWithScores(byte[] key, byte[] max, byte[] min) { + Client c = getClient(key); + c.zrevrangeByScoreWithScores(key, min, max); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.TUPLE_ZSET); + } + + public Response> zrevrangeByScoreWithScores(String key, double max, double min, int offset, int count) { + Client c = getClient(key); + c.zrevrangeByScoreWithScores(key, min, max, offset, count); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.TUPLE_ZSET); + } + + public Response> zrevrangeByScoreWithScores(byte[] key, double max, double min, int offset, int count) { + Client c = getClient(key); + c.zrevrangeByScoreWithScores(key, toByteArray(min), toByteArray(max), offset, count); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.TUPLE_ZSET); + } + + public Response> zrevrangeByScoreWithScores(byte[] key, byte[] max, byte[] min, int offset, int count) { + Client c = getClient(key); + c.zrevrangeByScoreWithScores(key, min, max, offset, count); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.TUPLE_ZSET); + } + public Response zremrangeByRank(String key, int start, int end) { Client c = getClient(key); c.zremrangeByRank(key, start, end); @@ -482,6 +1111,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response zremrangeByRank(byte[] key, int start, int end) { + Client c = getClient(key); + c.zremrangeByRank(key, start, end); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response zremrangeByScore(String key, double start, double end) { Client c = getClient(key); c.zremrangeByScore(key, start, end); @@ -489,6 +1125,20 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response zremrangeByScore(byte[] key, double start, double end) { + Client c = getClient(key); + c.zremrangeByScore(key, toByteArray(start), toByteArray(end)); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + + public Response zremrangeByScore(byte[] key, byte[] start, byte[] end) { + Client c = getClient(key); + c.zremrangeByScore(key, start, end); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response linsert(String key, LIST_POSITION where, String pivot, String value) { Client c = getClient(key); @@ -497,6 +1147,14 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.LONG); } + public Response linsert(byte[] key, LIST_POSITION where, byte[] pivot, + byte[] value) { + Client c = getClient(key); + c.linsert(key, where, pivot, value); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + public Response getbit(String key, long offset) { Client c = getClient(key); c.getbit(key, offset); @@ -504,6 +1162,13 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.BOOLEAN); } + public Response getbit(byte[] key, long offset) { + Client c = getClient(key); + c.getbit(key, offset); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.BOOLEAN); + } + public Response setbit(String key, long offset, boolean value) { Client c = getClient(key); c.setbit(key, offset, value); @@ -511,15 +1176,35 @@ public class ShardedJedisPipeline extends Queable { return getResponse(BuilderFactory.BOOLEAN); } + public Response setbit(byte[] key, long offset, byte[] value) { + Client c = getClient(key); + c.setbit(key, offset, value); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.BOOLEAN); + } + public Response setrange(String key, long offset, String value) { Client c = getClient(key); c.setrange(key, offset, value); results.add(new FutureResult(c)); return getResponse(BuilderFactory.LONG); - } - public Response getrange(String key, long startOffset, long endOffset) { + public Response setrange(byte[] key, long offset, byte[] value) { + Client c = getClient(key); + c.setrange(key, offset, value); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.LONG); + } + + public Response getrange(String key, long startOffset, long endOffset) { + Client c = getClient(key); + c.getrange(key, startOffset, endOffset); + results.add(new FutureResult(c)); + return getResponse(BuilderFactory.STRING); + } + + public Response getrange(byte[] key, long startOffset, long endOffset) { Client c = getClient(key); c.getrange(key, startOffset, endOffset); results.add(new FutureResult(c)); @@ -574,4 +1259,10 @@ public class ShardedJedisPipeline extends Queable { clients.add(client); return client; } + + private Client getClient(byte[] key) { + Client client = jedis.getShard(key).getClient(); + clients.add(client); + return client; + } } \ No newline at end of file