diff --git a/install/databases.js b/install/databases.js index 752e36e0d6..08907dca3b 100644 --- a/install/databases.js +++ b/install/databases.js @@ -12,7 +12,7 @@ function success(err, config, callback) { return callback(new Error('aborted')); } - var database = (config.redis || config.mongo || config.level) ? config.secondary_database : config.database; + var database = (config.redis || config.mongo) ? config.secondary_database : config.database; function dbQuestionsSuccess(err, databaseConfig) { if (!databaseConfig) { @@ -39,15 +39,11 @@ function success(err, config, callback) { password: databaseConfig['mongo:password'], database: databaseConfig['mongo:database'] }; - } else if (database === 'level') { - config.level = { - database: databaseConfig['level:database'] - }; } else { return callback(new Error('unknown database : ' + database)); } - var allQuestions = questions.redis.concat(questions.mongo.concat(questions.level)); + var allQuestions = questions.redis.concat(questions.mongo); for(var x=0;x__> - }; - - module.expireAt = function(key, timestamp, callback) { - // <__< - }; - - module.pexpire = function(key, ms, callback) { - // o_o - }; - - module.pexpireAt = function(key, timestamp, callback) { - // d-_-b - }; -}; \ No newline at end of file diff --git a/src/database/level/sets.js b/src/database/level/sets.js deleted file mode 100644 index b7697f1209..0000000000 --- a/src/database/level/sets.js +++ /dev/null @@ -1,82 +0,0 @@ -"use strict"; - -var async = require('async'); - -module.exports = function(db, module) { - var helpers = module.helpers.level; - - module.setAdd = function(key, value, callback) { - callback = callback || function() {}; - module.getListRange(key, 0, -1, function(err, set) { - if (err) { - return callback(err); - } - if (set.indexOf(value) === -1) { - module.listAppend(key, value, callback); - } else { - callback(null); - } - }); - }; - - module.setsAdd = function(keys, value, callback) { - throw new Error('not-implemented'); - }; - - module.setRemove = function(key, value, callback) { - module.getListRange(key, 0, -1, function(err, set) { - module.set(key, set.splice(set.indexOf(value), 1), callback); - }); - }; - - module.setsRemove = function(keys, value, callback) { - throw new Error('not-implemented'); - }; - - module.isSetMember = function(key, value, callback) { - module.getListRange(key, 0, -1, function(err, set) { - callback(err, set.indexOf(value) !== -1); - }); - }; - - module.isSetMembers = function(key, values, callback) { - var members = {}; - - async.each(values, function(value, next) { - module.isSetMember(key, value, function(err, isMember) { - members[key] = isMember; - }); - }, function(err) { - callback(err, members); - }); - }; - - module.isMemberOfSets = function(sets, value, callback) { - helpers.iterator('isSetMember', sets, value, callback); - }; - - module.getSetMembers = function(key, callback) { - module.getListRange(key, 0, -1, function(err, set) { - callback(err, set); - }); - }; - - module.getSetsMembers = function(keys, callback) { - throw new Error('not-implemented'); - }; - - module.setCount = function(key, callback) { - module.getListRange(key, 0, -1, function(err, set) { - callback(err, set.length); - }); - }; - - module.setRemoveRandom = function(key, callback) { - // how random is this? well, how random are the other implementations of this? - // imo rename this to setRemoveOne - - module.getListRange(key, 1, -1, function(err, set) { - module.set(key, set, callback); - }); - }; -}; \ No newline at end of file diff --git a/src/database/level/sorted.js b/src/database/level/sorted.js deleted file mode 100644 index b974c1a981..0000000000 --- a/src/database/level/sorted.js +++ /dev/null @@ -1,299 +0,0 @@ -"use strict"; - -var async = require('async'); - - -module.exports = function(db, module) { - var helpers = module.helpers.level; - - module.sortedSetAdd = function(key, score, value, callback) { - if (Array.isArray(score) && Array.isArray(value)) { - return sortedSetAddMulti(key, score, value, callback); - } - module.getListRange(key, 0, -1, function(err, set) { - set = set.filter(function(a) {return a.value !== value.toString();}); - - set.push({ - value: value.toString(), - score: parseInt(score, 10) - }); - - set.sort(function(a, b) {return a.score - b.score;}); - module.set(key, set, callback); - }); - }; - - function sortedSetAddMulti(key, scores, values, callback) { - throw new Error('not implemented'); - } - - module.sortedSetsAdd = function(keys, score, value, callback) { - async.each(keys, function(key, next) { - module.sortedSetAdd(key, score, value, next); - }, function(err) { - callback(err); - }); - }; - - module.sortedSetRemove = function(key, value, callback) { - if (!Array.isArray(value)) { - value = [value]; - } - module.getListRange(key, 0, -1, function(err, set) { - set = set.filter(function(a) { return value.indexOf(a) === -1;}); - module.set(key, set, callback); - }); - }; - - module.sortedSetsRemove = function(keys, value, callback) { - async.each(keys, function(key, next) { - module.sortedSetRemove(key, value, next); - }, callback); - }; - - module.sortedSetsRemoveRangeByScore = function(keys, min, max, callback) { - throw new Error('not implemented'); - }; - - function flattenSortedSet(set, callback) { - callback(null, !set.length ? [] : set.reduce(function(a, b) { - return (a.length ? a : [a.value]).concat([b.value]); - })); - } - - module.getSortedSetRange = function(key, start, stop, callback) { - module.getListRange(key, start, stop, function(err, set) { - set = !set.length ? [] : set.reduce(function(a, b) { - return (a.length ? a : [a.value]).concat(b.value); - }); - if (set.value) { - set = [set.value]; - } - callback(err, set); - }); - }; - - module.getSortedSetRevRange = function(key, start, stop, callback) { - module.getListRange(key, start, stop, function(err, set) { - set = !set.length ? [] : set.reverse().reduce(function(a, b) { - return (a.length ? a : [a.value]).concat(b.value); - }); - if (set.value) { - set = [set.value]; - } - callback(err, set); - }); - }; - - module.getSortedSetRevRangeWithScores = function(key, start, stop, callback) { - module.getListRange(key, start, stop, function(err, set) { - if (err) { - return callback(err); - } - set.sort(function(a, b) {return b.score - a.score;}); - callback(null, set); - }); - }; - - module.getSortedSetRangeByScore = function(key, start, count, min, max, callback) { - module.getListRange(key, 0, -1, function(err, list) { - if (min && max) { - list.filter(function(a) { - return a.score >= min && a.score <= max; // to check: greater or and equal? - }); - } - - flattenSortedSet(list.slice(start ? start : 0, count ? count : list.length), callback); - }); - }; - - module.getSortedSetRevRangeByScore = function(key, start, count, max, min, callback) { - module.getListRange(key, 0, -1, function(err, list) { - if (min && max) { - list.filter(function(a) { - return a.score >= min && a.score <= max; // to check: greater or and equal? - }); - } - - flattenSortedSet(list.slice(start ? start : 0, count ? count : list.length).reverse(), callback); - }); - }; - - module.sortedSetCount = function(key, min, max, callback) { - module.getListRange(key, 0, -1, function(err, list) { - list.filter(function(a) { - return a.score >= min && a.score <= max; // to check: greater or and equal? - }); - - callback(err, list.length); - }); - }; - - module.sortedSetCard = function(key, callback) { - module.getListRange(key, 0, -1, function(err, list) { - callback(err, list.length); - }); - }; - - module.sortedSetsCard = function(keys, callback) { - async.map(keys, module.sortedSetCard, callback); - }; - - module.sortedSetRank = function(key, value, callback) { - module.getListRange(key, 0, -1, function(err, list) { - for (var i = 0, ii=list.length; i< ii; i++) { - if (list[i].value === value) { - return callback(err, i); - } - } - - callback(err, null); - }); - }; - - module.sortedSetsRanks = function(keys, values, callback) { - throw new Error('not implemented'); - }; - - module.sortedSetRanks = function(key, values, callback) { - throw new Error('not implemented'); - }; - - module.sortedSetRevRank = function(key, value, callback) { - module.getListRange(key, 0, -1, function(err, list) { - for (var i = list.length - 1, ii=0; i > ii; i--) { - if (list[i].value === value.toString()) { - return callback(err, i); - } - } - - callback(err, null); - }); - }; - - module.sortedSetScore = function(key, value, callback) { - module.getListRange(key, 0, -1, function(err, list) { - for (var i = 0, ii=list.length; i< ii; i++) { - if (list[i].value === value.toString()) { - return callback(err, list[i].score); - } - } - - callback(err, null); - }); - }; - - module.sortedSetScores = function(key, values, callback) { - values = values.map(function(value) { - return value ? value.toString() : value; - }); - - module.getListRange(key, 0, -1, function(err, list) { - if (err) { - return callback(err); - } - - var map = {}; - list = list.filter(function(item) { - return values.indexOf(item.value) !== -1; - }).forEach(function(item) { - map[item.value] = item.score; - }); - - var returnData = new Array(values.length), - score; - - for(var i=0; i