From 793edd77d90ffff2502ec1dc9f4d0c3442ebb94c Mon Sep 17 00:00:00 2001
From: Kai Reinhard <K.Reinhard@micromata.de>
Date: Mon, 11 Feb 2019 02:53:18 +0000
Subject: [PATCH] BorgVersion improved (annoying output to config file fixed).

---
 borgbutler-server/src/main/java/de/micromata/borgbutler/server/rest/ConfigurationRest.java |   17 ++++++++---------
 1 files changed, 8 insertions(+), 9 deletions(-)

diff --git a/borgbutler-server/src/main/java/de/micromata/borgbutler/server/rest/ConfigurationRest.java b/borgbutler-server/src/main/java/de/micromata/borgbutler/server/rest/ConfigurationRest.java
index a0c5c08..a5b2ad4 100644
--- a/borgbutler-server/src/main/java/de/micromata/borgbutler/server/rest/ConfigurationRest.java
+++ b/borgbutler-server/src/main/java/de/micromata/borgbutler/server/rest/ConfigurationRest.java
@@ -4,7 +4,6 @@
 import de.micromata.borgbutler.config.ConfigurationHandler;
 import de.micromata.borgbutler.json.JsonUtils;
 import de.micromata.borgbutler.server.BorgInstallation;
-import de.micromata.borgbutler.server.BorgVersion;
 import de.micromata.borgbutler.server.ServerConfiguration;
 import de.micromata.borgbutler.server.user.UserData;
 import de.micromata.borgbutler.server.user.UserManager;
@@ -20,7 +19,6 @@
     private Logger log = LoggerFactory.getLogger(ConfigurationRest.class);
 
     /**
-     *
      * @param prettyPrinter If true then the json output will be in pretty format.
      * @see JsonUtils#toJson(Object, boolean)
      */
@@ -28,7 +26,10 @@
     @Path("config")
     @Produces(MediaType.APPLICATION_JSON)
     public String getConfig(@QueryParam("prettyPrinter") boolean prettyPrinter) {
-        String json = JsonUtils.toJson(ServerConfiguration.get(), prettyPrinter);
+        ConfigurationInfo configurationInfo = new ConfigurationInfo();
+        configurationInfo.setServerConfiguration(ServerConfiguration.get());
+        configurationInfo.setBorgVersion(BorgInstallation.getInstance().getBorgVersion());
+        String json = JsonUtils.toJson(configurationInfo, prettyPrinter);
         return json;
     }
 
@@ -37,16 +38,14 @@
     @Produces(MediaType.TEXT_PLAIN)
     public void setConfig(String jsonConfig) {
         ConfigurationHandler configurationHandler = ConfigurationHandler.getInstance();
-        ServerConfiguration config = (ServerConfiguration)configurationHandler.getConfiguration();
-        ServerConfiguration srcConfig = JsonUtils.fromJson(ServerConfiguration.class, jsonConfig);
-        BorgVersion oldBorgVersion = config.getBorgVersion();
-        config.copyFrom(srcConfig);
-        BorgInstallation.getInstance().configure(oldBorgVersion);
+        ConfigurationInfo configurationInfo = JsonUtils.fromJson(ConfigurationInfo.class, jsonConfig);
+        BorgInstallation.getInstance().configure(configurationInfo.getServerConfiguration(), configurationInfo.getBorgVersion().getBorgBinary());
+        ServerConfiguration configuration = ServerConfiguration.get();
+        configuration.copyFrom(configurationInfo.getServerConfiguration());
         configurationHandler.save();
     }
 
     /**
-     *
      * @param prettyPrinter If true then the json output will be in pretty format.
      * @see JsonUtils#toJson(Object, boolean)
      */

--
Gitblit v1.10.0