summaryrefslogtreecommitdiff
path: root/cacheDir.go
diff options
context:
space:
mode:
Diffstat (limited to 'cacheDir.go')
-rw-r--r--cacheDir.go21
1 files changed, 21 insertions, 0 deletions
diff --git a/cacheDir.go b/cacheDir.go
index ac5bd46..b477bee 100644
--- a/cacheDir.go
+++ b/cacheDir.go
@@ -66,3 +66,24 @@ func CreateCacheDirPB(pb proto.Message, dirname string, filename string) error {
// some other bad error
return err
}
+
+// checks the UUID and Version of the .pb file
+func ForceCreateCacheDirPB(pb proto.Message, dirname string, filename string) error {
+ // Get ~/.cache/dirname/filename.text
+ fullname := MakeCacheFilename(dirname, filename)
+
+ _, err := SetFilename(pb, fullname)
+ if err != nil {
+ fmt.Println("lib/config PB file does not support Filename")
+ }
+ newver, curver, err := VersionCheckFile(pb, fullname)
+ _, _ = newver, curver
+ if err == nil {
+ // everything is fine. Versions match. load file
+ err = LoadFromFilename(pb, fullname)
+ return err
+ }
+ // if there is any err, recreate the file
+ err = SaveToFilename(pb, fullname)
+ return err
+}