linsk/share/backend.go

20 lines
449 B
Go
Raw Normal View History

2023-08-31 16:19:03 +01:00
package share
import "context"
type NewBackendFunc func(uc *UserConfiguration) (Backend, *VMShareOptions, error)
type Backend interface {
Apply(ctx context.Context, sharePWD string, vc *VMShareContext) (string, error)
}
var backends = map[string]NewBackendFunc{
"ftp": NewFTPBackend,
"smb": NewSMBBackend,
2023-09-01 15:15:40 +01:00
"afp": NewAFPBackend,
2023-08-31 16:19:03 +01:00
}
// Will return nil if no backend is found.
func GetBackend(id string) NewBackendFunc {
return backends[id]
}