merging with master branch. Required refactoring of Pipeline code.

This commit is contained in:
Eric Treworgy
2013-02-20 12:24:15 -08:00
40 changed files with 3397 additions and 3351 deletions

View File

@@ -79,7 +79,7 @@ public class BinaryClient extends Connection {
}
public void ping() {
sendCommand(PING);
sendCommand(Command.PING);
}
public void set(final byte[] key, final byte[] value) {
@@ -656,6 +656,10 @@ public class BinaryClient extends Connection {
public void info() {
sendCommand(INFO);
}
public void info(final String section) {
sendCommand(INFO, section);
}
public void monitor() {
sendCommand(MONITOR);
@@ -685,16 +689,16 @@ public class BinaryClient extends Connection {
sendCommand(SYNC);
}
public void lpushx(final byte[] key, final byte[] string) {
sendCommand(LPUSHX, key, string);
public void lpushx(final byte[] key, final byte[]... string) {
sendCommand(LPUSHX, joinParameters(key, string));
}
public void persist(final byte[] key) {
sendCommand(PERSIST, key);
}
public void rpushx(final byte[] key, final byte[] string) {
sendCommand(RPUSHX, key, string);
public void rpushx(final byte[] key, final byte[]... string) {
sendCommand(RPUSHX, joinParameters(key, string));
}
public void echo(final byte[] string) {
@@ -723,6 +727,10 @@ public class BinaryClient extends Connection {
sendCommand(SETBIT, key, toByteArray(offset), value);
}
public void setbit(byte[] key, long offset, boolean value) {
sendCommand(SETBIT, key, toByteArray(offset), toByteArray(value));
}
public void getbit(byte[] key, long offset) {
sendCommand(GETBIT, key, toByteArray(offset));
}
@@ -763,10 +771,18 @@ public class BinaryClient extends Connection {
sendEvalCommand(EVAL, script, keyCount, params);
}
public void evalsha(byte[] sha1, byte[] keyCount, byte[][] params) {
public void eval(byte[] script, int keyCount, byte[]... params) {
eval(script, toByteArray(keyCount), params);
}
public void evalsha(byte[] sha1, byte[] keyCount, byte[]... params) {
sendEvalCommand(EVALSHA, sha1, keyCount, params);
}
public void evalsha(byte[] sha1, int keyCount, byte[]... params) {
sendEvalCommand(EVALSHA, sha1, toByteArray(keyCount), params);
}
public void scriptFlush() {
sendCommand(SCRIPT, Keyword.FLUSH.raw);
}
@@ -815,4 +831,45 @@ public class BinaryClient extends Connection {
public void objectEncoding(byte[] key) {
sendCommand(OBJECT, ENCODING.raw, key);
}
public void bitcount(byte[] key) {
sendCommand(BITCOUNT, key);
}
public void bitcount(byte[] key, long start, long end) {
sendCommand(BITCOUNT, key, toByteArray(start), toByteArray(end));
}
public void bitop(BitOP op, byte[] destKey, byte[]... srcKeys) {
Keyword kw = Keyword.AND;
int len = srcKeys.length;
switch (op) {
case AND:
kw = Keyword.AND;
break;
case OR:
kw = Keyword.OR;
break;
case XOR:
kw = Keyword.XOR;
break;
case NOT:
kw = Keyword.NOT;
len = Math.min(1, len);
break;
}
byte[][] bargs = new byte[len + 2][];
bargs[0] = kw.raw;
bargs[1] = destKey;
for (int i = 0; i < len; ++i) {
bargs[i + 2] = srcKeys[i];
}
sendCommand(BITOP, bargs);
}
public void sentinel(final byte[]... args) {
sendCommand(SENTINEL, args);
}
}