mirror of
https://github.com/OpenListTeam/OpenList.git
synced 2025-09-20 04:36:09 +08:00

* Enable blank issue * chore(README.md): update docs (temporally) * Update FUNDING.yml * chore: purge README.md * chore: change module name to OpenListTeam/OpenList * fix: fix link errors * chore: remove v3 in module name * fix: resolve some conficts * fix: resolve conficts * docs: update with latest file --------- Co-authored-by: ShenLin <773933146@qq.com> Co-authored-by: Hantong Chen <cxwdyx620@gmail.com> Co-authored-by: joshua <i@joshua.su> Co-authored-by: Hantong Chen <70561268+cxw620@users.noreply.github.com>
39 lines
853 B
Go
39 lines
853 B
Go
package tool
|
|
|
|
import (
|
|
"github.com/OpenListTeam/OpenList/internal/model"
|
|
)
|
|
|
|
type AddUrlArgs struct {
|
|
Url string
|
|
UID string
|
|
TempDir string
|
|
Signal chan int
|
|
}
|
|
|
|
type Status struct {
|
|
TotalBytes int64
|
|
Progress float64
|
|
NewGID string
|
|
Completed bool
|
|
Status string
|
|
Err error
|
|
}
|
|
|
|
type Tool interface {
|
|
Name() string
|
|
// Items return the setting items the tool need
|
|
Items() []model.SettingItem
|
|
Init() (string, error)
|
|
IsReady() bool
|
|
// AddURL add an uri to download, return the task id
|
|
AddURL(args *AddUrlArgs) (string, error)
|
|
// Remove the download if task been canceled
|
|
Remove(task *DownloadTask) error
|
|
// Status return the status of the download task, if an error occurred, return the error in Status.Err
|
|
Status(task *DownloadTask) (*Status, error)
|
|
|
|
// Run for simple http download
|
|
Run(task *DownloadTask) error
|
|
}
|