From 056160edd629372ff93619be7e130a26e2377f9b Mon Sep 17 00:00:00 2001
From: Kai Reinhard <K.Reinhard@micromata.de>
Date: Sun, 16 Dec 2018 15:25:17 +0000
Subject: [PATCH] file lists...
---
borgbutler-server/src/main/java/de/micromata/borgbutler/server/rest/ArchivesRest.java | 21 ++++++++++++++-------
1 files changed, 14 insertions(+), 7 deletions(-)
diff --git a/borgbutler-server/src/main/java/de/micromata/borgbutler/server/rest/ArchivesRest.java b/borgbutler-server/src/main/java/de/micromata/borgbutler/server/rest/ArchivesRest.java
index 8f3e88d..902848c 100644
--- a/borgbutler-server/src/main/java/de/micromata/borgbutler/server/rest/ArchivesRest.java
+++ b/borgbutler-server/src/main/java/de/micromata/borgbutler/server/rest/ArchivesRest.java
@@ -4,6 +4,7 @@
import de.micromata.borgbutler.data.Archive;
import de.micromata.borgbutler.data.Repository;
import de.micromata.borgbutler.json.JsonUtils;
+import de.micromata.borgbutler.json.borg.BorgFilesystemItem;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -12,6 +13,7 @@
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.MediaType;
+import java.util.List;
@Path("/archives")
public class ArchivesRest {
@@ -39,16 +41,21 @@
@Produces(MediaType.APPLICATION_JSON)
/**
*
- * @param repo Name of repository ({@link Repository#getName()}.
- * @param archive Id or name of archive.
+ * @param archiveId Id or name of archive.
+ * @param maxResultSize maximum number of file items to return (default is 50).
* @param prettyPrinter If true then the json output will be in pretty format.
* @return Repository (including list of archives) as json string.
* @see JsonUtils#toJson(Object, boolean)
*/
- public String getArchiveFileLIst(@QueryParam("repo") String repoName,
- @QueryParam("archive") String archiveIdOrName, @QueryParam("force") boolean force,
- @QueryParam("prettyPrinter") boolean prettyPrinter) {
- Archive archive = ButlerCache.getInstance().getArchive(repoName, archiveIdOrName, force);
- return JsonUtils.toJson(archive, prettyPrinter);
+ public String getArchiveFileLIst(@QueryParam("archiveId") String archiveId,
+ @QueryParam("maxResultSize") Integer maxResultSize,
+ @QueryParam("force") boolean force,
+ @QueryParam("prettyPrinter") boolean prettyPrinter) {
+ int maxSize = maxResultSize != null ? maxResultSize : 50;
+ List<BorgFilesystemItem> items = ButlerCache.getInstance().getArchiveContent(archiveId, maxSize);
+ if (items == null) {
+ return "";
+ }
+ return JsonUtils.toJson(items, prettyPrinter);
}
}
--
Gitblit v1.10.0