private Task <IEnumerable <IPackageSearchMetadata> > InternalSearch(NuGetQueryFilter param, PackageSearchResource command) { var filter = this.ConvertFilter(param); var query = this.GetQuery(param.Filter); filter.SupportedFrameworks = this.ConvertFrameworkNames(param.SupportedFrameworks); return(command.SearchAsync(query, filter, param.Skip, param.Take, this.loggerAdapter, CancellationToken.None)); }
public IEnumerable <Task <IEnumerable <NuGetPackage> > > Search(NuGetQueryFilter nuGetQueryFilter) { return(this.Exec <NuGetPackage>(async(accessor) => { var search = await this.InternalSearch(nuGetQueryFilter, accessor.GetResource <PackageSearchResource>()); var packages = search.Select(FromMetadata); List <NuGetPackage> downloadedPackages = new List <NuGetPackage>(); foreach (var package in packages) { downloadedPackages.Add(await DownloadFiles(package, nuGetQueryFilter.SupportedFrameworks, accessor.GetResource <FindPackageByIdResource>())); } return downloadedPackages; })); }
private SearchFilter ConvertFilter(NuGetQueryFilter queryFilter) { SearchFilter searchFilter = null; if (queryFilter.Latest) { searchFilter = new SearchFilter(queryFilter.IncludePrerelease, queryFilter.IncludePrerelease ? SearchFilterType.IsAbsoluteLatestVersion : SearchFilterType.IsLatestVersion); } else { searchFilter = new SearchFilter(queryFilter.IncludePrerelease); } if (queryFilter.OrderById == IdOrderRule.Asc) { searchFilter.OrderBy = SearchOrderBy.Id; } searchFilter.IncludeDelisted = queryFilter.IncludeDelisted; return(searchFilter); }
public NuGetVisitor(NuGetQueryFilter nuGetQueryFilter) { this.nuGetQueryFilter = nuGetQueryFilter; }
public NuGetOrderByVisitor(NuGetQueryFilter nuGetQueryFilter) : base(nuGetQueryFilter) { }
private static IAsyncQueryable <NuGetPackage> Materialize(NuGetRepository nuGetRepository, NuGetQueryFilter filter) { var metaRequests = nuGetRepository.Search(filter); var enumer = new AsyncEnumerator <NuGetPackage>(metaRequests); var enumerable = AsyncEnumerable.FromResult(enumer); return(enumerable); }
public NuGetSkipTakeVisitor(NuGetQueryFilter nuGetQueryFilter) : base(nuGetQueryFilter) { }
public NuGetWhereVisitor(NuGetQueryFilter nuGetQueryFilter) : base(nuGetQueryFilter) { }
private static AsyncEnumerator <NuGetPackage> DefferedEnumerator(NuGetRepository nuGetRepository, NuGetQueryFilter filter) { var metaRequests = nuGetRepository.Search(filter); return(new AsyncEnumerator <NuGetPackage>(metaRequests)); }