diff --git a/src/main/java/redis/clients/jedis/Pipeline.java b/src/main/java/redis/clients/jedis/Pipeline.java index 3f417a6..1e04deb 100644 --- a/src/main/java/redis/clients/jedis/Pipeline.java +++ b/src/main/java/redis/clients/jedis/Pipeline.java @@ -1218,10 +1218,11 @@ public class Pipeline extends Queable { return getResponse(BuilderFactory.STRING); } - public void exec() { + public Response> exec() { client.exec(); - super.getResponse(currentMulti); + Response> response = super.getResponse(currentMulti); currentMulti = null; + return response; } public void multi() { @@ -1279,5 +1280,4 @@ public class Pipeline extends Queable { client.select(index); return getResponse(BuilderFactory.STRING); } - } \ No newline at end of file diff --git a/src/test/java/redis/clients/jedis/tests/PipeliningTest.java b/src/test/java/redis/clients/jedis/tests/PipeliningTest.java index 93afb10..568a2cd 100644 --- a/src/test/java/redis/clients/jedis/tests/PipeliningTest.java +++ b/src/test/java/redis/clients/jedis/tests/PipeliningTest.java @@ -171,7 +171,7 @@ public class PipeliningTest extends Assert { p.multi(); Response r1 = p.hincrBy("a", "f1", -1); Response r2 = p.hincrBy("a", "f1", -2); - p.exec(); + Response> r3 = p.exec(); List result = p.syncAndReturnAll(); assertEquals(new Long(-1), r1.get()); @@ -188,5 +188,9 @@ public class PipeliningTest extends Assert { List multiResult = (List) result.get(3); assertEquals(new Long(-1), multiResult.get(0)); assertEquals(new Long(-3), multiResult.get(1)); + + assertEquals(new Long(-1), r3.get().get(0)); + assertEquals(new Long(-3), r3.get().get(1)); + } }