diff options
Diffstat (limited to 'cacheDir.go')
| -rw-r--r-- | cacheDir.go | 21 |
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 +} |
