plugins

package
v0.3.1 Latest Latest
Warning

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

Go to latest
Published: Apr 21, 2024 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Overview

Copyright (c) 2020 tickstep.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Index

Constants

This section is empty.

Variables

View Source
var (
	PersistenceFilePath = ""
)

Functions

func DeleteLocalFile

func DeleteLocalFile(localFilePath string) bool

DeleteLocalFile 删除本地文件,不支持文件夹

func GetString added in v0.2.4

func GetString(key string) string

GetString 获取值

func HttpGet

func HttpGet(header map[string]string, url string) string

HttpGet Http的get请求

func HttpPost

func HttpPost(header map[string]string, url string, data interface{}) string

HttpPost Http的post请求

func PutString added in v0.2.4

func PutString(key, value string) bool

PutString 存储KV键值对

func SendHtmlMail added in v0.2.4

func SendHtmlMail(mailServer, userName, password, to, subject, body string) bool

SendHtmlMail 发送HTML富文本邮件

func SendTextMail added in v0.2.4

func SendTextMail(mailServer, userName, password, to, subject, body string) bool

SendTextMail 发送文本邮件

Types

type Context

type Context struct {
	AppName      string `json:"appName"`
	Version      string `json:"version"`
	UserId       string `json:"userId"`
	Nickname     string `json:"nickname"`
	FileDriveId  string `json:"fileDriveId"`
	AlbumDriveId string `json:"albumDriveId"`
}

Context 插件回调函数上下文信息

func GetContext

func GetContext(user *config.PanUser) *Context

type DownloadFileFinishParams

type DownloadFileFinishParams struct {
	DriveId            string `json:"driveId"`
	DriveFileName      string `json:"driveFileName"`
	DriveFilePath      string `json:"driveFilePath"`
	DriveFileSha1      string `json:"driveFileSha1"`
	DriveFileSize      int64  `json:"driveFileSize"`
	DriveFileType      string `json:"driveFileType"`
	DriveFileUpdatedAt string `json:"driveFileUpdatedAt"`
	DownloadResult     string `json:"downloadResult"`
	LocalFilePath      string `json:"localFilePath"`
}

DownloadFileFinishParams 下载文件结束的回调函数-参数

type DownloadFilePrepareParams

type DownloadFilePrepareParams struct {
	DriveId            string `json:"driveId"`
	DriveFileName      string `json:"driveFileName"`
	DriveFilePath      string `json:"driveFilePath"`
	DriveFileSha1      string `json:"driveFileSha1"`
	DriveFileSize      int64  `json:"driveFileSize"`
	DriveFileType      string `json:"driveFileType"`
	DriveFileUpdatedAt string `json:"driveFileUpdatedAt"`
	LocalFilePath      string `json:"localFilePath"`
}

DownloadFilePrepareParams 下载文件前的回调函数-参数

type DownloadFilePrepareResult

type DownloadFilePrepareResult struct {
	// DownloadApproved 确认该文件是否下载。yes-下载 no-不下载
	DownloadApproved string `json:"downloadApproved"`
	// LocalFilePath 保存本地的修改后的路径。注意该路径是相对路径
	LocalFilePath string `json:"localFilePath"`
}

DownloadFilePrepareResult 上传文件前的回调函数-返回结果

type IdlePlugin

type IdlePlugin struct {
	Name string
}

func NewIdlePlugin

func NewIdlePlugin() *IdlePlugin

func (*IdlePlugin) DownloadFileFinishCallback

func (p *IdlePlugin) DownloadFileFinishCallback(context *Context, params *DownloadFileFinishParams) error

func (*IdlePlugin) DownloadFilePrepareCallback

func (p *IdlePlugin) DownloadFilePrepareCallback(context *Context, params *DownloadFilePrepareParams) (*DownloadFilePrepareResult, error)

func (*IdlePlugin) Start

func (p *IdlePlugin) Start() error

func (*IdlePlugin) Stop

func (p *IdlePlugin) Stop() error

func (*IdlePlugin) SyncFileFinishCallback added in v0.2.3

func (p *IdlePlugin) SyncFileFinishCallback(context *Context, params *SyncFileFinishParams) error

func (*IdlePlugin) SyncScanLocalFilePrepareCallback added in v0.1.6

func (p *IdlePlugin) SyncScanLocalFilePrepareCallback(context *Context, params *SyncScanLocalFilePrepareParams) (*SyncScanLocalFilePrepareResult, error)

func (*IdlePlugin) SyncScanPanFilePrepareCallback added in v0.1.6

func (p *IdlePlugin) SyncScanPanFilePrepareCallback(context *Context, params *SyncScanPanFilePrepareParams) (*SyncScanPanFilePrepareResult, error)

func (*IdlePlugin) UploadFileFinishCallback

func (p *IdlePlugin) UploadFileFinishCallback(context *Context, params *UploadFileFinishParams) error

func (*IdlePlugin) UploadFilePrepareCallback

