diff --git a/lib/search.js b/lib/search.js index 75df11f5f3e..1be42ce3311 100644 --- a/lib/search.js +++ b/lib/search.js @@ -59,9 +59,20 @@ function search (args, silent, staleness, cb_) { } function getFilteredData (staleness, args, notArgs, cb) { - registry.get("/-/all", null, staleness, function (er, data) { - if (er) return cb(er) - return cb(null, filter(data, args, notArgs)) + var leftToRun = args.length + var aggregateData = {} + + args.forEach(function (it) { + var u = "/-/search/\"" + it + "\"/\"" + it + "\"/25" + registry.get(u, null, staleness, function (er, data) { + if (er) return cb(er) + Object.keys(data).forEach(function (key) { + aggregateData[key] = data[key] + }) + if (--leftToRun == 0) { + return cb(null, filter(aggregateData, args, notArgs)) + } + }) }) }