From e8c27e0d15096289598fbea946d03e29402fd5bb Mon Sep 17 00:00:00 2001 From: Ivo Ramirez Date: Wed, 21 Dec 2011 06:19:05 +0100 Subject: [PATCH] Jedis does support lpushx and rpushx Conflicts: src/main/java/redis/clients/jedis/BinaryJedisCommands.java src/main/java/redis/clients/jedis/Pipeline.java --- .../java/redis/clients/jedis/BinaryJedisCommands.java | 4 ++++ .../java/redis/clients/jedis/BinaryShardedJedis.java | 11 +++++++++++ src/main/java/redis/clients/jedis/JedisCommands.java | 4 ++++ src/main/java/redis/clients/jedis/ShardedJedis.java | 10 ++++++++++ src/main/java/redis/clients/util/Pool.java | 2 +- 5 files changed, 30 insertions(+), 1 deletion(-) diff --git a/src/main/java/redis/clients/jedis/BinaryJedisCommands.java b/src/main/java/redis/clients/jedis/BinaryJedisCommands.java index ef8aebd..673f2fe 100644 --- a/src/main/java/redis/clients/jedis/BinaryJedisCommands.java +++ b/src/main/java/redis/clients/jedis/BinaryJedisCommands.java @@ -154,4 +154,8 @@ public interface BinaryJedisCommands { Long zremrangeByScore(byte[] key, double start, double end); Long linsert(byte[] key, LIST_POSITION where, byte[] pivot, byte[] value); + + Long lpushx(byte[] key, byte[] string); + + Long rpushx(byte[] key, byte[] string); } diff --git a/src/main/java/redis/clients/jedis/BinaryShardedJedis.java b/src/main/java/redis/clients/jedis/BinaryShardedJedis.java index 9c1abd2..4e056ab 100644 --- a/src/main/java/redis/clients/jedis/BinaryShardedJedis.java +++ b/src/main/java/redis/clients/jedis/BinaryShardedJedis.java @@ -190,6 +190,17 @@ public class BinaryShardedJedis extends Sharded return j.lpush(key, string); } + public Long lpushx(byte[] key, byte[] string) { + Jedis j = getShard(key); + return j.lpushx(key, string); + } + + + public Long rpushx(byte[] key, byte[] string) { + Jedis j = getShard(key); + return j.rpushx(key, string); + } + public Long llen(byte[] key) { Jedis j = getShard(key); return j.llen(key); diff --git a/src/main/java/redis/clients/jedis/JedisCommands.java b/src/main/java/redis/clients/jedis/JedisCommands.java index 603b60c..176f0ac 100644 --- a/src/main/java/redis/clients/jedis/JedisCommands.java +++ b/src/main/java/redis/clients/jedis/JedisCommands.java @@ -160,4 +160,8 @@ public interface JedisCommands { Long linsert(String key, Client.LIST_POSITION where, String pivot, String value); + + Long lpushx(String key, String string); + + Long rpushx(String key, String string); } diff --git a/src/main/java/redis/clients/jedis/ShardedJedis.java b/src/main/java/redis/clients/jedis/ShardedJedis.java index b294149..64769a5 100644 --- a/src/main/java/redis/clients/jedis/ShardedJedis.java +++ b/src/main/java/redis/clients/jedis/ShardedJedis.java @@ -207,6 +207,16 @@ public class ShardedJedis extends BinaryShardedJedis implements JedisCommands { Jedis j = getShard(key); return j.lpush(key, string); } + + public Long lpushx(String key, String string) { + Jedis j = getShard(key); + return j.lpushx(key, string); + } + + public Long rpushx(String key, String string) { + Jedis j = getShard(key); + return j.rpushx(key, string); + } public Long llen(String key) { Jedis j = getShard(key); diff --git a/src/main/java/redis/clients/util/Pool.java b/src/main/java/redis/clients/util/Pool.java index 3f74370..651f15f 100644 --- a/src/main/java/redis/clients/util/Pool.java +++ b/src/main/java/redis/clients/util/Pool.java @@ -24,7 +24,7 @@ public abstract class Pool { } } - public void returnResource(final T resource) { + public void returnResource(final Object resource) { try { internalPool.returnObject(resource); } catch (Exception e) {