Exemplo n.º 1
0
 private void UpdateCache(INupkgProvider nupkgProvider, DeletePackageCompletedEventArgs eventArgs)
 {
     lock (CachedNuspec)
     {
         var versionDic = CachedNuspec.GetOrAdd(eventArgs.Id
                                                , id => new ConcurrentDictionary <string, Nuspec>());
         versionDic.TryRemove(eventArgs.Version, out var removed);
     }
 }
Exemplo n.º 2
0
 private void UpdateCache(INupkgProvider nupkgProvider, AddPackageCompletedEventArgs eventArgs)
 {
     lock (CachedNuspec)
     {
         var nuspec = Zip.ReadNuspec(eventArgs.FileName);
         if (nuspec == null)
         {
             return;
         }
         nuspec.FilePath = eventArgs.FileName;
         var versionDic = CachedNuspec.GetOrAdd(eventArgs.Id
                                                , id => new ConcurrentDictionary <string, Nuspec>());
         versionDic.AddOrUpdate(eventArgs.Version,
                                nuspec, (version, old) => nuspec);
     }
 }
Exemplo n.º 3
0
 public IEnumerable <Nuspec> GetAll()
 => CachedNuspec
 .SelectMany(id =>
             id.Value.Select(v => v.Value));