lib/trifle/stats/driver/mongo.rb in trifle-stats-0.4.1 vs lib/trifle/stats/driver/mongo.rb in trifle-stats-1.0.0
- old
+ new
@@ -41,16 +41,15 @@
upsert: true
}
}
end
- def get(key:)
- pkey = key.join(separator)
+ def get(keys:)
+ pkeys = keys.map { |key| key.join(separator) }
+ data = collection.find(key: { '$in' => pkeys })
+ map = data.inject({}) { |o, d| o.merge(d['key'] => d['data']) }
- data = collection.find(key: pkey).limit(1).first
- return {} if data.nil? || data['data'].nil?
-
- data['data']
+ pkeys.map { |pkey| map[pkey] || {} }
end
private
def collection