public RevalidationThrottler(
     IRevalidationJobStateService jobState,
     IPackageRevalidationStateService packageState,
     IGalleryService gallery,
     RevalidationConfiguration config,
     ILogger <RevalidationThrottler> logger)
 {
     _jobState     = jobState ?? throw new ArgumentNullException(nameof(jobState));
     _packageState = packageState ?? throw new ArgumentNullException(nameof(packageState));
     _gallery      = gallery ?? throw new ArgumentNullException(nameof(gallery));
     _config       = config ?? throw new ArgumentNullException(nameof(config));
     _logger       = logger ?? throw new ArgumentNullException(nameof(logger));
 }
Exemple #2
0
 public InitializationManager(
     IRevalidationJobStateService jobState,
     IPackageRevalidationStateService packageState,
     IPackageFinder packageFinder,
     IServiceScopeFactory scopeFactory,
     InitializationConfiguration config,
     ILogger <InitializationManager> logger)
 {
     _jobState      = jobState ?? throw new ArgumentNullException(nameof(jobState));
     _packageState  = packageState ?? throw new ArgumentNullException(nameof(packageState));
     _packageFinder = packageFinder ?? throw new ArgumentNullException(nameof(packageFinder));
     _scopeFactory  = scopeFactory ?? throw new ArgumentNullException(nameof(scopeFactory));
     _config        = config ?? throw new ArgumentNullException(nameof(config));
     _logger        = logger ?? throw new ArgumentNullException(nameof(logger));
 }
 public RevalidationStarter(
     IRevalidationJobStateService jobState,
     IPackageRevalidationStateService packageState,
     ISingletonService singletonService,
     IRevalidationThrottler throttler,
     IHealthService healthService,
     IRevalidationQueue revalidationQueue,
     IPackageValidationEnqueuer validationEnqueuer,
     ITelemetryService telemetryService,
     ILogger <RevalidationStarter> logger)
 {
     _jobState           = jobState ?? throw new ArgumentNullException(nameof(jobState));
     _packageState       = packageState ?? throw new ArgumentNullException(nameof(packageState));
     _singletonService   = singletonService ?? throw new ArgumentNullException(nameof(singletonService));
     _throttler          = throttler ?? throw new ArgumentNullException(nameof(throttler));
     _healthService      = healthService ?? throw new ArgumentNullException(nameof(healthService));
     _revalidationQueue  = revalidationQueue ?? throw new ArgumentNullException(nameof(revalidationQueue));
     _validationEnqueuer = validationEnqueuer ?? throw new ArgumentNullException(nameof(validationEnqueuer));
     _telemetryService   = telemetryService ?? throw new ArgumentNullException(nameof(telemetryService));
     _logger             = logger ?? throw new ArgumentNullException(nameof(logger));
 }
Exemple #4
0
        private static async Task InitializeRevalidationsAsync(
            List <PackageRegistrationInformation> packageRegistrations,
            Dictionary <int, List <NuGetVersion> > versions,
            IPackageRevalidationStateService packageState,
            ILogger <InitializationManager> logger)
        {
            var revalidations = new List <PackageRevalidation>();

            foreach (var packageRegistration in packageRegistrations)
            {
                var packageId = packageRegistration.Id;

                if (!versions.ContainsKey(packageRegistration.Key) || versions[packageRegistration.Key].Count == 0)
                {
                    logger.LogWarning("Could not find any versions of package {PackageId} to revalidate", packageId);

                    continue;
                }

                // Insert each version of the package in descending order of the versions.
                var packageVersions = versions[packageRegistration.Key].OrderByDescending(v => v);

                foreach (var version in packageVersions)
                {
                    revalidations.Add(new PackageRevalidation
                    {
                        PackageId = packageId,
                        PackageNormalizedVersion = version.ToNormalizedString(),
                        ValidationTrackingId     = Guid.NewGuid(),
                        Completed = false,
                        Enqueued  = null,
                    });
                }
            }

            await packageState.AddPackageRevalidationsAsync(revalidations);
        }