Skip to content

Commit d0a722e

Browse files
committed
fs: make storers implement storage interface
The memory and file storers already almost completely implement the storage interface. Add Close methods to make them implement the interface completely.
1 parent c7b3748 commit d0a722e

File tree

3 files changed

+21
-0
lines changed

3 files changed

+21
-0
lines changed

file_storer.go

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,16 @@ func (fs *fileStorer) Root() string {
9090
return fs.root
9191
}
9292

93+
// Close closes the file storer.
94+
func (fs *fileStorer) Close() error {
95+
return nil
96+
}
97+
98+
// IsCompressed returns true, because the file storer returns compressed data.
99+
func (fs *fileStorer) IsCompressed() bool {
100+
return true
101+
}
102+
93103
// open opens a given file.
94104
func (fs *fileStorer) open(path string, flag int) (*os.File, error) {
95105
return os.OpenFile(path, flag, 0)

memory_storer.go

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,16 @@ func (ms *memoryStorer) Open(sha []byte) (f io.ReadCloser, err error) {
6262
return ms.fs[key], nil
6363
}
6464

65+
// Close closes the memory storer.
66+
func (ms *memoryStorer) Close() error {
67+
return nil
68+
}
69+
70+
// IsCompressed returns true, because the memory storer returns compressed data.
71+
func (ms *memoryStorer) IsCompressed() bool {
72+
return true
73+
}
74+
6575
// bufCloser wraps a type satisfying the io.ReadWriter interface with a no-op
6676
// Close() function, thus implementing the io.ReadWriteCloser composite
6777
// interface.

memory_storer_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ func TestMemoryStorerAcceptsNilEntries(t *testing.T) {
3535

3636
assert.NotNil(t, ms)
3737
assert.Equal(t, 0, len(ms.fs))
38+
assert.NoError(t, ms.Close())
3839
}
3940

4041
func TestMemoryStorerDoesntOpenMissingEntries(t *testing.T) {

0 commit comments

Comments
 (0)