@ -26,30 +26,36 @@ namespace ICSharpCode.PackageManagement
@@ -26,30 +26,36 @@ namespace ICSharpCode.PackageManagement
public class PackageRepositoryCache : IPackageRepositoryCache , IPackageRepositoryFactoryEvents
{
ISharpDevelopPackageRepositoryFactory factory ;
RegisteredPackageSources registeredPackageSources ;
RegisteredPackageSources packageSources ;
PackageManagementOptions options ;
IList < RecentPackageInfo > recentPackages ;
IRecentPackageRepository recentPackageRepository ;
ConcurrentDictionary < string , IPackageRepository > repositories =
new ConcurrentDictionary < string , IPackageRepository > ( ) ;
public PackageRepositoryCache (
ISharpDevelopPackageRepositoryFactory factory ,
RegisteredPackageSources registeredPackageSources ,
IList < RecentPackageInfo > recentPackages )
PackageManagementOptions options ,
ISharpDevelopPackageRepositoryFactory factory )
{
this . options = options ;
this . factory = factory ;
this . registeredPackageSources = registeredPackageSources ;
this . recentPackages = recentPackages ;
this . recentPackages = options . RecentPackages ;
}
public PackageRepositoryCache ( PackageManagementOptions options )
: this (
options ,
new SharpDevelopPackageRepositoryFactory ( ) )
{
}
public PackageRepositoryCache (
RegisteredPackageSources registeredPackageSources ,
RegisteredPackageSources p ackageSources,
IList < RecentPackageInfo > recentPackages )
: this (
new SharpDevelopPackageRepositoryFactory ( ) ,
registeredPackageSources ,
recentPackages )
{
this . factory = new SharpDevelopPackageRepositoryFactory ( ) ;
this . recentPackages = recentPackages ;
this . packageSources = packageSources ;
}
public event EventHandler < PackageRepositoryFactoryEventArgs > RepositoryCreated ;
@ -102,10 +108,19 @@ namespace ICSharpCode.PackageManagement
@@ -102,10 +108,19 @@ namespace ICSharpCode.PackageManagement
IEnumerable < IPackageRepository > CreateAllEnabledRepositories ( )
{
foreach ( PackageSource source in registered PackageSources. GetEnabledPackageSources ( ) ) {
foreach ( PackageSource source in PackageSources . GetEnabledPackageSources ( ) ) {
yield return CreateRepository ( source . Source ) ;
}
}
RegisteredPackageSources PackageSources {
get {
if ( packageSources ! = null ) {
return packageSources ;
}
return options . PackageSources ;
}
}
public IPackageRepository CreateAggregateRepository ( IEnumerable < IPackageRepository > repositories )
{