mirror of https://github.com/micromata/borgbackup-butler.git

Kai Reinhard
14.20.2021 5e39c0040ddde260831a5b9f73c0bbfec3738f94
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();