added binary version of MultiKey commands

This commit is contained in:
samhendley
2012-12-26 10:22:38 -05:00
parent 2006d80ac5
commit cc0ef89b7d
4 changed files with 91 additions and 2 deletions

View File

@@ -17,7 +17,7 @@ import redis.clients.jedis.exceptions.JedisException;
import redis.clients.util.JedisByteHashMap;
import redis.clients.util.SafeEncoder;
public class BinaryJedis implements BinaryJedisCommands {
public class BinaryJedis implements BinaryJedisCommands, MultiKeyBinaryCommands {
protected Client client = null;
public BinaryJedis(final String host) {
@@ -2048,6 +2048,24 @@ public class BinaryJedis implements BinaryJedisCommands {
return multiBulkReply;
}
public List<byte[]> blpop(byte[]... args) {
checkIsInMulti();
client.blpop(args);
client.setTimeoutInfinite();
final List<byte[]> multiBulkReply = client.getBinaryMultiBulkReply();
client.rollbackTimeout();
return multiBulkReply;
}
public List<byte[]> brpop(byte[]... args) {
checkIsInMulti();
client.brpop(args);
client.setTimeoutInfinite();
final List<byte[]> multiBulkReply = client.getBinaryMultiBulkReply();
client.rollbackTimeout();
return multiBulkReply;
}
/**
* Request for authentication in a password protected Redis server. A Redis
* server can be instructed to require a password before to allow clients to