private PSSearchMetadata GetSearchResult(JObject jObject, bool includePrerelease, CancellationToken token)
        {
            var id = jObject.Value<string>(Properties.PackageId);
            var version = NuGetVersion.Parse(jObject.Value<string>(Properties.Version));
            var topPackage = new PackageIdentity(id, version);
            var summary = jObject.Value<string>(Properties.Summary);

            if (string.IsNullOrWhiteSpace(summary))
            {
                // summary is empty. Use its description instead.
                summary = jObject.Value<string>(Properties.Description);
            }

            // get other versions
            var versions = GetLazyVersionList(jObject, includePrerelease, version);

            var searchResult = new PSSearchMetadata(topPackage, versions, summary);
            return searchResult;
        }
        private PSSearchMetadata GetSearchResult(JObject jObject, bool includePrerelease, CancellationToken token)
        {
            var id         = jObject.Value <string>(Properties.PackageId);
            var version    = NuGetVersion.Parse(jObject.Value <string>(Properties.Version));
            var topPackage = new PackageIdentity(id, version);
            var summary    = jObject.Value <string>(Properties.Summary);

            if (string.IsNullOrWhiteSpace(summary))
            {
                // summary is empty. Use its description instead.
                summary = jObject.Value <string>(Properties.Description);
            }

            // get other versions
            var versions = GetLazyVersionList(jObject, includePrerelease, version);

            var searchResult = new PSSearchMetadata(topPackage, versions, summary);

            return(searchResult);
        }
Exemple #3
0
        private PSSearchMetadata CreatePackageSearchResult(IPackage package,
                                                           SearchFilter filters,
                                                           CancellationToken cancellationToken)
        {
            var id      = package.Id;
            var version = V2Utilities.SafeToNuGetVer(package.Version);
            var summary = package.Summary;

            if (string.IsNullOrWhiteSpace(summary))
            {
                summary = package.Description;
            }

            var iconUrl  = package.IconUrl;
            var identity = new PackageIdentity(id, version);

            var versions = new Lazy <Task <IEnumerable <NuGetVersion> > >(() =>
                                                                          GetVersionInfoAsync(package, filters, cancellationToken));

            var searchMetaData = new PSSearchMetadata(identity, versions, summary);

            return(searchMetaData);
        }
        private PSSearchMetadata CreatePackageSearchResult(IPackage package,
                                                           SearchFilter filters,
                                                           CancellationToken cancellationToken)
        {
            var id = package.Id;
            var version = V2Utilities.SafeToNuGetVer(package.Version);
            var summary = package.Summary;

            if (string.IsNullOrWhiteSpace(summary))
            {
                summary = package.Description;
            }

            var iconUrl = package.IconUrl;
            var identity = new PackageIdentity(id, version);

            var versions = new Lazy<Task<IEnumerable<NuGetVersion>>>(() =>
                    GetVersionInfoAsync(package, filters, cancellationToken));

            var searchMetaData = new PSSearchMetadata(identity, versions, summary);

            return searchMetaData;
        }
        /// <summary>
        /// Get the view of PowerShellPackage. Used for Get-Package -Updates command. 
        /// </summary>
        /// <param name="data"></param>
        /// <param name="version"></param>
        /// <param name="versionType"></param>
        /// <returns></returns>
        internal static PowerShellUpdatePackage GetPowerShellPackageUpdateView(PSSearchMetadata data, NuGetVersion version, VersionType versionType, NuGetProject project)
        {
            PowerShellUpdatePackage package = new PowerShellUpdatePackage();
            package.Id = data.Identity.Id;
            package.Description = data.Summary;
            package.ProjectName = project.GetMetadata<string>(NuGetProjectMetadataKeys.Name);
            switch (versionType)
            {
                case VersionType.updates:
                    {
                        package.Versions = data.Versions.Where(p => p > version).OrderByDescending(v => v);
                        if (package.Versions != null && package.Versions.Any())
                        {
                            LegacyNuGet.SemanticVersion sVersion;
                            LegacyNuGet.SemanticVersion.TryParse(package.Versions.FirstOrDefault().ToNormalizedString(), out sVersion);
                            package.Version = sVersion;
                        }
                    }
                    break;
                case VersionType.latest:
                    {
                        NuGetVersion nVersion = data.Versions.Where(p => p > version).OrderByDescending(v => v).FirstOrDefault();
                        if (nVersion != null)
                        {
                            package.Versions = new List<NuGetVersion>() { nVersion };
                            LegacyNuGet.SemanticVersion sVersion;
                            LegacyNuGet.SemanticVersion.TryParse(nVersion.ToNormalizedString(), out sVersion);
                            package.Version = sVersion;
                        }
                    }
                    break;
            }

            return package;
        }