Fixed binary safe pipeline commands and added tests for pipelined hash functions

This commit is contained in:
shendley
2012-12-18 10:26:56 -05:00
parent 2058231a61
commit 45be143e23
3 changed files with 112 additions and 39 deletions

67
src/main/java/redis/clients/jedis/Pipeline.java Normal file → Executable file
View File

@@ -78,7 +78,6 @@ public class Pipeline extends Queable {
* right response type (usually it is a waste of time).
*
* @return A list of all the responses in the order you executed them.
* @see sync
*/
public List<Object> syncAndReturnAll() {
List<Object> unformatted = client.getAll();
@@ -109,9 +108,9 @@ public class Pipeline extends Queable {
return getResponse(BuilderFactory.STRING_LIST);
}
public Response<List<String>> blpop(byte[]... args) {
public Response<List<byte[]>> blpop(byte[]... args) {
client.blpop(args);
return getResponse(BuilderFactory.STRING_LIST);
return getResponse(BuilderFactory.BYTE_ARRAY_LIST);
}
public Response<List<String>> brpop(String... args) {
@@ -119,9 +118,9 @@ public class Pipeline extends Queable {
return getResponse(BuilderFactory.STRING_LIST);
}
public Response<List<String>> brpop(byte[]... args) {
public Response<List<byte[]>> brpop(byte[]... args) {
client.brpop(args);
return getResponse(BuilderFactory.STRING_LIST);
return getResponse(BuilderFactory.BYTE_ARRAY_LIST);
}
public Response<Long> decr(String key) {
@@ -159,9 +158,9 @@ public class Pipeline extends Queable {
return getResponse(BuilderFactory.STRING);
}
public Response<String> echo(byte[] string) {
public Response<byte[]> echo(byte[] string) {
client.echo(string);
return getResponse(BuilderFactory.STRING);
return getResponse(BuilderFactory.BYTE_ARRAY);
}
public Response<Boolean> exists(String key) {
@@ -250,9 +249,9 @@ public class Pipeline extends Queable {
return getResponse(BuilderFactory.STRING);
}
public Response<String> hget(byte[] key, byte[] field) {
public Response<byte[]> hget(byte[] key, byte[] field) {
client.hget(key, field);
return getResponse(BuilderFactory.STRING);
return getResponse(BuilderFactory.BYTE_ARRAY);
}
public Response<Map<String, String>> hgetAll(String key) {
@@ -260,9 +259,9 @@ public class Pipeline extends Queable {
return getResponse(BuilderFactory.STRING_MAP);
}
public Response<Map<String, String>> hgetAll(byte[] key) {
public Response<Map<byte[], byte[]>> hgetAll(byte[] key) {
client.hgetAll(key);
return getResponse(BuilderFactory.STRING_MAP);
return getResponse(BuilderFactory.BYTE_ARRAY_MAP);
}
public Response<Long> hincrBy(String key, String field, long value) {
@@ -280,9 +279,9 @@ public class Pipeline extends Queable {
return getResponse(BuilderFactory.STRING_SET);
}
public Response<Set<String>> hkeys(byte[] key) {
public Response<Set<byte[]>> hkeys(byte[] key) {
client.hkeys(key);
return getResponse(BuilderFactory.STRING_SET);
return getResponse(BuilderFactory.BYTE_ARRAY_ZSET);
}
public Response<Long> hlen(String key) {
@@ -300,9 +299,9 @@ public class Pipeline extends Queable {
return getResponse(BuilderFactory.STRING_LIST);
}
public Response<List<String>> hmget(byte[] key, byte[]... fields) {
public Response<List<byte[]>> hmget(byte[] key, byte[]... fields) {
client.hmget(key, fields);
return getResponse(BuilderFactory.STRING_LIST);
return getResponse(BuilderFactory.BYTE_ARRAY_LIST);
}
public Response<String> hmset(String key, Map<String, String> hash) {
@@ -340,9 +339,9 @@ public class Pipeline extends Queable {
return getResponse(BuilderFactory.STRING_LIST);
}
public Response<List<String>> hvals(byte[] key) {
public Response<List<byte[]>> hvals(byte[] key) {
client.hvals(key);
return getResponse(BuilderFactory.STRING_LIST);
return getResponse(BuilderFactory.BYTE_ARRAY_LIST);
}
public Response<Long> incr(String key) {
@@ -370,9 +369,9 @@ public class Pipeline extends Queable {
return getResponse(BuilderFactory.STRING_SET);
}
public Response<Set<String>> keys(byte[] pattern) {
public Response<Set<byte[]>> keys(byte[] pattern) {
client.keys(pattern);
return getResponse(BuilderFactory.STRING_SET);
return getResponse(BuilderFactory.BYTE_ARRAY_ZSET);
}
public Response<String> lindex(String key, int index) {
@@ -380,9 +379,9 @@ public class Pipeline extends Queable {
return getResponse(BuilderFactory.STRING);
}
public Response<String> lindex(byte[] key, int index) {
public Response<byte[]> lindex(byte[] key, int index) {
client.lindex(key, index);
return getResponse(BuilderFactory.STRING);
return getResponse(BuilderFactory.BYTE_ARRAY);
}
public Response<Long> linsert(String key, LIST_POSITION where,
@@ -412,9 +411,9 @@ public class Pipeline extends Queable {
return getResponse(BuilderFactory.STRING);
}
public Response<String> lpop(byte[] key) {
public Response<byte[]> lpop(byte[] key) {
client.lpop(key);
return getResponse(BuilderFactory.STRING);
return getResponse(BuilderFactory.BYTE_ARRAY);
}
public Response<Long> lpush(String key, String string) {
@@ -442,9 +441,9 @@ public class Pipeline extends Queable {
return getResponse(BuilderFactory.STRING_LIST);
}
public Response<List<String>> lrange(byte[] key, long start, long end) {
public Response<List<byte[]>> lrange(byte[] key, long start, long end) {
client.lrange(key, start, end);
return getResponse(BuilderFactory.STRING_LIST);
return getResponse(BuilderFactory.BYTE_ARRAY_LIST);
}
public Response<Long> lrem(String key, long count, String value) {
@@ -482,9 +481,9 @@ public class Pipeline extends Queable {
return getResponse(BuilderFactory.STRING_LIST);
}
public Response<List<String>> mget(byte[]... keys) {
public Response<List<byte[]>> mget(byte[]... keys) {
client.mget(keys);
return getResponse(BuilderFactory.STRING_LIST);
return getResponse(BuilderFactory.BYTE_ARRAY_LIST);
}
public Response<Long> move(String key, int dbIndex) {
@@ -552,9 +551,9 @@ public class Pipeline extends Queable {
return getResponse(BuilderFactory.STRING);
}
public Response<String> rpop(byte[] key) {
public Response<byte[]> rpop(byte[] key) {
client.rpop(key);
return getResponse(BuilderFactory.STRING);
return getResponse(BuilderFactory.BYTE_ARRAY);
}
public Response<String> rpoplpush(String srckey, String dstkey) {
@@ -562,9 +561,9 @@ public class Pipeline extends Queable {
return getResponse(BuilderFactory.STRING);
}
public Response<String> rpoplpush(byte[] srckey, byte[] dstkey) {
public Response<byte[]> rpoplpush(byte[] srckey, byte[] dstkey) {
client.rpoplpush(srckey, dstkey);
return getResponse(BuilderFactory.STRING);
return getResponse(BuilderFactory.BYTE_ARRAY);
}
public Response<Long> rpush(String key, String string) {
@@ -612,9 +611,9 @@ public class Pipeline extends Queable {
return getResponse(BuilderFactory.STRING_SET);
}
public Response<Set<String>> sdiff(byte[]... keys) {
public Response<Set<byte[]>> sdiff(byte[]... keys) {
client.sdiff(keys);
return getResponse(BuilderFactory.STRING_SET);
return getResponse(BuilderFactory.BYTE_ARRAY_ZSET);
}
public Response<Long> sdiffstore(String dstkey, String... keys) {
@@ -1319,4 +1318,4 @@ public class Pipeline extends Queable {
client.select(index);
return getResponse(BuilderFactory.STRING);
}
}
}