github.com/gocaveman/caveman@v0.0.0-20191211162744-0ddf99dbdf6e/filesystem/aferofs/aferofs.go (about) 1 // Adapt FS from github.com/spf13/afero to Filesystem 2 package aferofs 3 4 import ( 5 "os" 6 "time" 7 8 "github.com/spf13/afero" 9 ) 10 11 // New returns a new instance adapted from afero.Fs. 12 func New(fs afero.Fs) *AferoFs { 13 return &AferoFs{Fs: fs} 14 } 15 16 type AferoFs struct { 17 Fs afero.Fs 18 } 19 20 func (a *AferoFs) Chmod(name string, mode os.FileMode) error { 21 return a.Fs.Chmod(name, mode) 22 } 23 24 func (a *AferoFs) Chtimes(name string, atime time.Time, mtime time.Time) error { 25 return a.Fs.Chtimes(name, atime, mtime) 26 } 27 28 func (a *AferoFs) Mkdir(name string, perm os.FileMode) error { 29 return a.Fs.Mkdir(name, perm) 30 } 31 32 func (a *AferoFs) MkdirAll(path string, perm os.FileMode) error { 33 return a.Fs.MkdirAll(path, perm) 34 } 35 36 func (a *AferoFs) Remove(name string) error { 37 return a.Fs.Remove(name) 38 } 39 40 func (a *AferoFs) RemoveAll(path string) error { 41 return a.Fs.RemoveAll(path) 42 } 43 44 func (a *AferoFs) Rename(oldname, newname string) error { 45 return a.Fs.Rename(oldname, newname) 46 } 47 48 func (a *AferoFs) Stat(name string) (os.FileInfo, error) { 49 return a.Fs.Stat(name) 50 } 51 52 func (a *AferoFs) Create(name string) (interface { 53 Close() error 54 Seek(offset int64, whence int) (int64, error) 55 Read(p []byte) (n int, err error) 56 Write(data []byte) (n int, err error) 57 }, error) { 58 return a.Fs.Create(name) 59 } 60 61 func (a *AferoFs) OpenFile(name string, flag int, perm os.FileMode) (interface { 62 Close() error 63 Seek(offset int64, whence int) (int64, error) 64 Read(p []byte) (n int, err error) 65 Write(data []byte) (n int, err error) 66 Readdir(count int) ([]os.FileInfo, error) 67 Readdirnames(n int) ([]string, error) 68 }, error) { 69 return a.Fs.OpenFile(name, flag, perm) 70 } 71 72 func (a *AferoFs) Open(name string) (interface { 73 Close() error 74 Seek(offset int64, whence int) (int64, error) 75 Read(p []byte) (n int, err error) 76 Readdir(count int) ([]os.FileInfo, error) 77 Readdirnames(n int) ([]string, error) 78 }, error) { 79 return a.Fs.Open(name) 80 }