From e70f062550b0c611f076aa784f284a27e0ffe715 Mon Sep 17 00:00:00 2001
From: Kai Reinhard <K.Reinhard@micromata.de>
Date: Sat, 05 Jan 2019 14:15:43 +0000
Subject: [PATCH] Job monitor...

---
 borgbutler-core/src/main/java/de/micromata/borgbutler/BorgCommands.java |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/borgbutler-core/src/main/java/de/micromata/borgbutler/BorgCommands.java b/borgbutler-core/src/main/java/de/micromata/borgbutler/BorgCommands.java
index 72f2aee..7f0a706 100644
--- a/borgbutler-core/src/main/java/de/micromata/borgbutler/BorgCommands.java
+++ b/borgbutler-core/src/main/java/de/micromata/borgbutler/BorgCommands.java
@@ -174,14 +174,18 @@
         // The returned job might be an already queued or running one!
         final ProgressInfo progressInfo = new ProgressInfo()
                 .setMessage("Getting file list...")
-                .setCurrent(0);
+                .setCurrent(0)
+                .setTotal(archive.getStats().getNfiles());
         BorgJob<List<BorgFilesystemItem>> job = BorgQueueExecutor.getInstance().execute(new BorgJob<List<BorgFilesystemItem>>(command) {
             @Override
             protected void processStdOutLine(String line, int level) {
                 BorgFilesystemItem item = JsonUtils.fromJson(BorgFilesystemItem.class, line);
                 item.setMtime(DateUtils.format(item.getMtime()));
                 payload.add(item);
-                setProgressInfo(progressInfo.incrementCurrent());
+                if ("-".equals(item.getType())) {
+                    // Only increment for files, because number of files is the total.
+                    setProgressInfo(progressInfo.incrementCurrent());
+                }
             }
         });
         job.payload = new ArrayList<>();

--
Gitblit v1.10.0