From 47b27687ea1e77e7d6ae26eb0e47ab85e90c5d50 Mon Sep 17 00:00:00 2001
From: Kai Reinhard <K.Reinhard@micromata.de>
Date: Sun, 16 Dec 2018 00:20:08 +0000
Subject: [PATCH] Lazy loading of repos.

---
 borgbutler-server/src/main/java/de/micromata/borgbutler/server/rest/ReposRest.java |   38 +++++++++++++++++---------------------
 1 files changed, 17 insertions(+), 21 deletions(-)

diff --git a/borgbutler-server/src/main/java/de/micromata/borgbutler/server/rest/ReposRest.java b/borgbutler-server/src/main/java/de/micromata/borgbutler/server/rest/ReposRest.java
index e337b50..06a798c 100644
--- a/borgbutler-server/src/main/java/de/micromata/borgbutler/server/rest/ReposRest.java
+++ b/borgbutler-server/src/main/java/de/micromata/borgbutler/server/rest/ReposRest.java
@@ -21,6 +21,23 @@
     private static Logger log = LoggerFactory.getLogger(ReposRest.class);
 
     @GET
+    @Path("list")
+    @Produces(MediaType.APPLICATION_JSON)
+    /**
+     *
+     * @param prettyPrinter If true then the json output will be in pretty format.
+     * @return A list of repositories of type {@link BorgRepository}.
+     * @see JsonUtils#toJson(Object, boolean)
+     */
+    public String getList(@QueryParam("prettyPrinter") boolean prettyPrinter) {
+        List<Repository> repositories = ButlerCache.getInstance().getAllRepositories();
+        if (CollectionUtils.isEmpty(repositories)) {
+            return "";
+        }
+        return JsonUtils.toJson(repositories, prettyPrinter);
+    }
+
+    @GET
     @Path("repo")
     @Produces(MediaType.APPLICATION_JSON)
     /**
@@ -72,25 +89,4 @@
         Archive archive = ButlerCache.getInstance().getArchive(repoName, archiveIdOrName, force);
         return JsonUtils.toJson(archive, prettyPrinter);
     }
-
-    @GET
-    @Path("list")
-    @Produces(MediaType.APPLICATION_JSON)
-    /**
-     *
-     * @param force If true, a reload of all repositories is forced.
-     * @param prettyPrinter If true then the json output will be in pretty format.
-     * @return A list of repositories of type {@link BorgRepository}.
-     * @see JsonUtils#toJson(Object, boolean)
-     */
-    public String getList(@QueryParam("force") boolean force, @QueryParam("prettyPrinter") boolean prettyPrinter) {
-        if (force) {
-            ButlerCache.getInstance().clearRepoCacheAccess();
-        }
-        List<Repository> repositories = ButlerCache.getInstance().getAllRepositories();
-        if (CollectionUtils.isEmpty(repositories)) {
-            return "";
-        }
-        return JsonUtils.toJson(repositories, prettyPrinter);
-    }
 }

--
Gitblit v1.10.0