linsk/share/backend.go
2023-08-31 16:19:03 +01:00

19 lines
426 B
Go

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,
}
// Will return nil if no backend is found.
func GetBackend(id string) NewBackendFunc {
return backends[id]
}