func (p *IdlePlugin) UploadFilePrepareCallback(context *Context, params *UploadFilePrepareParams) (*UploadFilePrepareResult, error)

func (*IdlePlugin) UserTokenRefreshFinishCallback added in v0.2.4

func (p *IdlePlugin) UserTokenRefreshFinishCallback(context *Context, params *UserTokenRefreshFinishParams) error

type JsPlugin

type JsPlugin struct {
	Name string
	// contains filtered or unexported fields
}

func NewJsPlugin

func NewJsPlugin() *JsPlugin

func (*JsPlugin) DownloadFileFinishCallback

func (js *JsPlugin) DownloadFileFinishCallback(context *Context, params *DownloadFileFinishParams) error

DownloadFileFinishCallback 下载文件结束的回调函数

func (*JsPlugin) DownloadFilePrepareCallback

func (js *JsPlugin) DownloadFilePrepareCallback(context *Context, params *DownloadFilePrepareParams) (*DownloadFilePrepareResult, error)

DownloadFilePrepareCallback 下载文件前的回调函数

func (*JsPlugin) LoadScript

func (js *JsPlugin) LoadScript(script string) error

LoadScript 加载脚本

func (*JsPlugin) Start

func (js *JsPlugin) Start() error

func (*JsPlugin) Stop

func (js *JsPlugin) Stop() error

func (*JsPlugin) SyncFileFinishCallback added in v0.2.3

func (js *JsPlugin) SyncFileFinishCallback(context *Context, params *SyncFileFinishParams) error

SyncFileFinishCallback 同步备份-同步文件完成的回调函数

func (*JsPlugin) SyncScanLocalFilePrepareCallback added in v0.1.6

func (js *JsPlugin) SyncScanLocalFilePrepareCallback(context *Context, params *SyncScanLocalFilePrepareParams) (*SyncScanLocalFilePrepareResult, error)

SyncScanLocalFilePrepareCallback 同步备份-扫描本地文件的回调函数

func (*JsPlugin) SyncScanPanFilePrepareCallback added in v0.1.6

func (js *JsPlugin) SyncScanPanFilePrepareCallback(context *Context, params *SyncScanPanFilePrepareParams) (*SyncScanPanFilePrepareResult, error)

SyncScanPanFilePrepareCallback 同步备份-扫描本地文件的回调函数

func (*JsPlugin) UploadFileFinishCallback

func (js *JsPlugin) UploadFileFinishCallback(context *Context, params *UploadFileFinishParams) error

UploadFileFinishCallback 上传文件结束的回调函数

func (*JsPlugin) UploadFilePrepareCallback

func (js *JsPlugin) UploadFilePrepareCallback(context *Context, params *UploadFilePrepareParams) (*UploadFilePrepareResult, error)

UploadFilePrepareCallback 上传文件前的回调函数

func (*JsPlugin) UserTokenRefreshFinishCallback added in v0.2.4

func (js *JsPlugin) UserTokenRefreshFinishCallback(context *Context, params *UserTokenRefreshFinishParams) error

type PersistenceItem added in v0.2.4

type PersistenceItem struct {
	Key   string `json:"key"`
	Value string `json:"value"`
	Type  string `json:"type"`
}

type Plugin

type Plugin interface {
	// Start 启动
	Start() error

	// UploadFilePrepareCallback 上传文件前的回调函数
	UploadFilePrepareCallback(context *Context, params *UploadFilePrepareParams) (*UploadFilePrepareResult, error)

	// UploadFileFinishCallback 上传文件结束的回调函数
	UploadFileFinishCallback(context *Context, params *UploadFileFinishParams) error

	// DownloadFilePrepareCallback 下载文件前的回调函数
	DownloadFilePrepareCallback(context *Context, params *DownloadFilePrepareParams) (*DownloadFilePrepareResult, error)

	// DownloadFileFinishCallback 下载文件结束的回调函数
	DownloadFileFinishCallback(context *Context, params *DownloadFileFinishParams) error

	// SyncScanLocalFilePrepareCallback 同步备份-扫描本地文件的回调函数
	SyncScanLocalFilePrepareCallback(context *Context, params *SyncScanLocalFilePrepareParams) (*SyncScanLocalFilePrepareResult, error)

	// SyncScanPanFilePrepareCallback 同步备份-扫描本地文件的回调函数
	SyncScanPanFilePrepareCallback(context *Context, params *SyncScanPanFilePrepareParams) (*SyncScanPanFilePrepareResult, error)

	// SyncFileFinishCallback 同步备份-同步文件完成的回调函数
	SyncFileFinishCallback(context *Context, params *SyncFileFinishParams) error

	// UserTokenRefreshFinishCallback 用户Token刷新完成后回调函数
	UserTokenRefreshFinishCallback(context *Context, params *UserTokenRefreshFinishParams) error

	// Stop 停止
	Stop() error
}

Plugin 插件接口

