You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
917 B
39 lines
917 B
'use strict';
|
|
|
|
// helpers for configuring a redis client in
|
|
// its various modes, ipV6, ipV4, socket.
|
|
var redis = require('../../index');
|
|
var bluebird = require('bluebird');
|
|
|
|
// Promisify everything
|
|
bluebird.promisifyAll(redis.RedisClient.prototype);
|
|
bluebird.promisifyAll(redis.Multi.prototype);
|
|
|
|
var config = {
|
|
redis: redis,
|
|
PORT: 6379,
|
|
HOST: {
|
|
IPv4: "127.0.0.1",
|
|
IPv6: "::1"
|
|
},
|
|
configureClient: function (parser, ip, opts) {
|
|
var args = [];
|
|
// Do not manipulate the opts => copy them each time
|
|
opts = opts ? JSON.parse(JSON.stringify(opts)) : {};
|
|
|
|
if (ip.match(/\.sock/)) {
|
|
args.push(ip);
|
|
} else {
|
|
args.push(config.PORT);
|
|
args.push(config.HOST[ip]);
|
|
opts.family = ip;
|
|
}
|
|
|
|
opts.parser = parser;
|
|
args.push(opts);
|
|
|
|
return args;
|
|
}
|
|
};
|
|
|
|
module.exports = config;
|
|
|