From 7325f6c31e1f7f6bd94a9e01e916de2c355bcae1 Mon Sep 17 00:00:00 2001
From: Kai Reinhard <K.Reinhard@micromata.de>
Date: Mon, 07 Jan 2019 00:29:19 +0000
Subject: [PATCH] Environment variables are now built by BorgRepoConfig itself.
---
borgbutler-core/src/main/java/de/micromata/borgbutler/config/BorgRepoConfig.java | 43 ++++++++++++++++++++++++++++++++++++-------
1 files changed, 36 insertions(+), 7 deletions(-)
diff --git a/borgbutler-core/src/main/java/de/micromata/borgbutler/config/BorgRepoConfig.java b/borgbutler-core/src/main/java/de/micromata/borgbutler/config/BorgRepoConfig.java
index 6000d6b..0ffeecd 100644
--- a/borgbutler-core/src/main/java/de/micromata/borgbutler/config/BorgRepoConfig.java
+++ b/borgbutler-core/src/main/java/de/micromata/borgbutler/config/BorgRepoConfig.java
@@ -1,25 +1,54 @@
package de.micromata.borgbutler.config;
import com.fasterxml.jackson.annotation.JsonIgnore;
-import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Getter;
import lombok.Setter;
+import org.apache.commons.lang3.StringUtils;
+
+import java.util.ArrayList;
+import java.util.List;
public class BorgRepoConfig {
/**
* A name describing this config. Only used for displaying purposes.
*/
- @Getter @Setter
+ @Getter
+ @Setter
private String displayName;
- @Getter @Setter
+ @Getter
+ @Setter
private String repo;
- @Getter @Setter
+ @Getter
+ @Setter
private String rsh;
- @Getter @Setter
+ @Getter
+ @Setter
private String passphrase;
- @Getter @Setter
+ @Getter
+ @Setter
private String passwordCommand;
- @Getter @Setter
+ @Getter
+ @Setter
@JsonIgnore
private String id;
+
+ public String[] getEnvironmentVariables() {
+ return getEnvironmentVariables(false);
+ }
+
+ public String[] getEnvironmentVariables(boolean showPassphrase) {
+ List<String> variables = new ArrayList<>();
+ addVariable(variables, "BORG_REPO", repo);
+ addVariable(variables, "BORG_RSH", rsh);
+ if (StringUtils.isNotBlank(passphrase)) {
+ addVariable(variables, "BORG_PASSPHRASE", showPassphrase ? passphrase : "******");
+ }
+ addVariable(variables, "BORG_PASSCOMMAND", passwordCommand);
+ return variables.toArray(new String[variables.size()]);
+ }
+
+ private void addVariable(List<String> list, String variable, String value) {
+ if (StringUtils.isBlank(value)) return;
+ list.add(variable + "=" + value);
+ }
}
--
Gitblit v1.10.0