in persistence/disk.go [90:110]
func (v *diskValue) store(obj interface{}) error {
err := v.memValue.Store(obj)
if err != nil {
return err
}
var jsontext []byte
if jsontext, err = json.Marshal(obj); err != nil {
return err
}
filename := v.jsonFile(v.name)
dirname := path.Dir(filename)
if err = os.MkdirAll(dirname, directoryMode); err != nil {
return err
}
if err = ioutil.WriteFile(filename, jsontext, fileMode); err != nil {
return err
}
return nil
}