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

Kai Reinhard
14.23.2019 8290a1feaf4bec966be00919cbe5963d4b6e3867
borgbutler-core/src/main/java/de/micromata/borgbutler/config/Configuration.java
@@ -2,6 +2,7 @@
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
import de.micromata.borgbutler.demo.DemoRepos;
import lombok.AccessLevel;
import lombok.Getter;
import lombok.Setter;
@@ -32,6 +33,10 @@
    @Getter
    private int maxArchiveContentCacheCapacityMb = 100;
    @Getter
    @Setter
    private boolean showDemoRepos = true;
    /**
     * Default is restore inside BorgButler's home dir (~/.borgbutler/restore).
     */
@@ -41,7 +46,6 @@
    @JsonIgnore
    private File restoreHomeDir;
    @Getter
    private List<BorgRepoConfig> repoConfigs = new ArrayList<>();
    public void add(BorgRepoConfig repoConfig) {
@@ -52,7 +56,7 @@
        if (idOrName == null) {
            return null;
        }
        for (BorgRepoConfig repoConfig : repoConfigs) {
        for (BorgRepoConfig repoConfig : getRepoConfigs()) {
            if (StringUtils.equals(idOrName, repoConfig.getRepo()) || StringUtils.equals(idOrName, repoConfig.getId())) {
                return repoConfig;
            }
@@ -77,5 +81,20 @@
    public void copyFrom(Configuration other) {
        this.borgCommand = other.borgCommand;
        this.maxArchiveContentCacheCapacityMb = other.maxArchiveContentCacheCapacityMb;
        this.showDemoRepos = other.showDemoRepos;
    }
    public List<BorgRepoConfig> getRepoConfigs() {
        if (!ConfigurationHandler.getConfiguration().isShowDemoRepos()) {
            return repoConfigs;
        }
        List<BorgRepoConfig> result = new ArrayList<>();
        result.addAll(repoConfigs);
        DemoRepos.addDemoRepos(result);
        return result;
    }
    List<BorgRepoConfig> _getRepoConfigs() {
        return repoConfigs;
    }
}