From ea8ad4f8ce1208a08efc8557240c5499b06e4b9a Mon Sep 17 00:00:00 2001
From: Kai Reinhard <K.Reinhard@micromata.de>
Date: Sun, 18 Apr 2021 21:09:41 +0000
Subject: [PATCH] Code cleanup, json.prettyprint removed.

---
 borgbutler-server/src/main/kotlin/de/micromata/borgbutler/server/rest/JobsRest.kt |   79 +++++++++++++++++----------------------
 1 files changed, 35 insertions(+), 44 deletions(-)

diff --git a/borgbutler-server/src/main/kotlin/de/micromata/borgbutler/server/rest/JobsRest.kt b/borgbutler-server/src/main/kotlin/de/micromata/borgbutler/server/rest/JobsRest.kt
index f614f8b..9dc408e 100644
--- a/borgbutler-server/src/main/kotlin/de/micromata/borgbutler/server/rest/JobsRest.kt
+++ b/borgbutler-server/src/main/kotlin/de/micromata/borgbutler/server/rest/JobsRest.kt
@@ -23,7 +23,6 @@
     /**
      * @param repo If given, only the job queue of the given repo will be returned.
      * @param testMode If true, then a test job list is created.
-     * @param prettyPrinter If true then the json output will be in pretty format.
      * @return Job queues as json string.
      * @see JsonUtils.toJson
      */
