diff options
Diffstat (limited to 'go/storage/volume.go')
| -rw-r--r-- | go/storage/volume.go | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/go/storage/volume.go b/go/storage/volume.go index 69817a6d4..0301d7968 100644 --- a/go/storage/volume.go +++ b/go/storage/volume.go @@ -197,6 +197,21 @@ func (v *Volume) isFileUnchanged(n *Needle) bool { } return false } + +func (v *Volume) Destroy() (err error) { + if v.readOnly { + err = fmt.Errorf("%s is read-only", v.dataFile) + return + } + v.Close() + err = os.Remove(v.dataFile.Name()) + if err != nil { + return + } + err = v.nm.Destroy() + return +} + func (v *Volume) write(n *Needle) (size uint32, err error) { if v.readOnly { err = fmt.Errorf("%s is read-only", v.dataFile) |
