UNPKG

latte_db

Version:
106 lines (104 loc) 2.52 kB
(function() { var latte_lib = require("latte_lib"); var latte_verify = require("latte_verify"); var toValue = function(v) { if(latte_lib.isObject(v)) { return JSON.stringify(v); }else if(latte_lib.object.isLatteObject(v)){ return JSON.stringify(v); }else{ return v; } } this.create = function(config) { var templateClass = function(key, value) { try { value = latte_verify.verify(value, config); }catch(err) { console.log(value, err); return null; } this.key = key; this.data = value; this._data = latte_lib.clone(value); console.log(value); }; (function() { this.set = function(value) { try { value = latte_verify.verify(value, config); }catch(err) { console.log("string set error"); return; } this.data = value; } this.get = function() { return this.data; } this.flush = function() { this._data = this.data; } }).call(templateClass.prototype); (function() { this.add = function(g) { return function(connect, callback) { connect.set(g.key, toValue(g.data), function(err, data) { if(err) { return callback(err); } if(data == 0) { latte_lib.debug.info("redis string add ", g.key, "return 0"); } return callback(err, g); }); } } this.update = function(g) { return function(connect, callback) { connect.set(g.key, toValue(g.data), function(err, data) { if(err) { return callback(err); } if(data == 0) { latte_lib.debug.info("redis string update ", g.key, "return 0"); } g.flush(); return callback(err, g); }); } } this.del = function(g) { return function(connect, callback) { connect.del(g.key, function(err, data) { if(err) { return callback(err); } if(data == 0) { latte_lib.debug.info("redis string del ", g.key, "return 0"); } return callback(err, g); }); } } this.query = function(key) { return function(connect, callback) { connect.get(key, function(err, data) { if(err) { return callback(err); } if(data == null) { latte_lib.debug.info("redis string query ", key, "return 0"); } var g = new templateClass(key, data); callback(err, g); }); } } this.create = function(key, value) { return new templateClass(key, value); } }).call(templateClass); return templateClass; } }).call(module.exports);