rclonefs

package
v0.0.7 Latest Latest
Warning

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

Go to latest
Published: Apr 22, 2024 License: MIT Imports: 18 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewFromConfig

func NewFromConfig(diskConfigs []*app.DiskConfig, localRoot string) ([]app.Disk, error)

func NewLocal

func NewLocal(config *RcloneLocalConfig) (app.Disk, error)

func NewS3

func NewS3(config *RcloneS3Config) (app.Disk, error)

Types

type BaseRcloneDisk

type BaseRcloneDisk struct {
	rclonefs.Fs
	DiskName string `json:"name"`
	Root     string
	GetURL   func(string) string
}

func (*BaseRcloneDisk) Delete

func (r *BaseRcloneDisk) Delete(ctx context.Context, filePath string) error

func (*BaseRcloneDisk) IsAllowedMime

func (r *BaseRcloneDisk) IsAllowedMime(mime string) bool

func (*BaseRcloneDisk) Name

func (r *BaseRcloneDisk) Name() string

func (*BaseRcloneDisk) Put

func (r *BaseRcloneDisk) Put(ctx context.Context, file *app.File) (*app.File, error)

func (*BaseRcloneDisk) PutMultipart

func (r *BaseRcloneDisk) PutMultipart(
	ctx context.Context,
	m *multipart.FileHeader,
	dsts ...string,
) (*app.File, error)

func (*BaseRcloneDisk) PutReader

func (r *BaseRcloneDisk) PutReader(
	ctx context.Context,
	reader io.Reader,
	size uint64,
	fileType,
	dst string,
) (*app.File, error)

func (*BaseRcloneDisk) UploadFilePath

func (r *BaseRcloneDisk) UploadFilePath(filename string) string

type RcloneLocal

type RcloneLocal struct {
	*BaseRcloneDisk
	// contains filtered or unexported fields
}

func (*RcloneLocal) LocalPublicPath added in v0.0.5

func (r *RcloneLocal) LocalPublicPath() string

func (*RcloneLocal) Root

func (r *RcloneLocal) Root() string

func (*RcloneLocal) URL

func (r *RcloneLocal) URL(filepath string) string

type RcloneLocalConfig

type RcloneLocalConfig struct {
	Name       string        `json:"name"`
	Root       string        `json:"root"`
	BaseURL    string        `json:"base_url"`
	PublicPath string        `json:"public_path"`
	GetBaseURL func() string `json:"-"`
}

type RcloneS3

type RcloneS3 struct {
	*BaseRcloneDisk
	// contains filtered or unexported fields
}

func (*RcloneS3) LocalPublicPath added in v0.0.5

func (r *RcloneS3) LocalPublicPath() string

func (*RcloneS3) Root

func (r *RcloneS3) Root() string

func (*RcloneS3) URL

func (r *RcloneS3) URL(filepath string) string

type RcloneS3Config

type RcloneS3Config struct {
	Name            string              `json:"name"`
	Root            string              `json:"root"`
	Provider        string              `json:"provider"`
	Bucket          string              `json:"bucket"`
	Region          string              `json:"region"`
	Endpoint        string              `json:"endpoint"`
	ChunkSize       rclonefs.SizeSuffix `json:"chunk_size"`
	AccessKeyID     string              `json:"access_key_id"`
	SecretAccessKey string              `json:"secret_access_key"`
	BaseURL         string              `json:"base_url"`
	ACL             string              `json:"acl"`
}

Jump to

Keyboard shortcuts

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