add url support
This commit is contained in:
@@ -2,6 +2,7 @@ package redis.clients.jedis;
|
||||
|
||||
import static redis.clients.jedis.Protocol.toByteArray;
|
||||
|
||||
import java.net.URI;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashSet;
|
||||
import java.util.Iterator;
|
||||
@@ -20,7 +21,16 @@ public class BinaryJedis implements BinaryJedisCommands {
|
||||
protected Client client = null;
|
||||
|
||||
public BinaryJedis(final String host) {
|
||||
client = new Client(host);
|
||||
URI uri = URI.create(host);
|
||||
if (uri.getScheme() != null && uri.getScheme().equals("redis")) {
|
||||
client = new Client(uri.getHost(), uri.getPort());
|
||||
client.auth(uri.getUserInfo().split(":", 2)[1]);
|
||||
client.getStatusCodeReply();
|
||||
client.select(Integer.parseInt(uri.getPath().split("/", 2)[1]));
|
||||
client.getStatusCodeReply();
|
||||
} else {
|
||||
client = new Client(host);
|
||||
}
|
||||
}
|
||||
|
||||
public BinaryJedis(final String host, final int port) {
|
||||
@@ -38,6 +48,14 @@ public class BinaryJedis implements BinaryJedisCommands {
|
||||
client.setPassword(shardInfo.getPassword());
|
||||
}
|
||||
|
||||
public BinaryJedis(URI uri) {
|
||||
client = new Client(uri.getHost(), uri.getPort());
|
||||
client.auth(uri.getUserInfo().split(":", 2)[1]);
|
||||
client.getStatusCodeReply();
|
||||
client.select(Integer.parseInt(uri.getPath().split("/", 2)[1]));
|
||||
client.getStatusCodeReply();
|
||||
}
|
||||
|
||||
public String ping() {
|
||||
checkIsInMulti();
|
||||
client.ping();
|
||||
|
||||
Reference in New Issue
Block a user