Files
NodeBB/src/database/redis/list.js

60 lines
1.3 KiB
JavaScript
Raw Normal View History

2017-02-18 01:56:23 -07:00
'use strict';
2014-04-11 15:29:01 -04:00
module.exports = function (redisClient, module) {
module.listPrepend = function (key, value, callback) {
callback = callback || function () {};
2017-05-19 20:32:31 -04:00
if (!key) {
return callback();
}
2017-02-18 15:05:36 -07:00
redisClient.lpush(key, value, function (err) {
2014-12-29 16:20:35 -05:00
callback(err);
});
2014-04-11 15:29:01 -04:00
};
module.listAppend = function (key, value, callback) {
callback = callback || function () {};
2017-05-19 20:32:31 -04:00
if (!key) {
return callback();
}
2017-02-18 15:05:36 -07:00
redisClient.rpush(key, value, function (err) {
2014-12-29 16:20:35 -05:00
callback(err);
});
2014-04-11 15:29:01 -04:00
};
module.listRemoveLast = function (key, callback) {
callback = callback || function () {};
2017-05-19 20:32:31 -04:00
if (!key) {
return callback();
}
2014-04-11 15:29:01 -04:00
redisClient.rpop(key, callback);
};
module.listRemoveAll = function (key, value, callback) {
callback = callback || function () {};
2017-05-19 20:32:31 -04:00
if (!key) {
return callback();
}
2017-02-18 15:05:36 -07:00
redisClient.lrem(key, 0, value, function (err) {
2014-12-29 16:20:35 -05:00
callback(err);
});
2014-04-11 15:29:01 -04:00
};
module.listTrim = function (key, start, stop, callback) {
callback = callback || function () {};
2017-05-19 20:32:31 -04:00
if (!key) {
return callback();
}
2017-02-18 15:05:36 -07:00
redisClient.ltrim(key, start, stop, function (err) {
2014-12-29 16:20:35 -05:00
callback(err);
});
2014-04-11 15:29:01 -04:00
};
2014-07-28 14:20:24 -04:00
module.getListRange = function (key, start, stop, callback) {
callback = callback || function () {};
2017-05-19 20:32:31 -04:00
if (!key) {
return callback();
}
2014-12-29 16:20:35 -05:00
redisClient.lrange(key, start, stop, callback);
2014-07-28 14:20:24 -04:00
};
2017-02-18 02:30:48 -07:00
};