loopback

package module
v0.0.0-...-c829072 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 12, 2019 License: BSD-3-Clause Imports: 10 Imported by: 0

README

loopback

A loopback filesystem using bazil.org/fuse, originally based on github.com/keybase/loopback

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type FS

type FS struct {
	// contains filtered or unexported fields
}

FS is the filesystem root

func New

func New(rootPath string) *FS

func (*FS) Root

func (f *FS) Root() (n fs.Node, err error)

Root implements fs.FS interface for *FS

func (*FS) SetLogger

func (f *FS) SetLogger(logger interface {
	Print(v ...interface{})
	Printf(format string, v ...interface{})
})

func (*FS) Statfs

func (f *FS) Statfs(ctx context.Context,
	req *fuse.StatfsRequest, resp *fuse.StatfsResponse) (err error)

Statfs implements fs.FSStatfser interface for *FS

type Handle

type Handle struct {
	// contains filtered or unexported fields
}

Handle represent an open file or directory

func (*Handle) Flush

func (h *Handle) Flush(ctx context.Context,
	req *fuse.FlushRequest) (err error)

Flush implements fs.HandleFlusher interface for *Handle

func (*Handle) Read

func (h *Handle) Read(ctx context.Context,
	req *fuse.ReadRequest, resp *fuse.ReadResponse) (err error)

Read implements fs.HandleReader interface for *Handle

func (*Handle) ReadDirAll

func (h *Handle) ReadDirAll(ctx context.Context) (
	dirs []fuse.Dirent, err error)

ReadDirAll implements fs.HandleReadDirAller interface for *Handle

func (*Handle) Release

func (h *Handle) Release(ctx context.Context,
	req *fuse.ReleaseRequest) (err error)

Release implements fs.HandleReleaser interface for *Handle

func (*Handle) Write

func (h *Handle) Write(ctx context.Context,
	req *fuse.WriteRequest, resp *fuse.WriteResponse) (err error)

Write implements fs.HandleWriter interface for *Handle

type Node

type Node struct {
	// contains filtered or unexported fields
}

Node is the node for both directories and files

func (*Node) Access

func (n *Node) Access(ctx context.Context, a *fuse.AccessRequest) (err error)

Access implements fs.NodeAccesser interface for *Node

func (*Node) Attr

func (n *Node) Attr(ctx context.Context, a *fuse.Attr) (err error)

Attr implements fs.Node interface for *Dir

func (*Node) Create

func (n *Node) Create(
	ctx context.Context, req *fuse.CreateRequest, resp *fuse.CreateResponse) (
	fsn fs.Node, fsh fs.Handle, err error)

Create implements fs.NodeCreater interface for *Node

func (*Node) Forget

func (n *Node) Forget()

Forget implements fs.NodeForgetter interface for *Node

func (*Node) Fsync

func (n *Node) Fsync(ctx context.Context, req *fuse.FsyncRequest) (err error)

Fsync implements fs.NodeFsyncer interface for *Node

func (*Node) GetRealPath

func (n *Node) GetRealPath() string

func (*Node) IsDir

func (n *Node) IsDir() bool

func (*Node) Lookup

func (n *Node) Lookup(ctx context.Context,
	name string) (ret fs.Node, err error)

Lookup implements fs.NodeRequestLookuper interface for *Node

func (*Node) Mkdir

func (n *Node) Mkdir(ctx context.Context,
	req *fuse.MkdirRequest) (created fs.Node, err error)

Mkdir implements fs.NodeMkdirer interface for *Node

func (*Node) Open

func (n *Node) Open(ctx context.Context,
	req *fuse.OpenRequest, resp *fuse.OpenResponse) (h fs.Handle, err error)

Open implements fs.NodeOpener interface for *Node

func (n *Node) Readlink(ctx context.Context, req *fuse.ReadlinkRequest) (string, error)

Readlink implements fs.NodeReadlinker interface for *Node

func (*Node) Remove

func (n *Node) Remove(ctx context.Context, req *fuse.RemoveRequest) (err error)

Remove implements fs.NodeRemover interface for *Node

func (*Node) Rename

func (n *Node) Rename(ctx context.Context,
	req *fuse.RenameRequest, newDir fs.Node) (err error)

Rename implements fs.NodeRenamer interface for *Node

func (*Node) Setattr

func (n *Node) Setattr(ctx context.Context,
	req *fuse.SetattrRequest, resp *fuse.SetattrResponse) (err error)

Setattr implements fs.NodeSetattrer interface for *Node

func (n *Node) Symlink(ctx context.Context, req *fuse.SymlinkRequest) (fs.Node, error)

Symlink implements fs.NodeSymlinker interface for *Node

Directories

Path Synopsis
cmd

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL