mirror of
https://github.com/rclone/rclone.git
synced 2024-11-22 11:58:20 +08:00
35 lines
783 B
Go
35 lines
783 B
Go
package fs
|
|
|
|
// OverrideDirectory is a wrapper to override the Remote for an
|
|
// Directory
|
|
type OverrideDirectory struct {
|
|
Directory
|
|
remote string
|
|
}
|
|
|
|
// NewOverrideDirectory returns an OverrideDirectoryObject which will
|
|
// return the remote specified
|
|
func NewOverrideDirectory(oi Directory, remote string) *OverrideDirectory {
|
|
// re-wrap an OverrideDirectory
|
|
if or, ok := oi.(*OverrideDirectory); ok {
|
|
return &OverrideDirectory{
|
|
Directory: or.Directory,
|
|
remote: remote,
|
|
}
|
|
}
|
|
return &OverrideDirectory{
|
|
Directory: oi,
|
|
remote: remote,
|
|
}
|
|
}
|
|
|
|
// Remote returns the overridden remote name
|
|
func (o *OverrideDirectory) Remote() string {
|
|
return o.remote
|
|
}
|
|
|
|
// String returns the overridden remote name
|
|
func (o *OverrideDirectory) String() string {
|
|
return o.remote
|
|
}
|