3 ms·
Or if you want more re-usability: getFromCache = function (id, query, callback) { asynchronousCache.get(['id', id].join(':'), function(err, myThing) {
by brendoncrawford 15y ago
Or if you want more re-usability:
getFromCache = function (id, query, callback) {
asynchronousCache.get(['id', id].join(':'), function(err, myThing) {
if (myThing == null) {
asynchronousDB.query(query, function(err, myThing) {
callback(myThing);
});
}
else {
callback(myThing);
}
});
};
getFromCacheSomething = function (id, callback) {
var query = buildQuery("SELECT * from something WHERE id = $id", {id:id});
getFromCache(id, query, callback);
}
getFromCacheSomething(3222, function (myThing) {
console.log('myThing:', myThing);
});
- davej 15y agoDon't forget to bubble errors up the callback chain along with return values (I always forget that too): getFromCache = function (id, query, callback) { asynchronousCache.get(['id', id].join(':'), function(err, myThing) { if (myThing == null) { asynchronousDB.query(query, function(err, myThing) { callback(err, myThing); }); } else { callback(err, myThing); } }); };