def get(self):
     coll = IosCollection('meta')
     kwargs = dict()
     for key in self.request.arguments:
         kwargs[key] = self.get_argument(key)
     if 'type' in kwargs:
         show_type = kwargs['type']
     else:
         show_type = "dogfood"
     pipeline = [{"$match": {"type": show_type}},
                 {"$sort": {"timestamp": -1}},
                 {"$group": {"_id": "$bundleID", "app_info": {"$first": "$$ROOT"}}},
                 ]
     ori_apps = list(coll.aggregate(pipeline))
     apps = recomposeAppInfo(ori_apps, u"i")
     self.write(JSONEncoder().encode(apps))
 def get(self, pkg_name):
     coll = AndroidCollection('meta')
     kwargs = dict()
     for key in self.request.arguments:
         kwargs[key] = self.get_argument(key)
     if 'type' in kwargs:
         show_type = kwargs['type']
     else:
         show_type = "dogfood"
     pipeline = [{"$match": {"package_name": pkg_name, "type": show_type}},
                 {"$sort": {"version_code": -1}},
                 {"$limit": 1},
                 {"$group": {"_id": "$md5", "app_info": {"$first": "$$ROOT"}}},
                 ]
     ori_apps = list(coll.aggregate(pipeline))
     apps = recomposeAppInfo(ori_apps, u"a")
     self.write(JSONEncoder().encode(apps))