From 909823cee4aff9f12ddceef523f062054a4af428 Mon Sep 17 00:00:00 2001
From: Kai Reinhard <K.Reinhard@micromata.de>
Date: Sat, 08 Dec 2018 09:15:16 +0000
Subject: [PATCH] Parses now json repsonse of borg to Pojo's.
---
borgbutler-core/src/main/java/de/micromata/borgbutler/BorgCommands.java | 10 ++++++++--
1 files changed, 8 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 72ee7bf..a0508c0 100644
--- a/borgbutler-core/src/main/java/de/micromata/borgbutler/BorgCommands.java
+++ b/borgbutler-core/src/main/java/de/micromata/borgbutler/BorgCommands.java
@@ -3,6 +3,8 @@
import de.micromata.borgbutler.config.BorgRepoConfig;
import de.micromata.borgbutler.config.Configuration;
import de.micromata.borgbutler.config.ConfigurationHandler;
+import de.micromata.borgbutler.json.JsonUtils;
+import de.micromata.borgbutler.json.borg.RepoInfo;
import org.apache.commons.exec.*;
import org.apache.commons.exec.environment.EnvironmentUtils;
import org.apache.commons.io.output.ByteArrayOutputStream;
@@ -17,10 +19,11 @@
public class BorgCommands {
private static Logger log = LoggerFactory.getLogger(BorgCommands.class);
- public static String info(BorgRepoConfig repoConfig) {
+ public static RepoInfo info(BorgRepoConfig repoConfig) {
try {
CommandLine cmdLine = new CommandLine(ConfigurationHandler.getConfiguration().getBorgCommand());
cmdLine.addArgument("info");
+ cmdLine.addArgument("--json");
cmdLine.addArgument(repoConfig.getRepo());
DefaultExecutor executor = new DefaultExecutor();
//executor.setExitValue(2);
@@ -32,7 +35,10 @@
executor.setStreamHandler(streamHandler);
log.info("Executing '" + cmdLine.getExecutable() + " " + StringUtils.join(cmdLine.getArguments(), " ") + "'...");
executor.execute(cmdLine, getEnvironment(repoConfig));
- return (outputStream.toString(Charset.forName("UTF-8")));
+ String json = outputStream.toString(Charset.forName("UTF-8"));
+ RepoInfo repoInfo = JsonUtils.fromJson(RepoInfo.class, json);
+ repoInfo.setOriginalJson(json);
+ return repoInfo;
} catch (IOException ex) {
log.error("Error while executing borg command: " + ex.getMessage(), ex);
return null;
--
Gitblit v1.10.0