diff --git a/redis/vibe/db/redis/redis.d b/redis/vibe/db/redis/redis.d index 7adf8e8ab1..0848d7b8d7 100644 --- a/redis/vibe/db/redis/redis.d +++ b/redis/vibe/db/redis/redis.d @@ -33,6 +33,7 @@ import std.utf; */ RedisClient connectRedis(string host, ushort port = RedisClient.defaultPort) { + enforce(!host.startsWith("redis://", "Host must be a valid IP or domain, but not an URI.")); return new RedisClient(host, port); } @@ -48,6 +49,17 @@ RedisDatabase connectRedisDB(URL url) return cli.getDatabase(url.localURI[1 .. $].to!long); } +/// ditto +RedisDatabase connectRedisDB(string host_or_url) +{ + /* If this looks like a URL try to parse it that way. */ + if(host_or_url.startsWith("redis://")){ + return connectRedisDB(URL(host_or_url)); + } else { + return connectRedis(host_or_url).getDatabase(0); + } +} + /** A redis client with connection pooling. */