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

Kai Reinhard
15.03.2018 4dc7ece1a7e00b3fe804b1d64852a2e8abb623b8
Archives are now sorted in reverse order (newest first).
3 files modified
30 ■■■■ changed files
borgbutler-core/src/main/java/de/micromata/borgbutler/BorgCommands.java 2 ●●● patch | view | raw | blame | history
borgbutler-core/src/main/java/de/micromata/borgbutler/data/Repository.java 14 ●●●● patch | view | raw | blame | history
borgbutler-core/src/main/java/de/micromata/borgbutler/json/borg/BorgArchive.java 14 ●●●●● patch | view | raw | blame | history
borgbutler-core/src/main/java/de/micromata/borgbutler/BorgCommands.java
@@ -77,7 +77,7 @@
        masterRepository.setLastModified(DateUtils.format(repoList.getRepository().getLastModified()))
                .setLastCacheRefresh(DateUtils.format(LocalDateTime.now()));
        Repository repository = ObjectUtils.clone(masterRepository)
                .setArchives(repoList.getArchives());
                .addAll(repoList.getArchives());
        if (repository.getArchives() != null) {
            for (BorgArchive archive : repository.getArchives()) {
                // Reformat Borg date strings.
borgbutler-core/src/main/java/de/micromata/borgbutler/data/Repository.java
@@ -8,7 +8,9 @@
import lombok.Setter;
import java.io.Serializable;
import java.util.List;
import java.util.Collection;
import java.util.SortedSet;
import java.util.TreeSet;
/**
 * Part of Borg json objects to refer objects to repositories.
@@ -66,7 +68,15 @@
     */
    @Getter
    @Setter
    private List<BorgArchive> archives;
    private SortedSet<BorgArchive> archives;
    public Repository addAll(Collection<BorgArchive> archives) {
        if (this.archives == null) {
            this.archives = new TreeSet<>();
        }
        this.archives.addAll(archives);
        return this;
    }
    @Override
    public Object clone() throws CloneNotSupportedException {
borgbutler-core/src/main/java/de/micromata/borgbutler/json/borg/BorgArchive.java
@@ -3,13 +3,14 @@
import de.micromata.borgbutler.json.JsonUtils;
import lombok.Getter;
import lombok.Setter;
import org.apache.commons.lang3.StringUtils;
import java.io.Serializable;
/**
 * This object is given by <tt>borg list repo</tt>.
 */
public class BorgArchive implements Serializable {
public class BorgArchive implements Serializable, Comparable<BorgArchive> {
    private static final long serialVersionUID = -7872260170265536732L;
    @Getter
    private String archive;
@@ -26,6 +27,17 @@
    @Setter
    private String time;
    /**
     * In reverse order, compares times.
     * @param o
     * @return
     */
    @Override
    public int compareTo(BorgArchive o) {
        // Reverse order:
        return StringUtils.compare(o.time, this.time);
    }
    public String toString() {
        return JsonUtils.toJson(this, true);
    }