From 1dab687e769cc830adeb2ef53642abad77e1f7a6 Mon Sep 17 00:00:00 2001
From: Kai Reinhard <K.Reinhard@micromata.de>
Date: Fri, 18 Jan 2019 15:35:50 +0000
Subject: [PATCH] BorgRepConfig...Repo config...

---
 borgbutler-server/src/main/java/de/micromata/borgbutler/server/rest/ReposRest.java |   22 ++++++++++++++++++----
 1 files changed, 18 insertions(+), 4 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 125f2a0..8c4660e 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
@@ -10,10 +10,7 @@
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.Produces;
-import javax.ws.rs.QueryParam;
+import javax.ws.rs.*;
 import javax.ws.rs.core.MediaType;
 import java.util.List;
 
@@ -68,6 +65,23 @@
         return JsonUtils.toJson(repoConfig, prettyPrinter);
     }
 
+    @POST
+    @Path("repoConfig")
+    @Produces(MediaType.TEXT_PLAIN)
+    public void setRepoConfig(String jsonConfig) {
+        BorgRepoConfig newRepoConfig = JsonUtils.fromJson(BorgRepoConfig.class, jsonConfig);
+        BorgRepoConfig repoConfig = ConfigurationHandler.getConfiguration().getRepoConfig(newRepoConfig.getId());
+        if (repoConfig == null) {
+            log.error("Can't find repo config '" + newRepoConfig.getId() + "'. Can't save new settings.");
+            return;
+        }
+        ButlerCache.getInstance().clearRepoCacheAccess(repoConfig.getRepo());
+        ButlerCache.getInstance().clearRepoCacheAccess(newRepoConfig.getRepo());
+        repoConfig.copyFrom(newRepoConfig);
+        ConfigurationHandler.getInstance().save();
+    }
+
+
     /**
      *
      * @param id id or name of repo.

--
Gitblit v1.10.0