|
|
@ -54,8 +54,8 @@ var multi_caching = function (caches) { |
|
|
|
|
|
|
|
self.queues[key] = [cb]; |
|
|
|
|
|
|
|
function fillCallbacks(err, data){ |
|
|
|
self.queues[key].forEach(function(f){ |
|
|
|
function fillCallbacks(err, data) { |
|
|
|
self.queues[key].forEach(function(f) { |
|
|
|
f(err, data); |
|
|
|
}); |
|
|
|
delete self.queues[key]; |
|
|
@ -77,7 +77,7 @@ var multi_caching = function (caches) { |
|
|
|
} else { |
|
|
|
work(function (err, data) { |
|
|
|
if (err) { |
|
|
|
fillCallbacks(err, data); |
|
|
|
fillCallbacks(err, null); |
|
|
|
return; |
|
|
|
} |
|
|
|
var opts = { |
|
|
@ -86,7 +86,11 @@ var multi_caching = function (caches) { |
|
|
|
ttl: ttl |
|
|
|
}; |
|
|
|
set_in_multiple_caches(caches, opts, function (err) { |
|
|
|
fillCallbacks(null, data); |
|
|
|
if (err) { |
|
|
|
fillCallbacks(err); |
|
|
|
} else { |
|
|
|
fillCallbacks(null, data); |
|
|
|
} |
|
|
|
}); |
|
|
|
}); |
|
|
|
} |
|
|
|