MCPcopy Create free account
hub / github.com/OpenListTeam/OpenList / Link

Method Link

drivers/sftp/driver.go:59–77  ·  view source on GitHub ↗
(ctx context.Context, file model.Obj, args model.LinkArgs)

Source from the content-addressed store, hash-verified

57}
58
59func (d *SFTP) Link(ctx context.Context, file model.Obj, args model.LinkArgs) (*model.Link, error) {
60 if err := d.clientReconnectOnConnectionError(); err != nil {
61 return nil, err
62 }
63 remoteFile, err := d.client.Open(file.GetPath())
64 if err != nil {
65 return nil, err
66 }
67 mFile := &stream.RateLimitFile{
68 File: remoteFile,
69 Limiter: stream.ServerDownloadLimit,
70 Ctx: ctx,
71 }
72 return &model.Link{
73 RangeReader: stream.GetRangeReaderFromMFile(file.GetSize(), mFile),
74 SyncClosers: utils.NewSyncClosers(remoteFile),
75 RequireReference: true,
76 }, nil
77}
78
79func (d *SFTP) MakeDir(ctx context.Context, parentDir model.Obj, dirName string) error {
80 if err := d.clientReconnectOnConnectionError(); err != nil {

Callers

nothing calls this directly

Calls 6

GetRangeReaderFromMFileFunction · 0.92
NewSyncClosersFunction · 0.92
OpenMethod · 0.65
GetPathMethod · 0.65
GetSizeMethod · 0.65

Tested by

no test coverage detected