github.com/cloudreve/Cloudreve/v3@v3.0.0-20240224133659-3edb00a6484c/pkg/filesystem/driver/googledrive/handler.go (about) 1 package googledrive 2 3 import ( 4 "context" 5 model "github.com/cloudreve/Cloudreve/v3/models" 6 "github.com/cloudreve/Cloudreve/v3/pkg/filesystem/driver" 7 "github.com/cloudreve/Cloudreve/v3/pkg/filesystem/fsctx" 8 "github.com/cloudreve/Cloudreve/v3/pkg/filesystem/response" 9 "github.com/cloudreve/Cloudreve/v3/pkg/request" 10 "github.com/cloudreve/Cloudreve/v3/pkg/serializer" 11 ) 12 13 // Driver Google Drive 适配器 14 type Driver struct { 15 Policy *model.Policy 16 HTTPClient request.Client 17 } 18 19 // NewDriver 从存储策略初始化新的Driver实例 20 func NewDriver(policy *model.Policy) (driver.Handler, error) { 21 return &Driver{ 22 Policy: policy, 23 HTTPClient: request.NewClient(), 24 }, nil 25 } 26 27 func (d *Driver) Put(ctx context.Context, file fsctx.FileHeader) error { 28 //TODO implement me 29 panic("implement me") 30 } 31 32 func (d *Driver) Delete(ctx context.Context, files []string) ([]string, error) { 33 //TODO implement me 34 panic("implement me") 35 } 36 37 func (d *Driver) Get(ctx context.Context, path string) (response.RSCloser, error) { 38 //TODO implement me 39 panic("implement me") 40 } 41 42 func (d *Driver) Thumb(ctx context.Context, file *model.File) (*response.ContentResponse, error) { 43 //TODO implement me 44 panic("implement me") 45 } 46 47 func (d *Driver) Source(ctx context.Context, path string, ttl int64, isDownload bool, speed int) (string, error) { 48 //TODO implement me 49 panic("implement me") 50 } 51 52 func (d *Driver) Token(ctx context.Context, ttl int64, uploadSession *serializer.UploadSession, file fsctx.FileHeader) (*serializer.UploadCredential, error) { 53 //TODO implement me 54 panic("implement me") 55 } 56 57 func (d *Driver) CancelToken(ctx context.Context, uploadSession *serializer.UploadSession) error { 58 //TODO implement me 59 panic("implement me") 60 } 61 62 func (d *Driver) List(ctx context.Context, path string, recursive bool) ([]response.Object, error) { 63 //TODO implement me 64 panic("implement me") 65 }