Merge remote-tracking branch 'origin/master' into 0.7.0

v1.18.x
barisusakli 10 years ago
commit 535f30aa9e

@ -1,6 +1,9 @@
"use strict"; "use strict";
module.exports = function(redisClient, module) { module.exports = function(redisClient, module) {
var helpers = module.helpers.redis;
module.setObject = function(key, data, callback) { module.setObject = function(key, data, callback) {
callback = callback || function() {}; callback = callback || function() {};
redisClient.hmset(key, data, function(err) { redisClient.hmset(key, data, function(err) {
@ -20,28 +23,18 @@ module.exports = function(redisClient, module) {
}; };
module.getObjects = function(keys, callback) { module.getObjects = function(keys, callback) {
var multi = redisClient.multi(); helpers.multiKeys(redisClient, 'hgetall', keys, callback);
for(var x=0; x<keys.length; ++x) {
multi.hgetall(keys[x]);
}
multi.exec(callback);
}; };
module.getObjectField = function(key, field, callback) { module.getObjectField = function(key, field, callback) {
module.getObjectFields(key, [field], function(err, data) { module.getObjectFields(key, [field], function(err, data) {
if(err) { callback(err, data ? data[field] : null);
return callback(err);
}
callback(null, data[field]);
}); });
}; };
module.getObjectFields = function(key, fields, callback) { module.getObjectFields = function(key, fields, callback) {
module.getObjectsFields([key], fields, function(err, results) { module.getObjectsFields([key], fields, function(err, results) {
callback(err, results ? results[0]: null); callback(err, results ? results[0] : null);
}); });
}; };
@ -89,20 +82,8 @@ module.exports = function(redisClient, module) {
}; };
module.isObjectFields = function(key, fields, callback) { module.isObjectFields = function(key, fields, callback) {
var multi = redisClient.multi(); helpers.multiKeyValues(redisClient, 'hexists', key, fields, function(err, results) {
for (var i=0; i<fields.length; ++i) { callback(err, Array.isArray(results) ? helpers.resultsToBool(results) : null);
multi.hexists(key, fields[i]);
}
multi.exec(function(err, results) {
if (err) {
return callback(err);
}
for (var i=0; i<results.length; ++i) {
results[i] = results[i] === 1;
}
callback(null, results);
}); });
}; };

@ -2,5 +2,38 @@
var helpers = {}; var helpers = {};
helpers.multiKeys = function(redisClient, command, keys, callback) {
callback = callback || function() {};
var multi = redisClient.multi();
for (var i=0; i<keys.length; ++i) {
multi[command](keys[i]);
}
multi.exec(callback);
};
helpers.multiKeysValue = function(redisClient, command, keys, value, callback) {
callback = callback || function() {};
var multi = redisClient.multi();
for (var i=0; i<keys.length; ++i) {
multi[command](keys[i], value);
}
multi.exec(callback);
};
helpers.multiKeyValues = function(redisClient, command, key, values, callback) {
callback = callback || function() {};
var multi = redisClient.multi();
for (var i=0; i<values.length; ++i) {
multi[command](key, values[i]);
}
multi.exec(callback);
};
helpers.resultsToBool = function(results) {
for (var i=0; i<results.length; ++i) {
results[i] = results[i] === 1;
}
return results;
}
module.exports = helpers; module.exports = helpers;

@ -1,6 +1,8 @@
"use strict"; "use strict";
module.exports = function(redisClient, module) { module.exports = function(redisClient, module) {
var helpers = module.helpers.redis;
module.setAdd = function(key, value, callback) { module.setAdd = function(key, value, callback) {
callback = callback || function() {}; callback = callback || function() {};
redisClient.sadd(key, value, function(err, res) { redisClient.sadd(key, value, function(err, res) {
@ -10,11 +12,7 @@ module.exports = function(redisClient, module) {
module.setsAdd = function(keys, value, callback) { module.setsAdd = function(keys, value, callback) {
callback = callback || function() {}; callback = callback || function() {};
var multi = redisClient.multi(); helpers.multiKeysValue(redisClient, 'sadd', keys, value, function(err, res) {
for (var i=0; i<keys.length; ++i) {
multi.sadd(keys[i], value);
}
multi.exec(function(err, res) {
callback(err); callback(err);
}); });
}; };
@ -28,67 +26,35 @@ module.exports = function(redisClient, module) {
module.setsRemove = function(keys, value, callback) { module.setsRemove = function(keys, value, callback) {
callback = callback || function() {}; callback = callback || function() {};
helpers.multiKeysValue(redisClient, 'srem', keys, value, function(err, res) {
var multi = redisClient.multi();
for(var i=0; i<keys.length; ++i) {
multi.srem(keys[i], value);
}
multi.exec(function(err, res) {
callback(err); callback(err);
}); });
}; };
module.isSetMember = function(key, value, callback) { module.isSetMember = function(key, value, callback) {
redisClient.sismember(key, value, function(err, result) { redisClient.sismember(key, value, function(err, result) {
if(err) { callback(err, result === 1);
return callback(err);
}
callback(null, result === 1);
}); });
}; };
module.isSetMembers = function(key, values, callback) { module.isSetMembers = function(key, values, callback) {
var multi = redisClient.multi(); helpers.multiKeyValues(redisClient, 'sismember', key, values, function(err, results) {
for (var i=0; i<values.length; ++i) { callback(err, results ? helpers.resultsToBool(results) : null);
multi.sismember(key, values[i]); });
}
execSetMembers(multi, callback);
}; };
module.isMemberOfSets = function(sets, value, callback) { module.isMemberOfSets = function(sets, value, callback) {
var multi = redisClient.multi(); helpers.multiKeysValue(redisClient, 'sismember', sets, value, function(err, results) {
for (var i = 0; i < sets.length; ++i) { callback(err, results ? helpers.resultsToBool(results) : null);
multi.sismember(sets[i], value);
}
execSetMembers(multi, callback);
};
function execSetMembers(multi, callback) {
multi.exec(function(err, results) {
if (err) {
return callback(err);
}
for (var i=0; i<results.length; ++i) {
results[i] = results[i] === 1;
}
callback(null, results);
}); });
} };
module.getSetMembers = function(key, callback) { module.getSetMembers = function(key, callback) {
redisClient.smembers(key, callback); redisClient.smembers(key, callback);
}; };
module.getSetsMembers = function(keys, callback) { module.getSetsMembers = function(keys, callback) {
var multi = redisClient.multi(); helpers.multiKeys(redisClient, 'smembers', keys, callback);
for (var i=0; i<keys.length; ++i) {
multi.smembers(keys[i]);
}
multi.exec(callback);
}; };
module.setCount = function(key, callback) { module.setCount = function(key, callback) {
@ -96,14 +62,11 @@ module.exports = function(redisClient, module) {
}; };
module.setsCount = function(keys, callback) { module.setsCount = function(keys, callback) {
var multi = redisClient.multi(); helpers.multiKeys(redisClient, 'scard', keys, callback);
for (var i=0; i<keys.length; ++i) {
multi.scard(keys[i]);
}
multi.exec(callback);
}; };
module.setRemoveRandom = function(key, callback) { module.setRemoveRandom = function(key, callback) {
callback = callback || function() {};
redisClient.spop(key, callback); redisClient.spop(key, callback);
}; };

@ -1,6 +1,9 @@
"use strict"; "use strict";
module.exports = function(redisClient, module) { module.exports = function(redisClient, module) {
var helpers = module.helpers.redis;
module.sortedSetAdd = function(key, score, value, callback) { module.sortedSetAdd = function(key, score, value, callback) {
callback = callback || function() {}; callback = callback || function() {};
if (Array.isArray(score) && Array.isArray(value)) { if (Array.isArray(score) && Array.isArray(value)) {
@ -49,17 +52,14 @@ module.exports = function(redisClient, module) {
if (!Array.isArray(value)) { if (!Array.isArray(value)) {
value = [value]; value = [value];
} }
var multi = redisClient.multi();
for(var i=0; i<value.length; ++i) { helpers.multiKeyValues(redisClient, 'zrem', key, value, function(err, result) {
multi.zrem(key, value[i]);
}
multi.exec(function(err) {
callback(err); callback(err);
}); });
}; };
module.sortedSetsRemove = function(keys, value, callback) { module.sortedSetsRemove = function(keys, value, callback) {
multi('zrem', keys, value, function(err) { helpers.multiKeysValue(redisClient, 'zrem', keys, value, function(err, result) {
callback(err); callback(err);
}); });
}; };
@ -70,7 +70,7 @@ module.exports = function(redisClient, module) {
for(var i=0; i<keys.length; ++i) { for(var i=0; i<keys.length; ++i) {
multi.zremrangebyscore(keys[i], min, max); multi.zremrangebyscore(keys[i], min, max);
} }
multi.exec(function(err) { multi.exec(function(err, result) {
callback(err); callback(err);
}); });
}; };
@ -181,15 +181,11 @@ module.exports = function(redisClient, module) {
}; };
module.sortedSetsScore = function(keys, value, callback) { module.sortedSetsScore = function(keys, value, callback) {
multi('zscore', keys, value, callback); helpers.multiKeysValue(redisClient, 'zscore', keys, value, callback);
}; };
module.sortedSetScores = function(key, values, callback) { module.sortedSetScores = function(key, values, callback) {
var multi = redisClient.multi(); helpers.multiKeyValues(redisClient, 'zscore', key, values, callback);
for(var i=0; i<values.length; ++i) {
multi.zscore(key, values[i]);
}
multi.exec(callback);
}; };
module.isSortedSetMember = function(key, value, callback) { module.isSortedSetMember = function(key, value, callback) {
@ -199,34 +195,20 @@ module.exports = function(redisClient, module) {
}; };
module.isSortedSetMembers = function(key, values, callback) { module.isSortedSetMembers = function(key, values, callback) {
var multi = redisClient.multi(); helpers.multiKeyValues(redisClient, 'zscore', key, values, function(err, results) {
for (var i=0; i<values.length; ++i) {
multi.zscore(key, values[i]);
}
multi.exec(function(err, results) {
if (err) { if (err) {
return callback(err); return callback(err);
} }
results = results.map(function(score) { callback(null, results.map(Boolean));
return !!score;
});
callback(null, results);
}); });
}; };
module.isMemberOfSortedSets = function(keys, value, callback) { module.isMemberOfSortedSets = function(keys, value, callback) {
var multi = redisClient.multi(); helpers.multiKeysValue(redisClient, 'zscore', keys, value, function(err, results) {
for (var i=0; i<keys.length; ++i) {
multi.zscore(keys[i], value);
}
multi.exec(function(err, results) {
if (err) { if (err) {
return callback(err); return callback(err);
} }
results = results.map(function(score) { callback(null, results.map(Boolean));
return !!score;
});
callback(null, results);
}); });
}; };
@ -235,21 +217,9 @@ module.exports = function(redisClient, module) {
for (var i=0; i<keys.length; ++i) { for (var i=0; i<keys.length; ++i) {
multi.zrange(keys[i], 0, -1); multi.zrange(keys[i], 0, -1);
} }
multi.exec(function(err, results) { multi.exec(callback);
callback(err, results);
});
}; };
function multi(command, keys, value, callback) {
var m = redisClient.multi();
for(var x=0; x<keys.length; ++x) {
m[command](keys[x], value);
}
m.exec(callback);
}
module.getSortedSetUnion = function(sets, start, stop, callback) { module.getSortedSetUnion = function(sets, start, stop, callback) {
sortedSetUnion(sets, false, start, stop, callback); sortedSetUnion(sets, false, start, stop, callback);
}; };

@ -83,7 +83,7 @@
Panel Panel
</div> </div>
</div> </div>
<div class="panel panel-default pointer" data-container-html='<div class="panel panel-default"><div class="panel-heading">{title}</div><div class="panel-body">{body}</div></div>'> <div class="panel panel-default pointer" data-container-html='<div class="panel panel-default"><div class="panel-heading"><h3 class="panel-title">{title}</h3></div><div class="panel-body">{body}</div></div>'>
<div class="panel-heading"> <div class="panel-heading">
Panel Header Panel Header
<div class="pull-right color-selector"> <div class="pull-right color-selector">

Loading…
Cancel
Save