diff --git a/src/main/java/redis/clients/jedis/BinaryJedis.java b/src/main/java/redis/clients/jedis/BinaryJedis.java index 78021e9..3dbf2de 100644 --- a/src/main/java/redis/clients/jedis/BinaryJedis.java +++ b/src/main/java/redis/clients/jedis/BinaryJedis.java @@ -707,8 +707,7 @@ public class BinaryJedis implements BinaryJedisCommands { * @return If the field already exists, 0 is returned, otherwise if a new * field is created 1 is returned. */ - public Long hsetnx(final byte[] key, final byte[] field, - final byte[] value) { + public Long hsetnx(final byte[] key, final byte[] field, final byte[] value) { checkIsInMulti(); client.hsetnx(key, field, value); return client.getIntegerReply(); @@ -1454,8 +1453,7 @@ public class BinaryJedis implements BinaryJedisCommands { * the element was already a member of the sorted set and the score * was updated */ - public Long zadd(final byte[] key, final double score, - final byte[] member) { + public Long zadd(final byte[] key, final double score, final byte[] member) { checkIsInMulti(); client.zadd(key, score, member); return client.getIntegerReply(); @@ -1880,8 +1878,8 @@ public class BinaryJedis implements BinaryJedisCommands { * @param dstkey * @return The number of elements of the list at dstkey. */ - public Long sort(final byte[] key, - final SortingParams sortingParameters, final byte[] dstkey) { + public Long sort(final byte[] key, final SortingParams sortingParameters, + final byte[] dstkey) { checkIsInMulti(); client.sort(key, sortingParameters, dstkey); return client.getIntegerReply(); @@ -2018,12 +2016,16 @@ public class BinaryJedis implements BinaryJedisCommands { return client.getStatusCodeReply(); } - public List pipelined(final JedisPipeline jedisPipeline) { + public List pipelined(final PipelineBlock jedisPipeline) { jedisPipeline.setClient(client); jedisPipeline.execute(); return client.getAll(); } + public Pipeline pipelined() { + return new Pipeline(client); + } + public void subscribe(final JedisPubSub jedisPubSub, final String... channels) { client.setTimeoutInfinite(); @@ -2337,8 +2339,7 @@ public class BinaryJedis implements BinaryJedisCommands { * operation * */ - public Long zremrangeByRank(final byte[] key, final int start, - final int end) { + public Long zremrangeByRank(final byte[] key, final int start, final int end) { checkIsInMulti(); client.zremrangeByRank(key, start, end); return client.getIntegerReply(); diff --git a/src/main/java/redis/clients/jedis/Client.java b/src/main/java/redis/clients/jedis/Client.java index 32f7985..ef76d45 100644 --- a/src/main/java/redis/clients/jedis/Client.java +++ b/src/main/java/redis/clients/jedis/Client.java @@ -6,7 +6,7 @@ import java.util.Map.Entry; import redis.clients.util.SafeEncoder; -public class Client extends BinaryClient { +public class Client extends BinaryClient implements Commands { public Client(final String host) { super(host); } diff --git a/src/main/java/redis/clients/jedis/Commands.java b/src/main/java/redis/clients/jedis/Commands.java new file mode 100644 index 0000000..3ece458 --- /dev/null +++ b/src/main/java/redis/clients/jedis/Commands.java @@ -0,0 +1,217 @@ +package redis.clients.jedis; + +import java.util.Map; + +import redis.clients.jedis.BinaryClient.LIST_POSITION; + +public interface Commands { + + public void set(final String key, final String value); + + public void get(final String key); + + public void exists(final String key); + + public void del(final String... keys); + + public void type(final String key); + + public void keys(final String pattern); + + public void rename(final String oldkey, final String newkey); + + public void renamenx(final String oldkey, final String newkey); + + public void expire(final String key, final int seconds); + + public void expireAt(final String key, final long unixTime); + + public void ttl(final String key); + + public void move(final String key, final int dbIndex); + + public void getSet(final String key, final String value); + + public void mget(final String... keys); + + public void setnx(final String key, final String value); + + public void setex(final String key, final int seconds, final String value); + + public void mset(final String... keysvalues); + + public void msetnx(final String... keysvalues); + + public void decrBy(final String key, final int integer); + + public void decr(final String key); + + public void incrBy(final String key, final int integer); + + public void incr(final String key); + + public void append(final String key, final String value); + + public void substr(final String key, final int start, final int end); + + public void hset(final String key, final String field, final String value); + + public void hget(final String key, final String field); + + public void hsetnx(final String key, final String field, final String value); + + public void hmset(final String key, final Map hash); + + public void hmget(final String key, final String... fields); + + public void hincrBy(final String key, final String field, final int value); + + public void hexists(final String key, final String field); + + public void hdel(final String key, final String field); + + public void hlen(final String key); + + public void hkeys(final String key); + + public void hvals(final String key); + + public void hgetAll(final String key); + + public void rpush(final String key, final String string); + + public void lpush(final String key, final String string); + + public void llen(final String key); + + public void lrange(final String key, final int start, final int end); + + public void ltrim(final String key, final int start, final int end); + + public void lindex(final String key, final int index); + + public void lset(final String key, final int index, final String value); + + public void lrem(final String key, int count, final String value); + + public void lpop(final String key); + + public void rpop(final String key); + + public void rpoplpush(final String srckey, final String dstkey); + + public void sadd(final String key, final String member); + + public void smembers(final String key); + + public void srem(final String key, final String member); + + public void spop(final String key); + + public void smove(final String srckey, final String dstkey, + final String member); + + public void scard(final String key); + + public void sismember(final String key, final String member); + + public void sinter(final String... keys); + + public void sinterstore(final String dstkey, final String... keys); + + public void sunion(final String... keys); + + public void sunionstore(final String dstkey, final String... keys); + + public void sdiff(final String... keys); + + public void sdiffstore(final String dstkey, final String... keys); + + public void srandmember(final String key); + + public void zadd(final String key, final double score, final String member); + + public void zrange(final String key, final int start, final int end); + + public void zrem(final String key, final String member); + + public void zincrby(final String key, final double score, + final String member); + + public void zrank(final String key, final String member); + + public void zrevrank(final String key, final String member); + + public void zrevrange(final String key, final int start, final int end); + + public void zrangeWithScores(final String key, final int start, + final int end); + + public void zrevrangeWithScores(final String key, final int start, + final int end); + + public void zcard(final String key); + + public void zscore(final String key, final String member); + + public void watch(final String... keys); + + public void sort(final String key); + + public void sort(final String key, final SortingParams sortingParameters); + + public void blpop(final String[] args); + + public void sort(final String key, final SortingParams sortingParameters, + final String dstkey); + + public void sort(final String key, final String dstkey); + + public void brpop(final String[] args); + + public void zcount(final String key, final double min, final double max); + + public void zrangeByScore(final String key, final double min, + final double max); + + public void zrangeByScore(final String key, final String min, + final String max); + + public void zrangeByScore(final String key, final double min, + final double max, final int offset, int count); + + public void zrangeByScoreWithScores(final String key, final double min, + final double max); + + public void zrangeByScoreWithScores(final String key, final double min, + final double max, final int offset, final int count); + + public void zremrangeByRank(final String key, final int start, final int end); + + public void zremrangeByScore(final String key, final double start, + final double end); + + public void zunionstore(final String dstkey, final String... sets); + + public void zunionstore(final String dstkey, final ZParams params, + final String... sets); + + public void zinterstore(final String dstkey, final String... sets); + + public void zinterstore(final String dstkey, final ZParams params, + final String... sets); + + public void strlen(final String key); + + public void lpushx(final String key, final String string); + + public void persist(final String key); + + public void rpushx(final String key, final String string); + + public void echo(final String string); + + public void linsert(final String key, final LIST_POSITION where, + final String pivot, final String value); + +} \ No newline at end of file diff --git a/src/main/java/redis/clients/jedis/Jedis.java b/src/main/java/redis/clients/jedis/Jedis.java index 5a18975..b06b6bb 100644 --- a/src/main/java/redis/clients/jedis/Jedis.java +++ b/src/main/java/redis/clients/jedis/Jedis.java @@ -30,8 +30,7 @@ public class Jedis extends BinaryJedis implements JedisCommands { super(shardInfo); } - @Override - public String ping() { + public String ping() { runChecks(); client.ping(); return client.getStatusCodeReply(); @@ -72,8 +71,8 @@ public class Jedis extends BinaryJedis implements JedisCommands { /** * Ask the server to silently close the connection. */ - @Override - public void quit() { + + public void quit() { runChecks(); client.quit(); } @@ -136,8 +135,8 @@ public class Jedis extends BinaryJedis implements JedisCommands { * * @return Status code reply */ - @Override - public String flushDB() { + + public String flushDB() { runChecks(); client.flushDB(); return client.getStatusCodeReply(); @@ -235,8 +234,8 @@ public class Jedis extends BinaryJedis implements JedisCommands { * * @return Integer reply */ - @Override - public Long dbSize() { + + public Long dbSize() { runChecks(); client.dbSize(); return client.getIntegerReply(); @@ -336,8 +335,8 @@ public class Jedis extends BinaryJedis implements JedisCommands { * @param index * @return Status code reply */ - @Override - public String select(final int index) { + + public String select(final int index) { runChecks(); client.select(index); return client.getStatusCodeReply(); @@ -368,8 +367,8 @@ public class Jedis extends BinaryJedis implements JedisCommands { * * @return Status code reply */ - @Override - public String flushAll() { + + public String flushAll() { runChecks(); client.flushAll(); return client.getStatusCodeReply(); @@ -706,8 +705,7 @@ public class Jedis extends BinaryJedis implements JedisCommands { * @return If the field already exists, 0 is returned, otherwise if a new * field is created 1 is returned. */ - public Long hsetnx(final String key, final String field, - final String value) { + public Long hsetnx(final String key, final String field, final String value) { runChecks(); client.hsetnx(key, field, value); return client.getIntegerReply(); @@ -1453,8 +1451,7 @@ public class Jedis extends BinaryJedis implements JedisCommands { * the element was already a member of the sorted set and the score * was updated */ - public Long zadd(final String key, final double score, - final String member) { + public Long zadd(final String key, final double score, final String member) { runChecks(); client.zadd(key, score, member); return client.getIntegerReply(); @@ -1629,15 +1626,13 @@ public class Jedis extends BinaryJedis implements JedisCommands { return (score != null ? new Double(score) : null); } - @Override - public Transaction multi() { + public Transaction multi() { client.multi(); client.getStatusCodeReply(); return new Transaction(client); } - @Override - public List multi(TransactionBlock jedisTransaction) { + public List multi(TransactionBlock jedisTransaction) { List results = null; try { jedisTransaction.setClient(client); @@ -1664,8 +1659,7 @@ public class Jedis extends BinaryJedis implements JedisCommands { } } - @Override - public void connect() throws UnknownHostException, IOException { + public void connect() throws UnknownHostException, IOException { if (!client.isConnected()) { client.connect(); if (this.password != null) { @@ -1674,8 +1668,7 @@ public class Jedis extends BinaryJedis implements JedisCommands { } } - @Override - public void disconnect() throws IOException { + public void disconnect() throws IOException { client.disconnect(); } @@ -1890,8 +1883,8 @@ public class Jedis extends BinaryJedis implements JedisCommands { * @param dstkey * @return The number of elements of the list at dstkey. */ - public Long sort(final String key, - final SortingParams sortingParameters, final String dstkey) { + public Long sort(final String key, final SortingParams sortingParameters, + final String dstkey) { runChecks(); client.sort(key, sortingParameters, dstkey); return client.getIntegerReply(); @@ -2022,35 +2015,25 @@ public class Jedis extends BinaryJedis implements JedisCommands { * @param password * @return Status code reply */ - @Override - public String auth(final String password) { + + public String auth(final String password) { runChecks(); client.auth(password); return client.getStatusCodeReply(); } - @Override - public List pipelined(JedisPipeline jedisPipeline) { - jedisPipeline.setClient(client); - jedisPipeline.execute(); - return client.getAll(); - } - - @Override - public void subscribe(JedisPubSub jedisPubSub, String... channels) { + public void subscribe(JedisPubSub jedisPubSub, String... channels) { client.setTimeoutInfinite(); jedisPubSub.proceed(client, channels); client.rollbackTimeout(); } - @Override - public Long publish(String channel, String message) { + public Long publish(String channel, String message) { client.publish(channel, message); return client.getIntegerReply(); } - @Override - public void psubscribe(JedisPubSub jedisPubSub, String... patterns) { + public void psubscribe(JedisPubSub jedisPubSub, String... patterns) { client.setTimeoutInfinite(); jedisPubSub.proceedWithPatterns(client, patterns); client.rollbackTimeout(); @@ -2351,8 +2334,7 @@ public class Jedis extends BinaryJedis implements JedisCommands { * operation * */ - public Long zremrangeByRank(final String key, final int start, - final int end) { + public Long zremrangeByRank(final String key, final int start, final int end) { runChecks(); client.zremrangeByRank(key, start, end); return client.getIntegerReply(); diff --git a/src/main/java/redis/clients/jedis/JedisMonitor.java b/src/main/java/redis/clients/jedis/JedisMonitor.java index fb99933..bd2654b 100644 --- a/src/main/java/redis/clients/jedis/JedisMonitor.java +++ b/src/main/java/redis/clients/jedis/JedisMonitor.java @@ -4,11 +4,11 @@ public abstract class JedisMonitor { protected Client client; public void proceed(Client client) { - this.client = client; - do { - String command = client.getBulkReply(); - onCommand(command); - } while (client.isConnected()); + this.client = client; + do { + String command = client.getBulkReply(); + onCommand(command); + } while (client.isConnected()); } public abstract void onCommand(String command); diff --git a/src/main/java/redis/clients/jedis/JedisPipeline.java b/src/main/java/redis/clients/jedis/JedisPipeline.java deleted file mode 100644 index 5e78d0b..0000000 --- a/src/main/java/redis/clients/jedis/JedisPipeline.java +++ /dev/null @@ -1,11 +0,0 @@ -package redis.clients.jedis; - -public abstract class JedisPipeline { - protected Client client; - - public void setClient(Client client) { - this.client = client; - } - - public abstract void execute(); -} diff --git a/src/main/java/redis/clients/jedis/Pipeline.java b/src/main/java/redis/clients/jedis/Pipeline.java new file mode 100644 index 0000000..55266db --- /dev/null +++ b/src/main/java/redis/clients/jedis/Pipeline.java @@ -0,0 +1,409 @@ +package redis.clients.jedis; + +import java.util.List; +import java.util.Map; + +import redis.clients.jedis.BinaryClient.LIST_POSITION; + +public class Pipeline implements Commands { + private Client client; + + public Pipeline(Client client) { + this.client = client; + } + + public void append(String key, String value) { + client.append(key, value); + } + + public void blpop(String[] args) { + client.blpop(args); + } + + public void brpop(String[] args) { + client.brpop(args); + } + + public void decr(String key) { + client.decr(key); + } + + public void decrBy(String key, int integer) { + client.decrBy(key, integer); + } + + public void del(String... keys) { + client.del(keys); + } + + public void echo(String string) { + client.echo(string); + } + + public void exists(String key) { + client.exists(key); + } + + public void expire(String key, int seconds) { + client.expire(key, seconds); + } + + public void expireAt(String key, long unixTime) { + client.expireAt(key, unixTime); + } + + public void get(String key) { + client.get(key); + } + + public void getSet(String key, String value) { + client.getSet(key, value); + } + + public void hdel(String key, String field) { + client.hdel(key, field); + } + + public void hexists(String key, String field) { + client.hexists(key, field); + } + + public void hget(String key, String field) { + client.hget(key, field); + } + + public void hgetAll(String key) { + client.hgetAll(key); + } + + public void hincrBy(String key, String field, int value) { + client.hincrBy(key, field, value); + } + + public void hkeys(String key) { + client.hkeys(key); + } + + public void hlen(String key) { + client.hlen(key); + } + + public void hmget(String key, String... fields) { + client.hmget(key, fields); + } + + public void hmset(String key, Map hash) { + client.hmset(key, hash); + } + + public void hset(String key, String field, String value) { + client.hset(key, field, value); + } + + public void hsetnx(String key, String field, String value) { + client.hsetnx(key, field, value); + } + + public void hvals(String key) { + client.hvals(key); + } + + public void incr(String key) { + client.incr(key); + } + + public void incrBy(String key, int integer) { + client.incrBy(key, integer); + } + + public void keys(String pattern) { + client.keys(pattern); + } + + public void lindex(String key, int index) { + client.lindex(key, index); + } + + public void linsert(String key, LIST_POSITION where, String pivot, + String value) { + client.linsert(key, where, pivot, value); + } + + public void llen(String key) { + client.llen(key); + } + + public void lpop(String key) { + client.lpop(key); + } + + public void lpush(String key, String string) { + client.lpush(key, string); + } + + public void lpushx(String key, String string) { + client.lpushx(key, string); + } + + public void lrange(String key, int start, int end) { + client.lrange(key, start, end); + } + + public void lrem(String key, int count, String value) { + client.lrem(key, count, value); + } + + public void lset(String key, int index, String value) { + client.lset(key, index, value); + } + + public void ltrim(String key, int start, int end) { + client.ltrim(key, start, end); + } + + public void mget(String... keys) { + client.mget(keys); + } + + public void move(String key, int dbIndex) { + client.move(key, dbIndex); + } + + public void mset(String... keysvalues) { + client.mset(keysvalues); + } + + public void msetnx(String... keysvalues) { + client.msetnx(keysvalues); + } + + public void persist(String key) { + client.persist(key); + } + + public void rename(String oldkey, String newkey) { + client.rename(oldkey, newkey); + } + + public void renamenx(String oldkey, String newkey) { + client.renamenx(oldkey, newkey); + } + + public void rpop(String key) { + client.rpop(key); + } + + public void rpoplpush(String srckey, String dstkey) { + client.rpoplpush(srckey, dstkey); + } + + public void rpush(String key, String string) { + client.rpush(key, string); + } + + public void rpushx(String key, String string) { + client.rpushx(key, string); + } + + public void sadd(String key, String member) { + client.sadd(key, member); + } + + public void scard(String key) { + client.scard(key); + } + + public void sdiff(String... keys) { + client.sdiff(keys); + } + + public void sdiffstore(String dstkey, String... keys) { + client.sdiffstore(dstkey, keys); + } + + public void set(String key, String value) { + client.set(key, value); + } + + public void setex(String key, int seconds, String value) { + client.setex(key, seconds, value); + } + + public void setnx(String key, String value) { + client.setnx(key, value); + } + + public void sinter(String... keys) { + client.sinter(keys); + } + + public void sinterstore(String dstkey, String... keys) { + client.sinterstore(dstkey, keys); + } + + public void sismember(String key, String member) { + client.sismember(key, member); + } + + public void smembers(String key) { + client.smembers(key); + } + + public void smove(String srckey, String dstkey, String member) { + client.smove(srckey, dstkey, member); + } + + public void sort(String key) { + client.sort(key); + } + + public void sort(String key, SortingParams sortingParameters) { + client.sort(key, sortingParameters); + } + + public void sort(String key, SortingParams sortingParameters, String dstkey) { + client.sort(key, sortingParameters, dstkey); + } + + public void sort(String key, String dstkey) { + client.sort(key, dstkey); + } + + public void spop(String key) { + client.spop(key); + } + + public void srandmember(String key) { + client.srandmember(key); + } + + public void srem(String key, String member) { + client.srem(key, member); + } + + public void strlen(String key) { + client.strlen(key); + } + + public void substr(String key, int start, int end) { + client.substr(key, start, end); + } + + public void sunion(String... keys) { + client.sunion(keys); + } + + public void sunionstore(String dstkey, String... keys) { + client.sunionstore(dstkey, keys); + } + + public void ttl(String key) { + client.ttl(key); + } + + public void type(String key) { + client.type(key); + } + + public void watch(String... keys) { + client.watch(keys); + } + + public void zadd(String key, double score, String member) { + client.zadd(key, score, member); + } + + public void zcard(String key) { + client.zcard(key); + } + + public void zcount(String key, double min, double max) { + client.zcount(key, min, max); + } + + public void zincrby(String key, double score, String member) { + client.zincrby(key, score, member); + } + + public void zinterstore(String dstkey, String... sets) { + client.zinterstore(dstkey, sets); + } + + public void zinterstore(String dstkey, ZParams params, String... sets) { + client.zinterstore(dstkey, params, sets); + } + + public void zrange(String key, int start, int end) { + client.zrange(key, start, end); + } + + public void zrangeByScore(String key, double min, double max) { + client.zrangeByScore(key, min, max); + } + + public void zrangeByScore(String key, String min, String max) { + client.zrangeByScore(key, min, max); + } + + public void zrangeByScore(String key, double min, double max, int offset, + int count) { + client.zrangeByScore(key, min, max, offset, count); + } + + public void zrangeByScoreWithScores(String key, double min, double max) { + client.zrangeByScoreWithScores(key, min, max); + } + + public void zrangeByScoreWithScores(String key, double min, double max, + int offset, int count) { + client.zrangeByScoreWithScores(key, min, max, offset, count); + } + + public void zrangeWithScores(String key, int start, int end) { + client.zrangeWithScores(key, start, end); + } + + public void zrank(String key, String member) { + client.zrank(key, member); + } + + public void zrem(String key, String member) { + client.zrem(key, member); + } + + public void zremrangeByRank(String key, int start, int end) { + client.zremrangeByRank(key, start, end); + } + + public void zremrangeByScore(String key, double start, double end) { + client.zremrangeByScore(key, start, end); + } + + public void zrevrange(String key, int start, int end) { + client.zrevrange(key, start, end); + } + + public void zrevrangeWithScores(String key, int start, int end) { + client.zrevrangeWithScores(key, start, end); + } + + public void zrevrank(String key, String member) { + client.zrevrank(key, member); + } + + public void zscore(String key, String member) { + client.zscore(key, member); + } + + public void zunionstore(String dstkey, String... sets) { + client.zunionstore(dstkey, sets); + } + + public void zunionstore(String dstkey, ZParams params, String... sets) { + client.zunionstore(dstkey, params, sets); + } + + public List execute() { + return client.getAll(); + } +} diff --git a/src/main/java/redis/clients/jedis/PipelineBlock.java b/src/main/java/redis/clients/jedis/PipelineBlock.java new file mode 100644 index 0000000..47ae67f --- /dev/null +++ b/src/main/java/redis/clients/jedis/PipelineBlock.java @@ -0,0 +1,406 @@ +package redis.clients.jedis; + +import java.util.Map; + +import redis.clients.jedis.BinaryClient.LIST_POSITION; + +public abstract class PipelineBlock implements Commands { + private Client client; + + public void setClient(Client client) { + this.client = client; + } + + public void append(String key, String value) { + client.append(key, value); + } + + public void blpop(String[] args) { + client.blpop(args); + } + + public void brpop(String[] args) { + client.brpop(args); + } + + public void decr(String key) { + client.decr(key); + } + + public void decrBy(String key, int integer) { + client.decrBy(key, integer); + } + + public void del(String... keys) { + client.del(keys); + } + + public void echo(String string) { + client.echo(string); + } + + public void exists(String key) { + client.exists(key); + } + + public void expire(String key, int seconds) { + client.expire(key, seconds); + } + + public void expireAt(String key, long unixTime) { + client.expireAt(key, unixTime); + } + + public void get(String key) { + client.get(key); + } + + public void getSet(String key, String value) { + client.getSet(key, value); + } + + public void hdel(String key, String field) { + client.hdel(key, field); + } + + public void hexists(String key, String field) { + client.hexists(key, field); + } + + public void hget(String key, String field) { + client.hget(key, field); + } + + public void hgetAll(String key) { + client.hgetAll(key); + } + + public void hincrBy(String key, String field, int value) { + client.hincrBy(key, field, value); + } + + public void hkeys(String key) { + client.hkeys(key); + } + + public void hlen(String key) { + client.hlen(key); + } + + public void hmget(String key, String... fields) { + client.hmget(key, fields); + } + + public void hmset(String key, Map hash) { + client.hmset(key, hash); + } + + public void hset(String key, String field, String value) { + client.hset(key, field, value); + } + + public void hsetnx(String key, String field, String value) { + client.hsetnx(key, field, value); + } + + public void hvals(String key) { + client.hvals(key); + } + + public void incr(String key) { + client.incr(key); + } + + public void incrBy(String key, int integer) { + client.incrBy(key, integer); + } + + public void keys(String pattern) { + client.keys(pattern); + } + + public void lindex(String key, int index) { + client.lindex(key, index); + } + + public void linsert(String key, LIST_POSITION where, String pivot, + String value) { + client.linsert(key, where, pivot, value); + } + + public void llen(String key) { + client.llen(key); + } + + public void lpop(String key) { + client.lpop(key); + } + + public void lpush(String key, String string) { + client.lpush(key, string); + } + + public void lpushx(String key, String string) { + client.lpushx(key, string); + } + + public void lrange(String key, int start, int end) { + client.lrange(key, start, end); + } + + public void lrem(String key, int count, String value) { + client.lrem(key, count, value); + } + + public void lset(String key, int index, String value) { + client.lset(key, index, value); + } + + public void ltrim(String key, int start, int end) { + client.ltrim(key, start, end); + } + + public void mget(String... keys) { + client.mget(keys); + } + + public void move(String key, int dbIndex) { + client.move(key, dbIndex); + } + + public void mset(String... keysvalues) { + client.mset(keysvalues); + } + + public void msetnx(String... keysvalues) { + client.msetnx(keysvalues); + } + + public void persist(String key) { + client.persist(key); + } + + public void rename(String oldkey, String newkey) { + client.rename(oldkey, newkey); + } + + public void renamenx(String oldkey, String newkey) { + client.renamenx(oldkey, newkey); + } + + public void rpop(String key) { + client.rpop(key); + } + + public void rpoplpush(String srckey, String dstkey) { + client.rpoplpush(srckey, dstkey); + } + + public void rpush(String key, String string) { + client.rpush(key, string); + } + + public void rpushx(String key, String string) { + client.rpushx(key, string); + } + + public void sadd(String key, String member) { + client.sadd(key, member); + } + + public void scard(String key) { + client.scard(key); + } + + public void sdiff(String... keys) { + client.sdiff(keys); + } + + public void sdiffstore(String dstkey, String... keys) { + client.sdiffstore(dstkey, keys); + } + + public void set(String key, String value) { + client.set(key, value); + } + + public void setex(String key, int seconds, String value) { + client.setex(key, seconds, value); + } + + public void setnx(String key, String value) { + client.setnx(key, value); + } + + public void sinter(String... keys) { + client.sinter(keys); + } + + public void sinterstore(String dstkey, String... keys) { + client.sinterstore(dstkey, keys); + } + + public void sismember(String key, String member) { + client.sismember(key, member); + } + + public void smembers(String key) { + client.smembers(key); + } + + public void smove(String srckey, String dstkey, String member) { + client.smove(srckey, dstkey, member); + } + + public void sort(String key) { + client.sort(key); + } + + public void sort(String key, SortingParams sortingParameters) { + client.sort(key, sortingParameters); + } + + public void sort(String key, SortingParams sortingParameters, String dstkey) { + client.sort(key, sortingParameters, dstkey); + } + + public void sort(String key, String dstkey) { + client.sort(key, dstkey); + } + + public void spop(String key) { + client.spop(key); + } + + public void srandmember(String key) { + client.srandmember(key); + } + + public void srem(String key, String member) { + client.srem(key, member); + } + + public void strlen(String key) { + client.strlen(key); + } + + public void substr(String key, int start, int end) { + client.substr(key, start, end); + } + + public void sunion(String... keys) { + client.sunion(keys); + } + + public void sunionstore(String dstkey, String... keys) { + client.sunionstore(dstkey, keys); + } + + public void ttl(String key) { + client.ttl(key); + } + + public void type(String key) { + client.type(key); + } + + public void watch(String... keys) { + client.watch(keys); + } + + public void zadd(String key, double score, String member) { + client.zadd(key, score, member); + } + + public void zcard(String key) { + client.zcard(key); + } + + public void zcount(String key, double min, double max) { + client.zcount(key, min, max); + } + + public void zincrby(String key, double score, String member) { + client.zincrby(key, score, member); + } + + public void zinterstore(String dstkey, String... sets) { + client.zinterstore(dstkey, sets); + } + + public void zinterstore(String dstkey, ZParams params, String... sets) { + client.zinterstore(dstkey, params, sets); + } + + public void zrange(String key, int start, int end) { + client.zrange(key, start, end); + } + + public void zrangeByScore(String key, double min, double max) { + client.zrangeByScore(key, min, max); + } + + public void zrangeByScore(String key, String min, String max) { + client.zrangeByScore(key, min, max); + } + + public void zrangeByScore(String key, double min, double max, int offset, + int count) { + client.zrangeByScore(key, min, max, offset, count); + } + + public void zrangeByScoreWithScores(String key, double min, double max) { + client.zrangeByScoreWithScores(key, min, max); + } + + public void zrangeByScoreWithScores(String key, double min, double max, + int offset, int count) { + client.zrangeByScoreWithScores(key, min, max, offset, count); + } + + public void zrangeWithScores(String key, int start, int end) { + client.zrangeWithScores(key, start, end); + } + + public void zrank(String key, String member) { + client.zrank(key, member); + } + + public void zrem(String key, String member) { + client.zrem(key, member); + } + + public void zremrangeByRank(String key, int start, int end) { + client.zremrangeByRank(key, start, end); + } + + public void zremrangeByScore(String key, double start, double end) { + client.zremrangeByScore(key, start, end); + } + + public void zrevrange(String key, int start, int end) { + client.zrevrange(key, start, end); + } + + public void zrevrangeWithScores(String key, int start, int end) { + client.zrevrangeWithScores(key, start, end); + } + + public void zrevrank(String key, String member) { + client.zrevrank(key, member); + } + + public void zscore(String key, String member) { + client.zscore(key, member); + } + + public void zunionstore(String dstkey, String... sets) { + client.zunionstore(dstkey, sets); + } + + public void zunionstore(String dstkey, ZParams params, String... sets) { + client.zunionstore(dstkey, params, sets); + } + + public abstract void execute(); +} diff --git a/src/test/java/redis/clients/jedis/tests/PipeliningTest.java b/src/test/java/redis/clients/jedis/tests/PipeliningTest.java index 6fafd08..1a76046 100644 --- a/src/test/java/redis/clients/jedis/tests/PipeliningTest.java +++ b/src/test/java/redis/clients/jedis/tests/PipeliningTest.java @@ -5,12 +5,12 @@ import java.net.UnknownHostException; import java.util.List; import org.junit.Assert; - import org.junit.Before; import org.junit.Test; import redis.clients.jedis.Jedis; -import redis.clients.jedis.JedisPipeline; +import redis.clients.jedis.PipelineBlock; +import redis.clients.jedis.Pipeline; import redis.clients.jedis.Protocol; import redis.clients.jedis.tests.HostAndPortUtil.HostAndPort; @@ -21,23 +21,37 @@ public class PipeliningTest extends Assert { @Before public void setUp() throws Exception { - jedis = new Jedis(hnp.host, hnp.port, 500); - jedis.connect(); - jedis.auth("foobared"); - jedis.flushAll(); + jedis = new Jedis(hnp.host, hnp.port, 500); + jedis.connect(); + jedis.auth("foobared"); + jedis.flushAll(); } @Test public void pipeline() throws UnknownHostException, IOException { - List results = jedis.pipelined(new JedisPipeline() { - public void execute() { - client.set("foo", "bar"); - client.get("foo"); - } - }); + List results = jedis.pipelined(new PipelineBlock() { + public void execute() { + set("foo", "bar"); + get("foo"); + } + }); + + assertEquals(2, results.size()); + assertArrayEquals("OK".getBytes(Protocol.CHARSET), (byte[]) results + .get(0)); + assertArrayEquals("bar".getBytes(Protocol.CHARSET), (byte[]) results + .get(1)); + + Pipeline p = jedis.pipelined(); + p.set("foo", "bar"); + p.get("foo"); + results = p.execute(); + + assertEquals(2, results.size()); + assertArrayEquals("OK".getBytes(Protocol.CHARSET), (byte[]) results + .get(0)); + assertArrayEquals("bar".getBytes(Protocol.CHARSET), (byte[]) results + .get(1)); - assertEquals(2, results.size()); - assertArrayEquals("OK".getBytes(Protocol.CHARSET), (byte[])results.get(0)); - assertArrayEquals("bar".getBytes(Protocol.CHARSET), (byte[])results.get(1)); } } diff --git a/src/test/java/redis/clients/jedis/tests/benchmark/PipelinedGetSetBenchmark.java b/src/test/java/redis/clients/jedis/tests/benchmark/PipelinedGetSetBenchmark.java index a62a1c9..13d7a6d 100644 --- a/src/test/java/redis/clients/jedis/tests/benchmark/PipelinedGetSetBenchmark.java +++ b/src/test/java/redis/clients/jedis/tests/benchmark/PipelinedGetSetBenchmark.java @@ -5,37 +5,37 @@ import java.net.UnknownHostException; import java.util.Calendar; import redis.clients.jedis.Jedis; -import redis.clients.jedis.JedisPipeline; +import redis.clients.jedis.PipelineBlock; import redis.clients.jedis.tests.HostAndPortUtil; import redis.clients.jedis.tests.HostAndPortUtil.HostAndPort; public class PipelinedGetSetBenchmark { - private static HostAndPort hnp = HostAndPortUtil.getRedisServers().get(0); + private static HostAndPort hnp = HostAndPortUtil.getRedisServers().get(0); private static final int TOTAL_OPERATIONS = 200000; public static void main(String[] args) throws UnknownHostException, - IOException { - Jedis jedis = new Jedis(hnp.host, hnp.port); - jedis.connect(); - jedis.auth("foobared"); - jedis.flushAll(); + IOException { + Jedis jedis = new Jedis(hnp.host, hnp.port); + jedis.connect(); + jedis.auth("foobared"); + jedis.flushAll(); - long begin = Calendar.getInstance().getTimeInMillis(); + long begin = Calendar.getInstance().getTimeInMillis(); - jedis.pipelined(new JedisPipeline() { - public void execute() { - for (int n = 0; n <= TOTAL_OPERATIONS; n++) { - String key = "foo" + n; - client.set(key, "bar" + n); - client.get(key); - } - } - }); + jedis.pipelined(new PipelineBlock() { + public void execute() { + for (int n = 0; n <= TOTAL_OPERATIONS; n++) { + String key = "foo" + n; + set(key, "bar" + n); + get(key); + } + } + }); - long elapsed = Calendar.getInstance().getTimeInMillis() - begin; + long elapsed = Calendar.getInstance().getTimeInMillis() - begin; - jedis.disconnect(); + jedis.disconnect(); - System.out.println(((1000 * 2 * TOTAL_OPERATIONS) / elapsed) + " ops"); + System.out.println(((1000 * 2 * TOTAL_OPERATIONS) / elapsed) + " ops"); } } \ No newline at end of file