relocate and rename Storage.js. implement a simple, non-persistent in memory datastore for those who'd rather not bother with mongodb. Continue to default to previous values.
parent
05ce2695b2
commit
3928c89d35
@ -0,0 +1,48 @@
|
||||
console.log("Loading amnesiadb. This is a horrible idea in production, as data *will not* persist\n");
|
||||
|
||||
/*
|
||||
As the comment says, this module does nothing to make your data persist
|
||||
across sessions. If your process crashes for any reason, all pads will die.
|
||||
|
||||
This might be useful if you want to debug other parts of the codebase, if
|
||||
you want to test out cryptpad without installing mongodb locally, or if
|
||||
you don't want to rely on a remote db like the one at mongolab.com.
|
||||
|
||||
Maybe you just like the idea of a forgetful pad? To use this module, edit
|
||||
config.js to include a directive `storage: './storage/amnesia'
|
||||
|
||||
Enjoy!
|
||||
*/
|
||||
|
||||
var db=[],
|
||||
index=0;
|
||||
|
||||
var insert = function(channelName, content, cb){
|
||||
var val = {
|
||||
id:index++,
|
||||
chan: channelName,
|
||||
msg: content,
|
||||
time: new Date().getTime(),
|
||||
};
|
||||
db.push(val);
|
||||
cb();
|
||||
};
|
||||
|
||||
var getMessages = function(channelName, cb){
|
||||
db.sort(function(a,b){
|
||||
return a.id - b.id;
|
||||
});
|
||||
db.filter(function(val){
|
||||
return val.chan == channelName;
|
||||
}).forEach(function(doc){
|
||||
console.log(doc);
|
||||
cb(doc.msg);
|
||||
});
|
||||
};
|
||||
|
||||
module.exports.create = function(conf, cb){
|
||||
cb({
|
||||
message: insert,
|
||||
getMessages: getMessages,
|
||||
});
|
||||
};
|
Loading…
Reference in New Issue