@@ -31,13 +30,12 @@
     fun getJobs(
         @RequestParam("repo", required = false) repo: String?,
         @RequestParam("testMode", required = false) testMode: Boolean?,
-        @RequestParam("oldJobs", required = false) oldJobs: Boolean?,
-        @RequestParam("prettyPrinter", required = false) prettyPrinter: Boolean?
-    ): String {
+        @RequestParam("oldJobs", required = false) oldJobs: Boolean?
+    ): List<JsonJobQueue> {
         log.debug("getJobs repo=$repo, oldJobs=$oldJobs")
         if (testMode == true) {
             // Return dynamic test queue:
-            return returnTestList(oldJobs, prettyPrinter)
+            return returnTestList(oldJobs)
         }
         var validRepo = false
         if (StringUtils.isNotBlank(repo) && "null" != repo && "undefined" != repo) {
@@ -46,19 +44,17 @@
         val borgQueueExecutor = BorgQueueExecutor.getInstance()
         val queueList = mutableListOf<JsonJobQueue>()
         if (validRepo) { // Get only the queue of the given repo:
-            val queue = getQueue(repo, oldJobs)
-            if (queue != null) {
-                queueList.add(queue)
+            getQueue(repo, oldJobs)?.let {
+                queueList.add(it)
             }
         } else { // Get all the queues (of all repos).
-            for (rep in borgQueueExecutor.getRepos()) {
-                val queue = getQueue(rep, oldJobs)
-                if (queue != null) {
-                    queueList.add(queue)
+            for (rep in borgQueueExecutor.repos) {
+                getQueue(rep, oldJobs)?.let {
+                    queueList.add(it)
                 }
             }
         }
-        return JsonUtils.toJson(queueList, prettyPrinter)
+        return queueList
     }
 
     private fun getQueue(repo: String?, oldJobs: Boolean?): JsonJobQueue? {
@@ -66,12 +62,8 @@
         val repoConfig = ConfigurationHandler.getConfiguration().getRepoConfig(repo) ?: return null
         val borgJobList = borgQueueExecutor.getJobListCopy(repoConfig, oldJobs == true)
         if (CollectionUtils.isEmpty(borgJobList)) return null
-        val queue: JsonJobQueue = JsonJobQueue().setRepo(repoConfig.getDisplayName())
-        queue.setJobs(mutableListOf())
-        for (borgJob in borgJobList) {
-            val job = JsonJob(borgJob)
-            queue.getJobs().add(job)
-        }
+        val queue: JsonJobQueue = JsonJobQueue().setRepo(repoConfig.displayName)
+        queue.jobs = borgJobList.map { JsonJob(it) }
         return queue
     }
 
@@ -94,10 +86,9 @@
      * Only for test purposes and development.
      *
      * @param oldJobs
-     * @param prettyPrinter
      * @return
      */
-    private fun returnTestList(oldJobs: Boolean?, prettyPrinter: Boolean?): String {
+    private fun returnTestList(oldJobs: Boolean?): List<JsonJobQueue> {
         var list = if (oldJobs == true) oldJobsTestList else testList
         if (list == null) {
             list = mutableListOf()
@@ -117,11 +108,11 @@
             }
         } else if (oldJobs != true) {
             for (jobQueue in list) {
-                for (job in jobQueue.getJobs()) {
-                    if (job.getStatus() != AbstractJob.Status.RUNNING) continue
-                    var current: Long = job.getProgressInfo().getCurrent()
-                    val total: Long = job.getProgressInfo().getTotal()
-                    current += if (StringUtils.startsWith(job.getProgressInfo().getMessage(), "Calculating")) {
+                for (job in jobQueue.jobs) {
+                    if (job.status != AbstractJob.Status.RUNNING) continue
+                    var current: Long = job.progressInfo.current
+                    val total: Long = job.progressInfo.total
+                    current += if (StringUtils.startsWith(job.progressInfo.message, "Calculating")) {
                         // Info is a faster operation:
                         (Math.random() * total / 5).toLong()
                     } else {
@@ -131,16 +122,16 @@
                     if (current > total) {
                         current = 0 // Reset to beginning.
                     }
-                    job.getProgressInfo().setCurrent(current)
-                    if (job.getProgressText().startsWith("Calculating")) {
-                        job.getProgressInfo()
-                            .setMessage("Calculating statistics...  " + Math.round((100 * current / total).toFloat()) + "%")
+                    job.progressInfo.current = current
+                    if (job.progressText.startsWith("Calculating")) {
+                        job.progressInfo.message =
+                            "Calculating statistics...  " + Math.round((100 * current / total).toFloat()) + "%"
                     }
                     job.buildProgressText()
                 }
             }
         }
-        return JsonUtils.toJson(list, prettyPrinter)
+        return list
     }
 
     /**
@@ -169,28 +160,28 @@
             .setProgressInfo(progressInfo)
             .setStatus(AbstractJob.Status.QUEUED)
         if ("info" == operation) {
-            progressInfo.setMessage("Calculating statistics... ")
-            job.setDescription("Loading info of archive '" + host + "-2018-12-05T23:10:33' of repo '" + queue.getRepo() + "'.")
-                .setCommandLineAsString("borg info --json --log-json --progress ssh://...:23/./backups/$host::$host-2018-12-05T23:10:33")
+            progressInfo.message = "Calculating statistics... "
+            job.setDescription("Loading info of archive '" + host + "-2018-12-05T23:10:33' of repo '" + queue.repo + "'.").commandLineAsString =
+                "borg info --json --log-json --progress ssh://...:23/./backups/$host::$host-2018-12-05T23:10:33"
         } else {
-            progressInfo.setMessage("Getting file list... ")
-            job.setDescription("Loading list of files of archive '" + host + "-2018-12-05T17:30:38' of repo '" + queue.getRepo() + "'.")
-                .setCommandLineAsString("borg list --json-lines ssh://...:23/./backups/$host::$host-2018-12-05T17:30:38")
+            progressInfo.message = "Getting file list... "
+            job.setDescription("Loading list of files of archive '" + host + "-2018-12-05T17:30:38' of repo '" + queue.repo + "'.").commandLineAsString =
+                "borg list --json-lines ssh://...:23/./backups/$host::$host-2018-12-05T17:30:38"
         }
         job.buildProgressText()
         if (current >= 0) {
-            job.setStatus(AbstractJob.Status.RUNNING)
+            job.status = AbstractJob.Status.RUNNING
         } else {
-            job.setStatus(AbstractJob.Status.QUEUED)
+            job.status = AbstractJob.Status.QUEUED
         }
-        if (queue.getJobs() == null) {
-            queue.setJobs(ArrayList<JsonJob>())
+        if (queue.jobs == null) {
+            queue.jobs = ArrayList<JsonJob>()
         }
-        job.setUniqueJobNumber(uniqueNumber)
+        job.uniqueJobNumber = uniqueNumber
         if (oldJobs) {
-            job.setStatus(if (uniqueNumber % 2 == 0L) AbstractJob.Status.CANCELLED else AbstractJob.Status.DONE)
+            job.status = if (uniqueNumber % 2 == 0L) AbstractJob.Status.CANCELLED else AbstractJob.Status.DONE
         }
-        queue.getJobs().add(job)
+        queue.jobs.add(job)
         return job
     }
 

--
Gitblit v1.10.0