Browse Source

Some fixes and code clean up in PackageRepositories service.

pull/32/head
Andreas Weizel 13 years ago
parent
commit
007c4f85c1
  1. 11
      src/AddIns/Misc/AddInManager2/Project/Src/Model/Interfaces/IPackageRepositories.cs
  2. 68
      src/AddIns/Misc/AddInManager2/Project/Src/Model/PackageRepositories.cs

11
src/AddIns/Misc/AddInManager2/Project/Src/Model/Interfaces/IPackageRepositories.cs

@ -14,17 +14,6 @@ namespace ICSharpCode.AddInManager2.Model @@ -14,17 +14,6 @@ namespace ICSharpCode.AddInManager2.Model
get;
}
// IPackageRepository Active
// {
// get;
// }
//
// PackageSource ActiveSource
// {
// get;
// set;
// }
IEnumerable<PackageSource> RegisteredPackageSources
{
get;

68
src/AddIns/Misc/AddInManager2/Project/Src/Model/PackageRepositories.cs

@ -18,8 +18,6 @@ namespace ICSharpCode.AddInManager2.Model @@ -18,8 +18,6 @@ namespace ICSharpCode.AddInManager2.Model
public class PackageRepositories : IPackageRepositories
{
private IPackageRepository _currentRepository;
private IPackageRepository _activeRepository;
private PackageSource _activeSource;
private List<PackageSource> _registeredPackageSources;
private IAddInManagerEvents _events;
@ -34,7 +32,6 @@ namespace ICSharpCode.AddInManager2.Model @@ -34,7 +32,6 @@ namespace ICSharpCode.AddInManager2.Model
LoadPackageSources();
UpdateCurrentRepository();
UpdateActiveRepository();
}
public IPackageRepository Registered
@ -45,27 +42,6 @@ namespace ICSharpCode.AddInManager2.Model @@ -45,27 +42,6 @@ namespace ICSharpCode.AddInManager2.Model
}
}
public IPackageRepository Active
{
get
{
return _activeRepository;
}
}
public PackageSource ActiveSource
{
get
{
return _activeSource;
}
set
{
_activeSource = value;
UpdateActiveRepository();
}
}
public IEnumerable<PackageSource> RegisteredPackageSources
{
get
@ -75,7 +51,10 @@ namespace ICSharpCode.AddInManager2.Model @@ -75,7 +51,10 @@ namespace ICSharpCode.AddInManager2.Model
set
{
_registeredPackageSources.Clear();
_registeredPackageSources.AddRange(value);
if (value != null)
{
_registeredPackageSources.AddRange(value);
}
SavePackageSources();
// Send around the update
@ -110,9 +89,19 @@ namespace ICSharpCode.AddInManager2.Model @@ -110,9 +89,19 @@ namespace ICSharpCode.AddInManager2.Model
string[] splittedEntry = repositoryEntry.Split(new char[] { '=' }, 2);
if ((splittedEntry != null) && (splittedEntry.Length == 2))
{
// Create PackageSource from this entry
PackageSource savedPackageSource = new PackageSource(splittedEntry[1], splittedEntry[0]);
_registeredPackageSources.Add(savedPackageSource);
if (!String.IsNullOrEmpty(splittedEntry[0]) && !String.IsNullOrEmpty(splittedEntry[1]))
{
// Create PackageSource from this entry
try
{
PackageSource savedPackageSource = new PackageSource(splittedEntry[1], splittedEntry[0]);
_registeredPackageSources.Add(savedPackageSource);
}
catch (Exception)
{
SD.Log.WarnFormatted("URL '{0}' can't be used as valid package source.", splittedEntry[1]);
}
}
}
}
}
@ -144,29 +133,6 @@ namespace ICSharpCode.AddInManager2.Model @@ -144,29 +133,6 @@ namespace ICSharpCode.AddInManager2.Model
{
_currentRepository = new AggregateRepository(repositories);
}
else
{
// We have no repositories in configuration -> then we can't have an active source
ActiveSource = null;
}
}
private void UpdateActiveRepository()
{
if ((_activeSource == null) && (_registeredPackageSources != null) && _registeredPackageSources.Any())
{
_activeSource = _registeredPackageSources[0];
}
if (_activeSource != null)
{
_activeRepository = PackageRepositoryFactory.Default.CreateRepository(_activeSource.Source);
}
else
{
// If no active repository is set, get packages from all repositories
_activeRepository = _currentRepository;
}
}
}
}

Loading…
Cancel
Save