From 5e39c0040ddde260831a5b9f73c0bbfec3738f94 Mon Sep 17 00:00:00 2001
From: Kai Reinhard <K.Reinhard@micromata.de>
Date: Tue, 13 Apr 2021 23:20:23 +0000
Subject: [PATCH] Docker...
---
borgbutler-core/src/main/java/de/micromata/borgbutler/config/ConfigurationHandler.java | 20 ++++++++++++++++++--
1 files changed, 18 insertions(+), 2 deletions(-)
diff --git a/borgbutler-core/src/main/java/de/micromata/borgbutler/config/ConfigurationHandler.java b/borgbutler-core/src/main/java/de/micromata/borgbutler/config/ConfigurationHandler.java
index ee1fb32..e6c82e9 100644
--- a/borgbutler-core/src/main/java/de/micromata/borgbutler/config/ConfigurationHandler.java
+++ b/borgbutler-core/src/main/java/de/micromata/borgbutler/config/ConfigurationHandler.java
@@ -20,9 +20,17 @@
private File configFile;
private File configBackupDir;
private File workingDir;
+ private File butlerHomeDir;
private Configuration configuration;
private static Class<? extends Configuration> configClazz = Configuration.class;
+ public static void init(String butlerHomeDir) {
+ if (instance != null) {
+ throw new RuntimeException("ConfigurationHandler already initialized");
+ }
+ instance = new ConfigurationHandler(butlerHomeDir);
+ }
+
public static ConfigurationHandler getInstance() {
if (instance == null) instance = new ConfigurationHandler();
return instance;
@@ -97,8 +105,16 @@
}
private ConfigurationHandler() {
- File userHome = new File(System.getProperty("user.home"));
- workingDir = new File(userHome, BUTLER_HOME_DIR);
+ this(null);
+ }
+
+ private ConfigurationHandler(String butlerHomeDir) {
+ if (butlerHomeDir != null) {
+ workingDir = new File(butlerHomeDir);
+ } else {
+ workingDir = new File(System.getProperty("user.home"), BUTLER_HOME_DIR);
+ }
+ log.info("Using directory '" + workingDir.getAbsolutePath() + "' as BorgButler's home directory.");
if (!workingDir.exists()) {
log.info("Creating borg-butlers working directory: " + workingDir.getAbsolutePath());
workingDir.mkdirs();
--
Gitblit v1.10.0