public static IPackageRepository CreatePriorityPackageRepository(this IPackageSourceProvider provider, IPackageRepositoryFactory factory, IPackageRepository primaryRepository) { PackageSource[] sources = (from s in provider.GetEnabledPackageSources() where !s.Source.Equals(primaryRepository.Source, StringComparison.OrdinalIgnoreCase) select s).ToArray <PackageSource>(); if (sources.Length == 0) { return(primaryRepository); } return(new PriorityPackageRepository(primaryRepository, AggregateRepository.Create(factory, sources, true))); }
public static IPackageRepository CreatePriorityPackageRepository( this IPackageSourceProvider provider, IPackageRepositoryFactory factory, IPackageRepository primaryRepository) { var nonActivePackageSources = provider.GetEnabledPackageSources() .Where(s => !s.Source.Equals(primaryRepository.Source, StringComparison.OrdinalIgnoreCase)) .ToArray(); if (nonActivePackageSources.Length == 0) { return(primaryRepository); } var fallbackRepository = AggregateRepository.Create(factory, sources: nonActivePackageSources, ignoreFailingRepositories: true); return(new PriorityPackageRepository(primaryRepository, fallbackRepository)); }