fs

package
v1.13.3 Latest Latest
Warning

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

Go to latest
Published: Feb 1, 2024 License: Apache-2.0 Imports: 10 Imported by: 5

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Download added in v1.12.6

func Download(destFile string, src http.File) (err error)

Download downloads from a http.File.

func File added in v1.12.3

func File(name string, r ContentReader) http.File

File implements a http.File by a ContentReader which may implement optional interface{ ModTime() time.Time } and io.Closer.

func Files

func Files(files ...string) http.FileSystem

Files implements a http.FileSystem by a list of file name and content file.

func FilesWithContent

func FilesWithContent(files ...string) http.FileSystem

FilesWithContent implements a http.FileSystem by a list of file name and content.

func HttpFile added in v1.12.3

func HttpFile(name string, resp *http.Response) http.File

HttpFile implements a http.File by a http.Response object.

func LocalCheck added in v1.13.0

func LocalCheck(fsys http.FileSystem) (string, bool)

LocalCheck checks a FileSystem is local or not.

func Parent added in v1.13.0

func Parent(parentDir string, fs http.FileSystem) http.FileSystem

Parent returns a FileSystem that fs is located in the `parentDir` directory.

func Plugins added in v1.12.5

func Plugins(fs http.FileSystem, plugins ...interface{}) http.FileSystem

Plugins implements a filesystem with plugins by specified (ext string, plugin Plugin) pairs.

func Root added in v1.12.1

func Root() http.FileSystem

Root implements a http.FileSystem that only have a root directory.

func SequenceFile added in v1.12.5

func SequenceFile(name string, body io.ReadCloser) http.File

SequenceFile implements a http.File by a io.ReadCloser object.

func Sub added in v1.13.0

func Sub(fs http.FileSystem, subDir string) http.FileSystem

Sub returns a FileSystem corresponding to the subtree rooted at fs's subDir.

func Union

func Union(fs ...http.FileSystem) http.FileSystem

Union merge a list of http.FileSystem into a union http.FileSystem object.

func Unseekable added in v1.12.10

func Unseekable(file http.File) io.ReadCloser

Unseekable convert a http.File into a io.ReadCloser object without io.Seeker. Note you should stop using the origin http.File object to read data. This method is used to reduce unnecessary memory usage.

func WithTracker added in v1.12.3

func WithTracker(fs http.FileSystem, trackerInit interface{}, exts ...string) http.FileSystem

WithTracker implements a http.FileSystem by pactching large file access like git lfs. Here trackerInit should be (urlBase string) or (httpfs *fs.HttpFS).

Types

type ContentReader added in v1.12.3

type ContentReader interface {
	io.Reader
	io.Seeker
	Size() int64
}

type DirInfo added in v1.12.13

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

DirInfo describes a single directory in an file system. It implements fs.FileInfo and io.Closer and Stat().

func NewDirInfo added in v1.12.13

func NewDirInfo(name string) *DirInfo

NewDirInfo creates a DirInfo that describes a single directory in an file system. It implements fs.FileInfo and io.Closer and Stat().

func (*DirInfo) Close added in v1.12.13

func (p *DirInfo) Close() error

io.Closer

func (*DirInfo) IsDir added in v1.12.13

func (p *DirInfo) IsDir() bool

for fs.FileInfo, fs.DirEntry

func (*DirInfo) ModTime added in v1.12.13

func (p *DirInfo) ModTime() time.Time

for fs.FileInfo

func (*DirInfo) Mode added in v1.12.13

func (p *DirInfo) Mode() fs.FileMode

for fs.FileInfo

func (*DirInfo) Name added in v1.12.13

func (p *DirInfo) Name() string

for fs.FileInfo, fs.DirEntry

func (*DirInfo) Size added in v1.12.13

func (p *DirInfo) Size() int64

for fs.FileInfo

func (*DirInfo) Stat added in v1.12.13

func (p *DirInfo) Stat() (fs.FileInfo, error)

for fs.File, http.File

func (*DirInfo) Sys added in v1.12.13

func (p *DirInfo) Sys() interface{}

for fs.FileInfo

type FileInfo added in v1.12.13

type FileInfo struct {
	Mtime time.Time
	// contains filtered or unexported fields
}

FileInfo describes a single file in an file system. It implements fs.FileInfo and fs.DirEntry.

func NewFileInfo added in v1.12.13

func NewFileInfo(name string, size int64) *FileInfo

NewFileInfo creates a FileInfo that describes a single file in an file system. It implements fs.FileInfo and fs.DirEntry.

func (*FileInfo) Info added in v1.12.13

func (p *FileInfo) Info() (fs.FileInfo, error)

fs.DirEntry

func (*FileInfo) IsDir added in v1.12.13

func (p *FileInfo) IsDir() bool

for fs.FileInfo, fs.DirEntry

func (*FileInfo) ModTime added in v1.12.13

func (p *FileInfo) ModTime() time.Time

for fs.FileInfo

func (*FileInfo) Mode added in v1.12.13

func (p *FileInfo) Mode() fs.FileMode

for fs.FileInfo

func (*FileInfo) Name added in v1.12.13

func (p *FileInfo) Name() string

for fs.FileInfo, fs.DirEntry

func (*FileInfo) Size added in v1.12.13

func (p *FileInfo) Size() int64

for fs.FileInfo

func (*FileInfo) Sys added in v1.12.13

func (p *FileInfo) Sys() interface{}

for fs.FileInfo

func (*FileInfo) Type added in v1.12.13

func (p *FileInfo) Type() fs.FileMode

fs.DirEntry

type HttpFS added in v1.12.8

type HttpFS struct {
	HttpOpener
	// contains filtered or unexported fields
}

func Http added in v1.12.6

func Http(urlBase string, ctx ...context.Context) *HttpFS

Http creates a HttpFS which implements a http.FileSystem by http.Get join(urlBase, name).

func (*HttpFS) Open added in v1.12.8

func (p *HttpFS) Open(name string) (file http.File, err error)

Open is required by http.File.

func (HttpFS) With added in v1.12.8

func (fs HttpFS) With(client *http.Client, header http.Header) *HttpFS

With specifies http.Client and http.Header used by http.Get.

type HttpOpener added in v1.12.8

type HttpOpener struct {
	Client *http.Client
	Header http.Header
}

func (*HttpOpener) Open added in v1.12.8

func (p *HttpOpener) Open(ctx context.Context, url string) (file http.File, err error)

Open opens a http.File from an url.

type Plugin added in v1.12.8

type Plugin = func(fs http.FileSystem, name string) (file http.File, err error)

Directories

Path Synopsis
dir
lfs

Jump to

Keyboard shortcuts

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