mirror of
https://github.com/rclone/rclone.git
synced 2025-12-17 16:53:22 +00:00
vendor: add github.com/goftp/server
This commit is contained in:
61
vendor/github.com/goftp/server/driver.go
generated
vendored
Normal file
61
vendor/github.com/goftp/server/driver.go
generated
vendored
Normal file
@@ -0,0 +1,61 @@
|
||||
// Copyright 2018 The goftp Authors. All rights reserved.
|
||||
// Use of this source code is governed by a MIT-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package server
|
||||
|
||||
import "io"
|
||||
|
||||
// DriverFactory is a driver factory to create driver. For each client that connects to the server, a new FTPDriver is required.
|
||||
// Create an implementation if this interface and provide it to FTPServer.
|
||||
type DriverFactory interface {
|
||||
NewDriver() (Driver, error)
|
||||
}
|
||||
|
||||
// Driver is an interface that you will create an implementation that speaks to your
|
||||
// chosen persistence layer. graval will create a new instance of your
|
||||
// driver for each client that connects and delegate to it as required.
|
||||
type Driver interface {
|
||||
// Init init
|
||||
Init(*Conn)
|
||||
|
||||
// params - a file path
|
||||
// returns - a time indicating when the requested path was last modified
|
||||
// - an error if the file doesn't exist or the user lacks
|
||||
// permissions
|
||||
Stat(string) (FileInfo, error)
|
||||
|
||||
// params - path
|
||||
// returns - true if the current user is permitted to change to the
|
||||
// requested path
|
||||
ChangeDir(string) error
|
||||
|
||||
// params - path, function on file or subdir found
|
||||
// returns - error
|
||||
// path
|
||||
ListDir(string, func(FileInfo) error) error
|
||||
|
||||
// params - path
|
||||
// returns - nil if the directory was deleted or any error encountered
|
||||
DeleteDir(string) error
|
||||
|
||||
// params - path
|
||||
// returns - nil if the file was deleted or any error encountered
|
||||
DeleteFile(string) error
|
||||
|
||||
// params - from_path, to_path
|
||||
// returns - nil if the file was renamed or any error encountered
|
||||
Rename(string, string) error
|
||||
|
||||
// params - path
|
||||
// returns - nil if the new directory was created or any error encountered
|
||||
MakeDir(string) error
|
||||
|
||||
// params - path
|
||||
// returns - a string containing the file data to send to the client
|
||||
GetFile(string, int64) (int64, io.ReadCloser, error)
|
||||
|
||||
// params - destination path, an io.Reader containing the file data
|
||||
// returns - the number of bytes writen and the first error encountered while writing, if any.
|
||||
PutFile(string, io.Reader, bool) (int64, error)
|
||||
}
|
||||
Reference in New Issue
Block a user