Exemple #1
0
        public static PackageStatus GetStatus(Package package, PackageNuGetInfo packageNuGetInfo)
        {
            var status = new PackageStatus(package, packageNuGetInfo);

            foreach (var version in packageNuGetInfo.Versions)
            {
                if (status.LatestVersion == null)
                {
                    status.LatestVersion = version;
                }

                if (status.StableVersion == null && !version.IsPrerelease)
                {
                    status.StableVersion = version;
                }

                if (status.WantedVersion == null && version.Major == package.CurrentVersion.Major && (package.CurrentVersion.IsPrerelease || !version.IsPrerelease))
                {
                    status.WantedVersion = version;
                }

                if (status.LatestVersion != null && status.StableVersion != null && status.WantedVersion != null)
                {
                    break;
                }
            }

            if (status.WantedVersion == null)
            {
                status.WantedVersion = package.CurrentVersion;
            }

            return(status);
        }
Exemple #2
0
 private PackageStatus(Package package, PackageNuGetInfo packageNuGetInfo)
 {
     Package          = package;
     PackageNuGetInfo = packageNuGetInfo;
 }