/// <summary> /// Informs the user of the current status of the migration process. /// </summary> /// <param name="migrationStep">The migration step the status applies to.</param> /// <param name="messageType">The type of messaging being communicated.</param> /// <param name="statusMessage">Status message to be sent to the user.</param> public async Task UpdateCurrentStatusAsync(MigrationStepEnum migrationStep, MessageTypeEnum messageType, string statusMessage) { //confirming there is a message to update. if (string.IsNullOrEmpty(statusMessage)) { return; } //Scheduling the update of the observable collection that bound to the data grid on the dialog. await Dispatcher.InvokeAsync(() => { var status = new MigrationStepStatus { MessageType = messageType.GetName(), MigrationStep = migrationStep.GetName(), Status = statusMessage }; StepStatus.Add(status); } , DispatcherPriority.Normal); }
/// <summary> /// Gets a title assigned to each migration step. /// </summary> /// <param name="source">The migration step to be loaded.</param> /// <returns>The title.</returns> public static string GetName(this MigrationStepEnum source) { string name = null; switch (source) { case MigrationStepEnum.Startup: name = "Startup"; break; case MigrationStepEnum.HttpModules: name = "Http Modules"; break; case MigrationStepEnum.StaticFiles: name = "Static Files"; break; case MigrationStepEnum.Bundling: name = "Bundling"; break; case MigrationStepEnum.AspxPages: name = "Aspx Pages"; break; case MigrationStepEnum.Config: name = "Configuration"; break; case MigrationStepEnum.AppLogic: name = "App Logic"; break; case MigrationStepEnum.MigrationProcess: name = "Migration Process"; break; } return(name); }
/// <summary> /// Informs the user of the status of a target step of the migration process. /// </summary> /// <param name="step">Step that is getting updated.</param> /// <param name="status">The status the step is being changed to.</param> public async Task UpdateStepStatusAsync(MigrationStepEnum step, MigrationStatusEnum status) { //Scheduling the update of the target step in the migration process process. //Extension method is used on the TextBlock to update the status of the migration step. await Dispatcher.InvokeAsync(() => { switch (step) { case MigrationStepEnum.Startup: BorderStartupProcess.Visibility = status == MigrationStatusEnum.Running ? Visibility.Visible : Visibility.Hidden; TextBlockStartupProcessStatus.UpdateMigrationStatus(status); break; case MigrationStepEnum.HttpModules: BorderMigrateHttpModules.Visibility = status == MigrationStatusEnum.Running ? Visibility.Visible : Visibility.Hidden; TextBlockMigrateHttpModulesStatus.UpdateMigrationStatus(status); break; case MigrationStepEnum.StaticFiles: BorderMigrateStaticFiles.Visibility = status == MigrationStatusEnum.Running ? Visibility.Visible : Visibility.Hidden; TextBlockMigrateStaticFilesStatus.UpdateMigrationStatus(status); break; case MigrationStepEnum.Bundling: BorderMigrateBundling.Visibility = status == MigrationStatusEnum.Running ? Visibility.Visible : Visibility.Hidden; TextBlockMigrateBundlingStatus.UpdateMigrationStatus(status); break; case MigrationStepEnum.AspxPages: BorderMigrateAspxPages.Visibility = status == MigrationStatusEnum.Running ? Visibility.Visible : Visibility.Hidden; TextBlockMigrateAspxPagesStatus.UpdateMigrationStatus(status); break; case MigrationStepEnum.Config: BorderMigrateConfiguration.Visibility = status == MigrationStatusEnum.Running ? Visibility.Visible : Visibility.Hidden; TextBlockMigrateConfigurationStatus.UpdateMigrationStatus(status); break; case MigrationStepEnum.AppLogic: BorderMigrateLogic.Visibility = status == MigrationStatusEnum.Running ? Visibility.Visible : Visibility.Hidden; TextBlockMigrateLogicStatus.UpdateMigrationStatus(status); break; case MigrationStepEnum.MigrationProcess: BorderMigrateProcess.Visibility = status == MigrationStatusEnum.Running ? Visibility.Visible : Visibility.Hidden; TextBlockMigrationProcessStatus.UpdateMigrationStatus(status); break; } } , DispatcherPriority.Normal); }
public async Task UpdateStepStatusAsync(MigrationStepEnum step, MigrationStatusEnum status) { throw new NotImplementedException(); }