]> Sergey Matveev's repositories - btrtrc.git/blob - fs/filenode.go
fs: Move file Read behaviour onto a new handle type
[btrtrc.git] / fs / filenode.go
1 package torrentfs
2
3 import (
4         "bazil.org/fuse"
5         fusefs "bazil.org/fuse/fs"
6         "golang.org/x/net/context"
7 )
8
9 type fileNode struct {
10         node
11         size          uint64
12         TorrentOffset int64
13 }
14
15 var (
16         _ fusefs.NodeOpener = fileNode{}
17 )
18
19 func (fn fileNode) Attr(ctx context.Context, attr *fuse.Attr) error {
20         attr.Size = fn.size
21         attr.Mode = defaultMode
22         return nil
23 }
24
25 func (fn fileNode) Open(ctx context.Context, req *fuse.OpenRequest, resp *fuse.OpenResponse) (fusefs.Handle, error) {
26         return fileHandle{fn}, nil
27 }