github.com/hanwen/go-fuse@v1.0.0/fuse/nodefs/defaultfile.go (about) 1 // Copyright 2016 the Go-FUSE Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style 3 // license that can be found in the LICENSE file. 4 5 package nodefs 6 7 import ( 8 "time" 9 10 "github.com/hanwen/go-fuse/fuse" 11 ) 12 13 type defaultFile struct{} 14 15 // NewDefaultFile returns a File instance that returns ENOSYS for 16 // every operation. 17 func NewDefaultFile() File { 18 return (*defaultFile)(nil) 19 } 20 21 func (f *defaultFile) SetInode(*Inode) { 22 } 23 24 func (f *defaultFile) InnerFile() File { 25 return nil 26 } 27 28 func (f *defaultFile) String() string { 29 return "defaultFile" 30 } 31 32 func (f *defaultFile) Read(buf []byte, off int64) (fuse.ReadResult, fuse.Status) { 33 return nil, fuse.ENOSYS 34 } 35 36 func (f *defaultFile) Write(data []byte, off int64) (uint32, fuse.Status) { 37 return 0, fuse.ENOSYS 38 } 39 40 func (f *defaultFile) GetLk(owner uint64, lk *fuse.FileLock, flags uint32, out *fuse.FileLock) (code fuse.Status) { 41 return fuse.ENOSYS 42 } 43 44 func (f *defaultFile) SetLk(owner uint64, lk *fuse.FileLock, flags uint32) (code fuse.Status) { 45 return fuse.ENOSYS 46 } 47 48 func (f *defaultFile) SetLkw(owner uint64, lk *fuse.FileLock, flags uint32) (code fuse.Status) { 49 return fuse.ENOSYS 50 } 51 52 func (f *defaultFile) Flush() fuse.Status { 53 return fuse.OK 54 } 55 56 func (f *defaultFile) Release() { 57 58 } 59 60 func (f *defaultFile) GetAttr(*fuse.Attr) fuse.Status { 61 return fuse.ENOSYS 62 } 63 64 func (f *defaultFile) Fsync(flags int) (code fuse.Status) { 65 return fuse.ENOSYS 66 } 67 68 func (f *defaultFile) Utimens(atime *time.Time, mtime *time.Time) fuse.Status { 69 return fuse.ENOSYS 70 } 71 72 func (f *defaultFile) Truncate(size uint64) fuse.Status { 73 return fuse.ENOSYS 74 } 75 76 func (f *defaultFile) Chown(uid uint32, gid uint32) fuse.Status { 77 return fuse.ENOSYS 78 } 79 80 func (f *defaultFile) Chmod(perms uint32) fuse.Status { 81 return fuse.ENOSYS 82 } 83 84 func (f *defaultFile) Allocate(off uint64, size uint64, mode uint32) (code fuse.Status) { 85 return fuse.ENOSYS 86 }