nitweb: catalog api use mpackage_stats
authorAlexandre Terrasa <alexandre@moz-code.org>
Tue, 15 Aug 2017 20:48:59 +0000 (16:48 -0400)
committerAlexandre Terrasa <alexandre@moz-code.org>
Tue, 26 Sep 2017 15:10:05 +0000 (11:10 -0400)
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

src/web/api_catalog.nit

index 79bb111..26f6ac3 100644 (file)
@@ -89,23 +89,7 @@ class APICatalogPackages
                var mpackages = config.catalog.mpackages.values.to_a
                mpackages_sorter.sort(mpackages)
                var response = new JsonArray.from(mpackages)
-               res.json paginate(response, page, limit)
-       end
-end
-
-class APICatalogStats
-       super APICatalogHandler
-
-       redef fun get(req, res) do
-               var obj = new JsonObject
-               obj["packages"] = config.model.mpackages.length
-               obj["maintainers"] = config.catalog.maint2proj.length
-               obj["contributors"] = config.catalog.contrib2proj.length
-               obj["modules"] = config.catalog.mmodules.sum
-               obj["classes"] = config.catalog.mclasses.sum
-               obj["methods"] = config.catalog.mmethods.sum
-               obj["loc"] = config.catalog.loc.sum
-               res.json obj
+               res.json paginate(response, response.length, page, limit)
        end
 end
 
@@ -148,6 +132,17 @@ class APICatalogContributors
        end
 end
 
+# Get the catalog statistics
+#
+# `GET /stats`: return the catalog statistics
+class APICatalogStats
+       super APICatalogHandler
+
+       redef fun get(req, res) do
+               res.json config.catalog.catalog_stats
+       end
+end
+
 redef class Catalog
 
        # Build the catalog from `mpackages`