public Copy(string host, string user, string pass) { _stateMove = new Move(host, user, pass) { IsCopy = true }; }
private static TaskStateMove CopyExecute(string fromPath, string toPath, ProgressHandler progressHandler, bool hasExceptions) { TaskStateMove state = null; switch (PrefC.AtoZfolderUsed) { case DataStorageType.DropboxAtoZ: state = new OpenDentalCloud.Dropbox.Copy(Dropbox.AccessToken) { FromPath = PathTidy(fromPath), ToPath = PathTidy(toPath), ProgressHandler = progressHandler, HasExceptions = hasExceptions }; break; case DataStorageType.SftpAtoZ: state = new OpenDentalCloud.Sftp.Copy(ODSftp.Hostname, ODSftp.UserName, ODSftp.Password) { FromPath = PathTidy(fromPath), ToPath = PathTidy(toPath), ProgressHandler = progressHandler, HasExceptions = hasExceptions }; break; case DataStorageType.InDatabase: case DataStorageType.LocalAtoZ: //Local storage methods should never be calling this method, throw an exception so it's more obvious that this was the issue, //rather than returning null and having the method throw a null exception later. throw new Exception("Unknown cloud storage type: " + PrefC.AtoZfolderUsed.ToString()); default: throw new Exception("DataStorageType: " + PrefC.AtoZfolderUsed.ToString() + " not implemented."); } state.Execute(progressHandler != null); return(state); }