private UninstallResult UninstallPackage( CatalogPackage package, UninstallOptions options) { string activity = string.Format( Utilities.ResourceManager.GetString("ProgressRecordActivityUninstalling"), package.Name); var operation = PackageManager.Value.UninstallPackageAsync(package, options); WriteProgressAdapter adapter = new (this); operation.Progress = (context, progress) => { adapter.WriteProgress(new ProgressRecord(1, activity, progress.State.ToString()) { RecordType = ProgressRecordType.Processing, }); }; operation.Completed = (context, status) => { adapter.WriteProgress(new ProgressRecord(1, activity, status.ToString()) { RecordType = ProgressRecordType.Completed, }); adapter.Completed = true; }; Console.CancelKeyPress += (sender, e) => { operation.Cancel(); }; adapter.Wait(); return(operation.GetResults()); }
private InstallResult UpgradePackage( CatalogPackage package, InstallOptions options) { var operation = PackageManager.Value.UpgradePackageAsync(package, options); return(this.RegisterCallbacksAndWait(operation, string.Format( Utilities.ResourceManager.GetString("ProgressRecordActivityUpdating"), package.Name))); }
static NuGetFramework[] TryGetSupportedFrameworks(CatalogPackage package) { try { return(package.Metadata().GetSupportedFrameworksWithRef().ToArray()); } catch (Exception ex) { Console.WriteLine("Error processing " + package.Identity + ": " + ex.Message); if (!KnownBadPackages.Contains(package.Identity)) { throw; } return(new NuGetFramework[0]); } }
/// <summary> /// Converts a <see cref="CatalogPackage" /> to a string previewing the specified version. /// </summary> /// <param name="package">A <see cref="CatalogPackage" /> instance.</param> /// <param name="version">A <see cref="PackageVersionId" /> instance. If null, the latest available version is used.</param> /// <returns>A <see cref="string" /> instance.</returns> public static string ToString( this CatalogPackage package, PackageVersionId version) { if ((version != null) || (package.AvailableVersions.Count > 0)) { string versionString = (version is null) ? package.AvailableVersions[0].Version : version.Version; return($"{package.Name} [{package.Id}] Version {versionString}"); } else { // There were no available versions! return($"{package.Name} [{package.Id}]"); } }