From 4ece88750272b3e2fc0bbccec7202d2faa1115b8 Mon Sep 17 00:00:00 2001
From: Kai Reinhard <K.Reinhard@micromata.de>
Date: Sat, 08 Dec 2018 23:32:11 +0000
Subject: [PATCH] cache refactored.
---
borgbutler-core/src/main/java/de/micromata/borgbutler/cache/RepoInfoCache.java | 26 +++++++++++++++++++++++++-
1 files changed, 25 insertions(+), 1 deletions(-)
diff --git a/borgbutler-core/src/main/java/de/micromata/borgbutler/cache/RepoInfoCache.java b/borgbutler-core/src/main/java/de/micromata/borgbutler/cache/RepoInfoCache.java
index 2e41324..d6f360d 100644
--- a/borgbutler-core/src/main/java/de/micromata/borgbutler/cache/RepoInfoCache.java
+++ b/borgbutler-core/src/main/java/de/micromata/borgbutler/cache/RepoInfoCache.java
@@ -1,5 +1,7 @@
package de.micromata.borgbutler.cache;
+import de.micromata.borgbutler.BorgCommands;
+import de.micromata.borgbutler.config.BorgRepoConfig;
import de.micromata.borgbutler.json.borg.RepoInfo;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -8,7 +10,29 @@
public class RepoInfoCache extends AbstractCache<RepoInfo> {
private static Logger log = LoggerFactory.getLogger(RepoInfoCache.class);
- public static final String CACHE_REPOS_BASENAME = "repos";
+ public static final String CACHE_REPOS_BASENAME = "repo-infos";
+
+ @Override
+ protected RepoInfo load(BorgRepoConfig repoConfig, String identifier) {
+ RepoInfo repoInfo = BorgCommands.info(repoConfig);
+ this.elements.put(getIdentifier(repoInfo), repoInfo);
+ return repoInfo;
+ }
+
+ @Override
+ public boolean matches(RepoInfo element, String identifier) {
+ return element.matches(identifier);
+ }
+
+ @Override
+ public String getIdentifier(RepoInfo element) {
+ return element.getRepository().getId();
+ }
+
+ @Override
+ public void updateFrom(RepoInfo dest, RepoInfo source) {
+ dest.updateFrom(source);
+ }
/**
* Needed by jackson for deserialization.
--
Gitblit v1.10.0