/// <summary> /// Called when [uninstall wing]. /// </summary> /// <param name="dynamicTarget">The dynamic target.</param> private async void OnUninstallWing(Target dynamicTarget) { if (dynamicTarget == null) { return; } var uninstallConfirmation = MessageBox.Show(@"Are you sure you want to uninstall '" + dynamicTarget.DisplayName + "'?" + Environment.NewLine + "The Website(s) using this Wing will be deleted." , @"Uninstall Confirmation", MessageBoxButton.YesNo); if (uninstallConfirmation == MessageBoxResult.No) { return; } UninstallInProgress = true; StatusLog.Clear(); ProgressPopupVisibility = true; await Task.Delay(500); UnistallWingName = dynamicTarget.DisplayName; var cancellationToken = new CancellationTokenSource(); var uninstallResult = await DynamicTargetService.Uninstall(dynamicTarget, cancellationToken.Token, result => { if (result.Status == OpenSourceUnInstallFlags.StatusUpdate) { StatusLog.Add(result.Message); } if (result.Status == OpenSourceUnInstallFlags.Success) { StatusLog.Add(string.Format("Uninstallation of wing \"{0}\" completed successfully.", dynamicTarget.Name)); if (WingItems.Contains(dynamicTarget)) { WingItems.Remove(dynamicTarget); } } }, exceptionResult => { var statusMessage = string.Format("Uninstallation of wing \"{0}\" was unsuccessful. Please try again. If for any reason the" + "the error still remains after trying to uninstall again. Please contact Monahrq technical assistance.", dynamicTarget.Name); StatusLog.Add(statusMessage); Logger.Write(exceptionResult.Exception); }); UninstallInProgress = false; }
/// <summary> /// Called when [uninstall flutter]. /// </summary> /// <param name="flutter">The flutter.</param> private async void OnUninstallFlutter(Flutter flutter) { var uiContext = SynchronizationContext.Current; var uninstallConfirmation = MessageBox.Show(@"Are you sure you want to uninstall '" + flutter.Name + "'?" , @"Uninstall Confirmation", MessageBoxButton.YesNo); if (uninstallConfirmation == MessageBoxResult.No) { return; } UninstallInProgress = true; StatusLog.Clear(); ProgressPopupVisibility = true; var cancellationToken = new CancellationTokenSource(); var uninstallResult = await DynamicTargetService.Uninstall(flutter, cancellationToken.Token, result => { if (result.Status == OpenSourceUnInstallFlags.StatusUpdate) { StatusLog.Add(result.Message); } if (result.Status == OpenSourceUnInstallFlags.Success) { StatusLog.Add(string.Format("Uninstallation of flutter \"{0}\" completed successfully.", flutter.Name)); } }, errorCallback => { var statusMessage = string.Format("Uninstallation of flutter \"{0}\" was unsuccessful. Please try again. If for any reason the" + "the error still remains after trying to uninstall again. Please contact Monahrq technical assistance.", flutter.Name); uiContext.Send(x => StatusLog.Add(statusMessage), null); Logger.Write(errorCallback.Exception); //if (FlutterItems.Contains(flutter)) // FlutterItems.Remove(flutter); }); if (FlutterItems.Contains(flutter)) { FlutterItems.Remove(flutter); } UninstallInProgress = false; }