From 6f4a32d2a1904b4e95085be83a5438dcc52eb2b4 Mon Sep 17 00:00:00 2001 From: Jonathan Leibiusky Date: Fri, 23 Dec 2011 11:44:39 -0300 Subject: [PATCH] add select to transaction --- .../redis/clients/jedis/BinaryTransaction.java | 5 +++++ .../java/redis/clients/jedis/Transaction.java | 1 - .../commands/TransactionCommandsTest.java | 18 ++++++++++++++++++ 3 files changed, 23 insertions(+), 1 deletion(-) diff --git a/src/main/java/redis/clients/jedis/BinaryTransaction.java b/src/main/java/redis/clients/jedis/BinaryTransaction.java index 35c500e..54f6483 100644 --- a/src/main/java/redis/clients/jedis/BinaryTransaction.java +++ b/src/main/java/redis/clients/jedis/BinaryTransaction.java @@ -563,4 +563,9 @@ public class BinaryTransaction extends Queable { client.brpoplpush(source, destination, timeout); return getResponse(BuilderFactory.BYTE_ARRAY); } + + public Response select(final int index) { + client.select(index); + return getResponse(BuilderFactory.STRING); + } } diff --git a/src/main/java/redis/clients/jedis/Transaction.java b/src/main/java/redis/clients/jedis/Transaction.java index b1dd14a..18c5f29 100644 --- a/src/main/java/redis/clients/jedis/Transaction.java +++ b/src/main/java/redis/clients/jedis/Transaction.java @@ -576,5 +576,4 @@ public class Transaction extends BinaryTransaction { client.publish(channel, message); return getResponse(BuilderFactory.LONG); } - } \ No newline at end of file diff --git a/src/test/java/redis/clients/jedis/tests/commands/TransactionCommandsTest.java b/src/test/java/redis/clients/jedis/tests/commands/TransactionCommandsTest.java index f123a4a..8167658 100644 --- a/src/test/java/redis/clients/jedis/tests/commands/TransactionCommandsTest.java +++ b/src/test/java/redis/clients/jedis/tests/commands/TransactionCommandsTest.java @@ -277,4 +277,22 @@ public class TransactionCommandsTest extends JedisCommandTestBase { } assertEquals("bar", lr.get(2).get()); } + + @Test + public void select() { + jedis.select(1); + jedis.set("foo", "bar"); + jedis.watch("foo"); + Transaction t = jedis.multi(); + t.select(0); + t.set("bar", "foo"); + + Jedis jedis2 = createJedis(); + jedis2.select(1); + jedis2.set("foo", "bar2"); + + List results = t.exec(); + + assertNull(results); + } } \ No newline at end of file