Documentation ¶
Index ¶
- func NewFs(ctx context.Context, name, root string, m configmap.Mapper) (fs.Fs, error)
- type Account
- type Error
- type File
- type Folder
- type FolderList
- type Fs
- func (f *Fs) Copy(ctx context.Context, src fs.Object, remote string) (fs.Object, error)
- func (f *Fs) CreateDir(ctx context.Context, pathID, leaf string) (newID string, err error)
- func (f *Fs) DirCacheFlush()
- func (f *Fs) DirMove(ctx context.Context, src fs.Fs, srcRemote, dstRemote string) (err error)
- func (f *Fs) Features() *fs.Features
- func (f *Fs) FindLeaf(ctx context.Context, pathID, leaf string) (pathIDOut string, found bool, err error)
- func (f *Fs) Hashes() hash.Set
- func (f *Fs) List(ctx context.Context, dir string) (entries fs.DirEntries, err error)
- func (f *Fs) Mkdir(ctx context.Context, dir string) error
- func (f *Fs) Move(ctx context.Context, src fs.Object, remote string) (fs.Object, error)
- func (f *Fs) Name() string
- func (f *Fs) NewObject(ctx context.Context, remote string) (fs.Object, error)
- func (f *Fs) Precision() time.Duration
- func (f *Fs) Purge(ctx context.Context, dir string) error
- func (f *Fs) Put(ctx context.Context, in io.Reader, src fs.ObjectInfo, options ...fs.OpenOption) (fs.Object, error)
- func (f *Fs) Rmdir(ctx context.Context, dir string) error
- func (f *Fs) Root() string
- func (f *Fs) String() string
- type Object
- func (o *Object) Fs() fs.Info
- func (o *Object) Hash(ctx context.Context, t hash.Type) (string, error)
- func (o *Object) ID() string
- func (o *Object) ModTime(ctx context.Context) time.Time
- func (o *Object) Open(ctx context.Context, options ...fs.OpenOption) (in io.ReadCloser, err error)
- func (o *Object) ParentID() string
- func (o *Object) Remote() string
- func (o *Object) Remove(ctx context.Context) error
- func (o *Object) SetModTime(ctx context.Context, modTime time.Time) error
- func (o *Object) Size() int64
- func (o *Object) Storable() bool
- func (o *Object) String() string
- func (o *Object) Update(ctx context.Context, in io.Reader, src fs.ObjectInfo, options ...fs.OpenOption) error
- type Options
- type UserSessionInfo
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Error ¶
type Error struct { Info struct { Code int `json:"code"` Message string `json:"message"` } `json:"error"` }
Error describes an openDRIVE error response
type File ¶
type File struct { FileID string `json:"FileId"` FileHash string `json:"FileHash"` Name string `json:"Name"` GroupID int `json:"GroupID"` Extension string `json:"Extension"` Size int64 `json:"Size,string"` Views string `json:"Views"` Version string `json:"Version"` Downloads string `json:"Downloads"` DateModified int64 `json:"DateModified,string"` Access string `json:"Access"` Link string `json:"Link"` DownloadLink string `json:"DownloadLink"` StreamingLink string `json:"StreamingLink"` TempStreamingLink string `json:"TempStreamingLink"` EditLink string `json:"EditLink"` ThumbLink string `json:"ThumbLink"` Password string `json:"Password"` EditOnline int `json:"EditOnline"` }
File describes an OpenDRIVE file
type Folder ¶
type Folder struct { FolderID string `json:"FolderID"` Name string `json:"Name"` DateCreated int `json:"DateCreated"` DirUpdateTime int `json:"DirUpdateTime"` Access int `json:"Access"` DateModified int64 `json:"DateModified"` ChildFolders int `json:"ChildFolders"` Link string `json:"Link"` Encrypted string `json:"Encrypted"` }
Folder describes an OpenDRIVE folder
type FolderList ¶
type FolderList struct { // DirUpdateTime string `json:"DirUpdateTime,string"` Name string `json:"Name"` ParentFolderID string `json:"ParentFolderID"` DirectFolderLink string `json:"DirectFolderLink"` ResponseType int `json:"ResponseType"` Folders []Folder `json:"Folders"` Files []File `json:"Files"` }
FolderList describes an OpenDRIVE listing
type Fs ¶
type Fs struct {
// contains filtered or unexported fields
}
Fs represents a remote server
func (*Fs) Copy ¶
Copy src to this remote using server-side copy operations.
This is stored with the remote path given ¶
It returns the destination Object and a possible error ¶
Will only be called if src.Fs().Name() == f.Name()
If it isn't possible then return fs.ErrorCantCopy
func (*Fs) DirCacheFlush ¶
func (f *Fs) DirCacheFlush()
DirCacheFlush resets the directory cache - used in testing as an optional interface
func (*Fs) DirMove ¶
DirMove moves src, srcRemote to this remote at dstRemote using server-side move operations.
Will only be called if src.Fs().Name() == f.Name()
If it isn't possible then return fs.ErrorCantDirMove
If destination exists then return fs.ErrorDirExists
func (*Fs) FindLeaf ¶
func (f *Fs) FindLeaf(ctx context.Context, pathID, leaf string) (pathIDOut string, found bool, err error)
FindLeaf finds a directory of name leaf in the folder with ID pathID
func (*Fs) List ¶
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) Move ¶
Move src to this remote using server-side move operations.
This is stored with the remote path given ¶
It returns the destination Object and a possible error ¶
Will only be called if src.Fs().Name() == f.Name()
If it isn't possible then return fs.ErrorCantMove
func (*Fs) NewObject ¶
NewObject finds the Object at remote. If it can't be found it returns the error fs.ErrorObjectNotFound.
func (*Fs) Purge ¶
Purge deletes all the files in the directory
Optional interface: Only implement this if you have a way of deleting all the files quicker than just running Remove() on the result of List()
func (*Fs) Put ¶
func (f *Fs) Put(ctx context.Context, in io.Reader, src fs.ObjectInfo, options ...fs.OpenOption) (fs.Object, error)
Put the object into the bucket
Copy the reader in to the new object which is returned ¶
The new object may have been created if an error is returned
type Object ¶
type Object struct {
// contains filtered or unexported fields
}
Object describes an object
func (*Object) ModTime ¶
ModTime returns the modification time of the object
It attempts to read the objects mtime and if that isn't present the LastModified returned in the http headers
func (*Object) Open ¶
func (o *Object) Open(ctx context.Context, options ...fs.OpenOption) (in io.ReadCloser, err error)
Open an object for read
func (*Object) ParentID ¶
ParentID returns the ID of the Object parent directory if known, or "" if not
func (*Object) SetModTime ¶
SetModTime sets the modification time of the local fs object
type Options ¶
type Options struct { UserName string `config:"username"` Password string `config:"password"` Enc encoder.MultiEncoder `config:"encoding"` ChunkSize fs.SizeSuffix `config:"chunk_size"` }
Options defines the configuration for this backend
type UserSessionInfo ¶
type UserSessionInfo struct { Username string `json:"username"` Password string `json:"passwd"` SessionID string `json:"SessionID"` UserName string `json:"UserName"` UserFirstName string `json:"UserFirstName"` UserLastName string `json:"UserLastName"` AccType string `json:"AccType"` UserLang string `json:"UserLang"` UserID string `json:"UserID"` IsAccountUser json.RawMessage `json:"IsAccountUser"` DriveName string `json:"DriveName"` UserLevel string `json:"UserLevel"` UserPlan string `json:"UserPlan"` FVersioning string `json:"FVersioning"` UserDomain string `json:"UserDomain"` PartnerUsersDomain string `json:"PartnerUsersDomain"` }
UserSessionInfo describes an OpenDRIVE session