//Button Run Backup Clicked private void RunNowButtonClicked(object sender, EventArgs e) { PlanControl planControl = (PlanControl)sender; MainWindow.instance.LabelMainPlanName.Text = "Plan: " + planControl.LabelBackupName.Text; PerformBackup(planControl, false); }
private void DownloadButtonClicked(object sender, EventArgs e) { if (!MainWindow.isActiveDownloadOperation) { MainWindow.isActiveDownloadOperation = true; //to do DisableActions(); string password = new DatabaseService().GetSettings().getPassword(); PlanControl planControl = (PlanControl)sender; Backup lastBackup = databaseService.GetLastBackup(Int32.Parse(planControl.LabelPlanId.Text)); Cloud cloud = databaseService.GetCloudByName(planControl.LabelCloudName.Text); FolderBrowserDialog folderBrowser = new FolderBrowserDialog(); DialogResult dialogResult = folderBrowser.ShowDialog(); if (dialogResult == DialogResult.OK) { MainWindow.instance.LabelMainPlanName.Text = "Plan: " + planControl.LabelBackupName.Text; DownloadBackupAction downloadBackupAction = new DownloadBackupAction(cloud, lastBackup.targetPath, planControl.LabelStatus, planControl.ProgressBarArchiving, folderBrowser.SelectedPath, DownloadCompleteEvent, password, false); downloadBackupAction.StartDownloadBackupAction(); } else { MainWindow.instance.ResetDownloadAction(); MainWindow.isActiveDownloadOperation = false; } } }
public WhenExecutingMission() { var logger = new NullLoggerFactory().CreateLogger("Logger"); var directionControl = new DirectionControl(); var movementControl = new MovementControl(); var planControl = new PlanControl(logger); var navigationControl = new NavigationControl(movementControl, directionControl, logger); _missionControl = new MissionControl(logger, navigationControl, planControl); }
//Load Plans in the 2nd tab public void LoadPlans() { flowLayoutPanelPlans.Controls.Clear(); List <BackupPlan> plans = databaseService.GetAllPlans(); labelTotalPlans.Text = "Total plans: " + plans.Count; foreach (var plan in plans) { PlanControl control = new PlanControl(); control.LabelBackupName.Text = plan.name; control.LabelCloudName.Text = plan.cloudName; control.LabelCreated.Text = plan.creationDate.ToShortDateString(); control.LabelCurrentStatus.Text = plan.currentStatus; control.LabelOverrideBackup.Text = plan.overrideBackup ? "Yes" : "No"; Backup backup = databaseService.GetLastBackup(plan.id); if (backup != null) { TimeSpan runTimeTimeSpan = new TimeSpan(0, 0, 0, 0, (int)backup.runTime); String runTime = (runTimeTimeSpan.Days > 0 ? runTimeTimeSpan.Days + " d - " : "") + runTimeTimeSpan.Hours + " h : " + runTimeTimeSpan.Minutes + " m : " + runTimeTimeSpan.Seconds + " s"; control.LabelLastDuration.Text = runTime; control.LabelLastRun.Text = plan.lastExecution.ToLongTimeString(); } else { control.DisableActionsWhenNoBackup(); } control.LabelFolderPath.Text = plan.path; control.LabelLastResult.Text = (plan.lastResult ? "Succes" : ""); if (plan.scheduleType.Equals("Monthly")) { control.LabelScheduleTime.Text = "Day " + plan.scheduleDay + " of each month, at " + plan.scheduleTime.ToString("HH:mm"); } if (plan.scheduleType.Equals("Weekly")) { control.LabelScheduleTime.Text = "Each " + ((DayOfWeek)((plan.scheduleDay) % 7)).ToString() + ", at " + plan.scheduleTime.ToString("HH:mm"); } if (plan.scheduleType.Equals("Daily")) { control.LabelScheduleTime.Text = "Each Day at " + plan.scheduleTime.ToString("HH:mm"); } control.LabelScheduleType.Text = plan.scheduleType; control.LabelPlanId.Text = plan.id.ToString(); control.OnUserControlDeletePlanButtonClicked += (s, e) => DeletePlanButtonClicked(s, e); control.OnUserControlRunNowButtonClicked += (s, e) => RunNowButtonClicked(s, e); control.OnUserControlDownloadButtonClicked += (s, e) => DownloadButtonClicked(s, e); control.OnUserControlEditButtonClicked += (s, e) => EditButtonClicked(s, e); control.OnUserControlViewHystoryButtonClicked += (s, e) => ViewHistoryButtonClicked(s, e); control.OnUserControlRestoreButtonClicked += (s, e) => RestoreButtonClicked(s, e); flowLayoutPanelPlans.Controls.Add(control); } }
public void PerformBackup(PlanControl planControl, bool isFromSchedule) { if (!MainWindow.isActiveUploadOperation) { MainWindow.isActiveUploadOperation = true; DisableActions(); string password = new DatabaseService().GetSettings().getPassword(); BackupPlan backupPlan = databaseService.GetBackupPlan(Int32.Parse(planControl.LabelPlanId.Text)); UploadBackupAction uploadBackupAction = new UploadBackupAction(backupPlan, planControl.LabelStatus, planControl.ProgressBarArchiving, BackupCompleteEvent, password, isFromSchedule); uploadBackupAction.StartBackupAction(); } }
private void ExecuteBackup(int planId) { bool isExecuted = false; foreach (var p in mainWindowinstance.FlowLayoutPanelPlans.Controls) { PlanControl planControl = (PlanControl)p; if (Int32.Parse(planControl.LabelPlanId.Text) == planId) { Console.WriteLine("start backup from schedule"); mainWindowinstance.backupPlansTabController.PerformBackup(planControl, true); isExecuted = true; } } //in case a plan was deleted if (!isExecuted) { LoadQueueList(); } }
private void RestoreButtonClicked(object sender, EventArgs e) { DialogResult dialog = MessageBox.Show("Are you sure you want to restore files from last backup?You will lose your current work.", "Restore Backup Plan", MessageBoxButtons.YesNo); if (dialog == DialogResult.Yes) { if (!MainWindow.isActiveDownloadOperation) { MainWindow.isActiveDownloadOperation = true; DisableActions(); string password = new DatabaseService().GetSettings().getPassword(); PlanControl planControl = (PlanControl)sender; Cloud cloud = databaseService.GetCloudByName(planControl.LabelCloudName.Text); Backup lastBackup = databaseService.GetLastBackup(Int32.Parse(planControl.LabelPlanId.Text)); MainWindow.instance.LabelMainPlanName.Text = "Plan: " + planControl.LabelBackupName.Text; DownloadBackupAction downloadBackupAction = new DownloadBackupAction(cloud, lastBackup.targetPath, planControl.LabelStatus, planControl.ProgressBarArchiving, planControl.LabelFolderPath.Text, DownloadCompleteEvent, password, true); downloadBackupAction.StartDownloadBackupAction(); } } }
public WhenGeneratingAPlan() { var logger = new NullLoggerFactory().CreateLogger("Logger"); _planControl = new PlanControl(logger); }