go-bindata-assetfs: github.com/elazarl/go-bindata-assetfs Index | Files | Directories

package assetfs

import "github.com/elazarl/go-bindata-assetfs"

assetfs allows packages to serve static content embedded with the go-bindata tool with the standard net/http package.

See https://github.com/go-bindata/go-bindata for more information about embedding binary data with go-bindata.

Usage example, after running

$ go-bindata data/...

use:

http.Handle("/",
   http.FileServer(
   &assetfs.AssetFS{Asset: Asset, AssetDir: AssetDir, Prefix: "data"}))

Index

Package Files

assetfs.go doc.go

type AssetDirectory Uses

type AssetDirectory struct {
    AssetFile
    ChildrenRead int
    Children     []os.FileInfo
}

AssetDirectory implements http.File interface for a directory

func NewAssetDirectory Uses

func NewAssetDirectory(name string, children []string, fs *AssetFS) *AssetDirectory

func (*AssetDirectory) Readdir Uses

func (f *AssetDirectory) Readdir(count int) ([]os.FileInfo, error)

func (*AssetDirectory) Stat Uses

func (f *AssetDirectory) Stat() (os.FileInfo, error)

type AssetFS Uses

type AssetFS struct {
    // Asset should return content of file in path if exists
    Asset func(path string) ([]byte, error)
    // AssetDir should return list of files in the path
    AssetDir func(path string) ([]string, error)
    // AssetInfo should return the info of file in path if exists
    AssetInfo func(path string) (os.FileInfo, error)
    // Prefix would be prepended to http requests
    Prefix string
    // Fallback file that is served if no other is found
    Fallback string
}

AssetFS implements http.FileSystem, allowing embedded files to be served from net/http package.

func (*AssetFS) Open Uses

func (fs *AssetFS) Open(name string) (http.File, error)

type AssetFile Uses

type AssetFile struct {
    *bytes.Reader
    io.Closer
    FakeFile
}

AssetFile implements http.File interface for a no-directory file with content

func NewAssetFile Uses

func NewAssetFile(name string, content []byte, timestamp time.Time) *AssetFile

func (*AssetFile) Readdir Uses

func (f *AssetFile) Readdir(count int) ([]os.FileInfo, error)

func (*AssetFile) Size Uses

func (f *AssetFile) Size() int64

func (*AssetFile) Stat Uses

func (f *AssetFile) Stat() (os.FileInfo, error)

type FakeFile Uses

type FakeFile struct {
    // Path is the path of this file
    Path string
    // Dir marks of the path is a directory
    Dir bool
    // Len is the length of the fake file, zero if it is a directory
    Len int64
    // Timestamp is the ModTime of this file
    Timestamp time.Time
}

FakeFile implements os.FileInfo interface for a given path and size

func (*FakeFile) IsDir Uses

func (f *FakeFile) IsDir() bool

func (*FakeFile) ModTime Uses

func (f *FakeFile) ModTime() time.Time

func (*FakeFile) Mode Uses

func (f *FakeFile) Mode() os.FileMode

func (*FakeFile) Name Uses

func (f *FakeFile) Name() string

func (*FakeFile) Size Uses

func (f *FakeFile) Size() int64

func (*FakeFile) Sys Uses

func (f *FakeFile) Sys() interface{}

Directories

PathSynopsis
go-bindata-assetfs

Package assetfs imports 10 packages (graph) and is imported by 1099 packages. Updated 2020-08-27. Refresh now. Tools for package owners.