public Tasker.Conclusion ExportGames(Tasker tasker, Object syncObject = null) { // get specialized view transferForm = tasker.GetSpecificViews <TaskerTransferForm>().First(); // set up progress bar tasker.SetTitle(Resources.ExportGames); tasker.SetState(Tasker.State.Starting); tasker.SetStatusImage(Resources.sign_up); // safeguard if (Games == null || Games.Count == 0) { return(Tasker.Conclusion.Error); } // add sub-tasks tasker.AddTask(ShowExportDialog, 0); tasker.AddTask(BuildMenu, 0); tasker.AddTask(BuildFiles, 1); tasker.AddTask(CheckLocalStorageRequirements, 1); tasker.AddTask(CalculateLocalDiff, 1); tasker.AddTask(SyncLocalGames, 12); return(Tasker.Conclusion.Success); }
public Tasker.Conclusion UploadGames(Tasker tasker, Object syncObject = null) { // get specialized view transferForm = tasker.GetSpecificViews <TaskerTransferForm>().First(); // set up progress bar tasker.SetTitle(Resources.UploadGames); tasker.SetState(Tasker.State.Starting); tasker.SetStatusImage(Resources.sign_up); // safeguards if (!hakchi.Shell.IsOnline || Games == null || Games.Count == 0) { return(Tasker.Conclusion.Error); } // set up upload path if (ConfigIni.Instance.UploadToTmp) { uploadPath = remoteTempDirectory; } else { uploadPath = hakchi.GetRemoteGameSyncPath(ConfigIni.Instance.ConsoleType); } // add sub-tasks tasker.AddTask(BuildMenu, 0); tasker.AddTask(BuildFiles, 1); tasker.AddTask(CheckRemoteStorageRequirements, 1); tasker.AddTask(PrepareRemoteTransfer, 1); tasker.AddTask(CalculateRemoteDiff, 1); if (ConfigIni.Instance.ForceSSHTransfers || hakchi.Shell is clovershell.ClovershellConnection) { tasker.AddTask(SyncRemoteGamesShell, 28); } else if (hakchi.Shell is INetworkShell) { tasker.AddTask(SyncRemoteGamesFTP, 28); } tasker.AddTask(RemoteCleanup, 1); tasker.AddTask(LinkGames, 1); tasker.AddTask(ShellTasks.SyncConfig, 1); return(Tasker.Conclusion.Success); }