type PluginManager

type PluginManager struct {
	PluginPath string
}

func NewPluginManager

func NewPluginManager(pluginDir string) *PluginManager

func (*PluginManager) GetPlugin

func (p *PluginManager) GetPlugin() (Plugin, error)

func (*PluginManager) SetPluginPath

func (p *PluginManager) SetPluginPath(pluginPath string) error

type SyncFileFinishParams added in v0.2.3

type SyncFileFinishParams struct {
	Action        string `json:"action"`
	ActionResult  string `json:"actionResult"`
	DriveId       string `json:"driveId"`
	FileName      string `json:"fileName"`
	FilePath      string `json:"filePath"`
	FileSha1      string `json:"fileSha1"`
	FileSize      int64  `json:"fileSize"`
	FileType      string `json:"fileType"`
	FileUpdatedAt string `json:"fileUpdatedAt"`
}

SyncFileFinishParams 同步备份-文件同步结束-回调参数

type SyncScanLocalFilePrepareParams added in v0.1.6

type SyncScanLocalFilePrepareParams struct {
	LocalFilePath      string `json:"localFilePath"`
	LocalFileName      string `json:"localFileName"`
	LocalFileSize      int64  `json:"localFileSize"`
	LocalFileType      string `json:"localFileType"`
	LocalFileUpdatedAt string `json:"localFileUpdatedAt"`
	DriveId            string `json:"driveId"`
}

SyncScanLocalFilePrepareParams 同步备份-扫描本地文件前参数

type SyncScanLocalFilePrepareResult added in v0.1.6

type SyncScanLocalFilePrepareResult struct {
	// SyncScanLocalApproved 该文件是否确认扫描,yes-允许扫描,no-禁止扫描
	SyncScanLocalApproved string `json:"syncScanLocalApproved"`
}

SyncScanLocalFilePrepareResult 同步备份-扫描本地文件-返回结果

type SyncScanPanFilePrepareParams added in v0.1.6

type SyncScanPanFilePrepareParams struct {
	DriveId            string `json:"driveId"`
	DriveFileName      string `json:"driveFileName"`
	DriveFilePath      string `json:"driveFilePath"`
	DriveFileSha1      string `json:"driveFileSha1"`
	DriveFileSize      int64  `json:"driveFileSize"`
	DriveFileType      string `json:"driveFileType"`
	DriveFileUpdatedAt string `json:"driveFileUpdatedAt"`
}

SyncScanPanFilePrepareParams 同步备份-扫描云盘文件前参数

type SyncScanPanFilePrepareResult added in v0.1.6

type SyncScanPanFilePrepareResult struct {
	// SyncScanPanApproved 该文件是否确认扫描,yes-允许扫描,no-禁止扫描
	SyncScanPanApproved string `json:"syncScanPanApproved"`
}

SyncScanPanFilePrepareResult 同步备份-扫描云盘文件-返回结果

type UploadFileFinishParams

type UploadFileFinishParams struct {
	LocalFilePath      string `json:"localFilePath"`
	LocalFileName      string `json:"localFileName"`
	LocalFileSize      int64  `json:"localFileSize"`
	LocalFileType      string `json:"localFileType"`
	LocalFileUpdatedAt string `json:"localFileUpdatedAt"`
	LocalFileSha1      string `json:"localFileSha1"`
	UploadResult       string `json:"uploadResult"`
	DriveId            string `json:"driveId"`
	DriveFilePath      string `json:"driveFilePath"`
}

UploadFileFinishParams 上传文件结束的回调函数-参数

type UploadFilePrepareParams

type UploadFilePrepareParams struct {
	LocalFilePath      string `json:"localFilePath"`
	LocalFileName      string `json:"localFileName"`
	LocalFileSize      int64  `json:"localFileSize"`
	LocalFileType      string `json:"localFileType"`
	LocalFileUpdatedAt string `json:"localFileUpdatedAt"`
	DriveId            string `json:"driveId"`
	DriveFilePath      string `json:"driveFilePath"`
}

UploadFilePrepareParams 上传文件前的回调函数-参数

type UploadFilePrepareResult

type UploadFilePrepareResult struct {
	// UploadApproved 确认该文件是否上传。yes-上传 no-不上传
	UploadApproved string `json:"uploadApproved"`
	// DriveFilePath 保存网盘的修改后的路径。注意该路径是相对路径
	DriveFilePath string `json:"driveFilePath"`
}

UploadFilePrepareResult 上传文件前的回调函数-返回结果

type UserTokenRefreshFinishParams added in v0.2.4

type UserTokenRefreshFinishParams struct {
	Result    string `json:"result"`
	Message   string `json:"message"`
	OldToken  string `json:"oldToken"`
	NewToken  string `json:"newToken"`
	UpdatedAt string `json:"updatedAt"`
}

UserTokenRefreshFinishParams 用户Token刷新完成后回调函数

Jump to

Keyboard shortcuts

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