rclone: github.com/ncw/rclone/backend/http Index | Files

package http

import "github.com/ncw/rclone/backend/http"

Package http provides a filesystem interface using golang.org/net/http

It treats HTML pages served from the endpoint as directory listings, and includes any links found as files.

Index

Package Files

http.go

func NewFs Uses

func NewFs(name, root string, m configmap.Mapper) (fs.Fs, error)

NewFs creates a new Fs object from the name and root. It connects to the host specified in the config file.

type Fs Uses

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

Fs stores the interface to the remote HTTP files

func (*Fs) Features Uses

func (f *Fs) Features() *fs.Features

Features returns the optional features of this Fs

func (*Fs) Hashes Uses

func (f *Fs) Hashes() hash.Set

Hashes returns hash.HashNone to indicate remote hashing is unavailable

func (*Fs) List Uses

func (f *Fs) List(dir string) (entries fs.DirEntries, err error)

List the objects and directories in dir into entries. The entries can be returned in any order but should be for a complete directory.

dir should be "" to list the root, and should not have trailing slashes.

This should return ErrDirNotFound if the directory isn't found.

func (*Fs) Mkdir Uses

func (f *Fs) Mkdir(dir string) error

Mkdir makes the root directory of the Fs object

func (*Fs) Name Uses

func (f *Fs) Name() string

Name returns the configured name of the file system

func (*Fs) NewObject Uses

func (f *Fs) NewObject(remote string) (fs.Object, error)

NewObject creates a new remote http file object

func (*Fs) Precision Uses

func (f *Fs) Precision() time.Duration

Precision is the remote http file system's modtime precision, which we have no way of knowing. We estimate at 1s

func (*Fs) Put Uses

func (f *Fs) Put(in io.Reader, src fs.ObjectInfo, options ...fs.OpenOption) (fs.Object, error)

Put in to the remote path with the modTime given of the given size

May create the object even if it returns an error - if so will return the object and the error, otherwise will return nil and the error

func (*Fs) PutStream Uses

func (f *Fs) PutStream(in io.Reader, src fs.ObjectInfo, options ...fs.OpenOption) (fs.Object, error)

PutStream uploads to the remote path with the modTime given of indeterminate size

func (*Fs) Rmdir Uses

func (f *Fs) Rmdir(dir string) error

Rmdir removes the root directory of the Fs object

func (*Fs) Root Uses

func (f *Fs) Root() string

Root returns the root for the filesystem

func (*Fs) String Uses

func (f *Fs) String() string

String returns the URL for the filesystem

type Object Uses

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

Object is a remote object that has been stat'd (so it exists, but is not necessarily open for reading)

func (*Object) Fs Uses

func (o *Object) Fs() fs.Info

Fs is the filesystem this remote http file object is located within

func (*Object) Hash Uses

func (o *Object) Hash(r hash.Type) (string, error)

Hash returns "" since HTTP (in Go or OpenSSH) doesn't support remote calculation of hashes

func (*Object) MimeType Uses

func (o *Object) MimeType() string

MimeType of an Object if known, "" otherwise

func (*Object) ModTime Uses

func (o *Object) ModTime() time.Time

ModTime returns the modification time of the remote http file

func (*Object) Open Uses

func (o *Object) Open(options ...fs.OpenOption) (in io.ReadCloser, err error)

Open a remote http file object for reading. Seek is supported

func (*Object) Remote Uses

func (o *Object) Remote() string

Remote the name of the remote HTTP file, relative to the fs root

func (*Object) Remove Uses

func (o *Object) Remove() error

Remove a remote http file object

func (*Object) SetModTime Uses

func (o *Object) SetModTime(modTime time.Time) error

SetModTime sets the modification and access time to the specified time

it also updates the info field

func (*Object) Size Uses

func (o *Object) Size() int64

Size returns the size in bytes of the remote http file

func (*Object) Storable Uses

func (o *Object) Storable() bool

Storable returns whether the remote http file is a regular file (not a directory, symbolic link, block device, character device, named pipe, etc)

func (*Object) String Uses

func (o *Object) String() string

String returns the URL to the remote HTTP file

func (*Object) Update Uses

func (o *Object) Update(in io.Reader, src fs.ObjectInfo, options ...fs.OpenOption) error

Update in to the object with the modTime given of the given size

type Options Uses

type Options struct {
    Endpoint string `config:"url"`
    NoSlash  bool   `config:"no_slash"`
}

Options defines the configuration for this backend

Package http imports 16 packages (graph) and is imported by 1 packages. Updated 2019-05-08. Refresh now. Tools for package owners.