diff --git a/README.md b/README.md
index 6c9a823..e9df416 100644
--- a/README.md
+++ b/README.md
@@ -11,7 +11,7 @@ Jedis is a WORK IN PROGRESS.
- Publish/Subscribe
- Persistence control commands
- Remote server control commands
-- The AUTH, SORT, BLPOP, BRPOP, ZRANGEBYSCORE, ZREMRANGEBYRANK, ZREMRANGEBYSCORE, ZUNIONSTORE, ZINTERSTORE commands
+- The AUTH, SORT, BRPOP, ZRANGEBYSCORE, ZREMRANGEBYRANK, ZREMRANGEBYSCORE, ZUNIONSTORE, ZINTERSTORE commands
But stay close because things are going fast and all this will be implemented soon!
@@ -20,7 +20,7 @@ But stay close because things are going fast and all this will be implemented so
- Commands operating on all the kind of values
- Commands operating on string values
- Commands operating on hashes
-- Commands operating on lists (not SORT, BLPOP, BRPOP)
+- Commands operating on lists (not SORT, BRPOP)
- Commands operating on sets
- Commands operating on sorted sets (not SORT, ZRANGEBYSCORE, ZREMRANGEBYRANK, ZREMRANGEBYSCORE, ZUNIONSTORE, ZINTERSTORE)
- Transactions
diff --git a/pom.xml b/pom.xml
index e55a4a5..5b16ffa 100644
--- a/pom.xml
+++ b/pom.xml
@@ -2,7 +2,7 @@
4.0.0
redis.clients
jedis
- 0.0.8
+ 0.0.9
junit
diff --git a/src/main/java/redis/clients/jedis/Client.java b/src/main/java/redis/clients/jedis/Client.java
index a3b83cb..d653702 100644
--- a/src/main/java/redis/clients/jedis/Client.java
+++ b/src/main/java/redis/clients/jedis/Client.java
@@ -395,4 +395,8 @@ public class Client extends Connection {
args.addAll(sortingParameters.getParams());
sendCommand("SORT", args.toArray(new String[args.size()]));
}
+
+ public void blpop(String[] args) throws JedisException {
+ sendCommand("BLPOP", args);
+ }
}
diff --git a/src/main/java/redis/clients/jedis/Jedis.java b/src/main/java/redis/clients/jedis/Jedis.java
index 2ca7c41..c007639 100644
--- a/src/main/java/redis/clients/jedis/Jedis.java
+++ b/src/main/java/redis/clients/jedis/Jedis.java
@@ -2,6 +2,7 @@ package redis.clients.jedis;
import java.io.IOException;
import java.net.UnknownHostException;
+import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.LinkedHashSet;
@@ -428,7 +429,9 @@ public class Jedis {
Set set = new LinkedHashSet();
Iterator iterator = membersWithScores.iterator();
while (iterator.hasNext()) {
- set.add(new Tuple(iterator.next(), Double.valueOf(iterator.next())));
+ set
+ .add(new Tuple(iterator.next(), Double.valueOf(iterator
+ .next())));
}
return set;
}
@@ -440,7 +443,9 @@ public class Jedis {
Set set = new LinkedHashSet();
Iterator iterator = membersWithScores.iterator();
while (iterator.hasNext()) {
- set.add(new Tuple(iterator.next(), Double.valueOf(iterator.next())));
+ set
+ .add(new Tuple(iterator.next(), Double.valueOf(iterator
+ .next())));
}
return set;
}
@@ -503,4 +508,15 @@ public class Jedis {
return client.getMultiBulkReply();
}
-}
+ public List blpop(int timeout, String... keys)
+ throws JedisException {
+ List args = new ArrayList();
+ for (String arg : keys) {
+ args.add(arg);
+ }
+ args.add(String.valueOf(timeout));
+
+ client.blpop(args.toArray(new String[args.size()]));
+ return client.getMultiBulkReply();
+ }
+}
\ No newline at end of file
diff --git a/src/main/java/redis/clients/jedis/Protocol.java b/src/main/java/redis/clients/jedis/Protocol.java
index 875b66b..7ec33d6 100644
--- a/src/main/java/redis/clients/jedis/Protocol.java
+++ b/src/main/java/redis/clients/jedis/Protocol.java
@@ -129,8 +129,11 @@ public class Protocol {
}
private Object processMultiBulkReply(InputStream is) throws JedisException {
- List