private bool SetupInternalPackage(Upset package, out InstalledPackage internalPackage) { internalPackage = null; foreach (InstalledPackage t in InstalledPackage) { if (t.Name == package.PackageName) { internalPackage = t; break; } } // No package has been found if (internalPackage == null) { return(false); } // 0 is better than null :) if (internalPackage.Install == null) { internalPackage.Install = new InstallSpec[0]; } return(true); }
public void RemovePackage(InstalledPackage package) { if (!(InstalledPackage.Any(ip => ip == package))) { return; } InstalledPackage[] temp = InstalledPackage.Where(ip => ip != package).ToArray(); InstalledPackage = temp; }
internal void AddPackage(Upset package) { if (InstalledPackage == null) { InstalledPackage = new InstalledPackage[0]; } InstalledPackage newPackage = new InstalledPackage { Name = package.PackageName, Version = package.PackageVersion }; if (InstalledPackage.Any(ip => ip.Name == newPackage.Name)) { return; } InstalledPackage[] finalArray = new InstalledPackage[InstalledPackage.Length + 1]; InstalledPackage.CopyTo(finalArray, 0); finalArray[InstalledPackage.Length] = newPackage; InstalledPackage = finalArray; }
public InstalledPackage GetInstalledPackage(string packageName) { InstalledPackage spec = InstalledPackage.First(ip => ip.Name == packageName); return(spec); }