Exemple #1
0
        public async Task Run()
        {
            var sw = Stopwatch.StartNew();

            try
            {
                Log.Information("Requery Statistics Package Support Task Started");
                var stats        = _statisticsRepository.GetAllPackageStatistics();
                var packageNames = stats.Select(s => s.Name).ToArray();

                var result = await PackageCompatabilityInvestigator.Create(new NoNugetResultCache())
                             .Process("Requery", packageNames);

                foreach (var stat in stats)
                {
                    var packageResult = result.Dependencies.FirstOrDefault(f => f.PackageName.EqualsOrdinalIgnoreCase(stat.Name));
                    UpdatePackage(packageResult, stat);
                }
            }
            catch (Exception ex)
            {
                Log.Error(ex, "Requery Statistics Package Support Task failed");
            }
            Log.Information("Requery Statistics Package Support Task Finished in {time}", sw.Elapsed);
        }
Exemple #2
0
 public IReadOnlyList <PackageStatisticResponse> Get()
 {
     return(_statisticsRepository.GetAllPackageStatistics()
            .OrderByDescending(p => p.Count)
            .ThenBy(p => p.Name)
            .Select(p => new PackageStatisticResponse()
     {
         Statistic = p,
         MoreInformation = MoreInformationRepository.Get(p.Name).ValueOrNull()
     })
            .ToArray());
 }