diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-02-15 11:36:09 -0500 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-02-15 11:36:09 -0500 |
| commit | 8b71ab2e7d81f315f729aaee5eb976d181b8909b (patch) | |
| tree | dd21a96c08d1f9353ce61e0e77d34b8070c97a07 /MediaBrowser.Controller | |
| parent | 4e414ebc919df021bfe339a98a5385a0e618c391 (diff) | |
expose omdb to metadata config
Diffstat (limited to 'MediaBrowser.Controller')
7 files changed, 24 insertions, 12 deletions
diff --git a/MediaBrowser.Controller/Entities/Audio/MusicArtist.cs b/MediaBrowser.Controller/Entities/Audio/MusicArtist.cs index 2b5570a80..e68790e61 100644 --- a/MediaBrowser.Controller/Entities/Audio/MusicArtist.cs +++ b/MediaBrowser.Controller/Entities/Audio/MusicArtist.cs @@ -178,7 +178,7 @@ namespace MediaBrowser.Controller.Entities.Audio // Refresh all non-songs foreach (var item in others) { - if (tasks.Count > 3) + if (tasks.Count > 4) { await Task.WhenAll(tasks).ConfigureAwait(false); tasks.Clear(); @@ -202,7 +202,9 @@ namespace MediaBrowser.Controller.Entities.Audio } }); - tasks.Add(RefreshItem(item, refreshOptions, innerProgress, cancellationToken)); + // Avoid implicitly captured closure + var taskChild = item; + tasks.Add(Task.Run(async () => await RefreshItem(taskChild, refreshOptions, innerProgress, cancellationToken).ConfigureAwait(false), cancellationToken)); } await Task.WhenAll(tasks).ConfigureAwait(false); diff --git a/MediaBrowser.Controller/Entities/BaseItem.cs b/MediaBrowser.Controller/Entities/BaseItem.cs index 415b49f80..41c4f0bae 100644 --- a/MediaBrowser.Controller/Entities/BaseItem.cs +++ b/MediaBrowser.Controller/Entities/BaseItem.cs @@ -1236,7 +1236,7 @@ namespace MediaBrowser.Controller.Entities public virtual Task UpdateToRepository(ItemUpdateType updateReason, CancellationToken cancellationToken) { - return LibraryManager.UpdateItem(this, ItemUpdateType.ImageUpdate, cancellationToken); + return LibraryManager.UpdateItem(this, updateReason, cancellationToken); } /// <summary> diff --git a/MediaBrowser.Controller/Entities/Folder.cs b/MediaBrowser.Controller/Entities/Folder.cs index b718864d2..c928a130e 100644 --- a/MediaBrowser.Controller/Entities/Folder.cs +++ b/MediaBrowser.Controller/Entities/Folder.cs @@ -521,7 +521,7 @@ namespace MediaBrowser.Controller.Entities foreach (var child in children) { - if (tasks.Count >= 8) + if (tasks.Count >= 4) { await Task.WhenAll(tasks).ConfigureAwait(false); tasks.Clear(); @@ -552,7 +552,10 @@ namespace MediaBrowser.Controller.Entities } else { - tasks.Add(RefreshChildMetadata(child, refreshOptions, false, innerProgress, cancellationToken)); + // Avoid implicitly captured closure + var taskChild = child; + + tasks.Add(Task.Run(async () => await RefreshChildMetadata(taskChild, refreshOptions, false, innerProgress, cancellationToken).ConfigureAwait(false), cancellationToken)); } } diff --git a/MediaBrowser.Controller/Entities/Movies/BoxSet.cs b/MediaBrowser.Controller/Entities/Movies/BoxSet.cs index a00bda772..3fd2af091 100644 --- a/MediaBrowser.Controller/Entities/Movies/BoxSet.cs +++ b/MediaBrowser.Controller/Entities/Movies/BoxSet.cs @@ -99,7 +99,7 @@ namespace MediaBrowser.Controller.Entities.Movies // Refresh songs foreach (var item in items) { - if (tasks.Count >= 2) + if (tasks.Count >= 4) { await Task.WhenAll(tasks).ConfigureAwait(false); tasks.Clear(); @@ -123,7 +123,9 @@ namespace MediaBrowser.Controller.Entities.Movies } }); - tasks.Add(RefreshItem(item, refreshOptions, innerProgress, cancellationToken)); + // Avoid implicitly captured closure + var taskChild = item; + tasks.Add(Task.Run(async () => await RefreshItem(taskChild, refreshOptions, innerProgress, cancellationToken).ConfigureAwait(false), cancellationToken)); } await Task.WhenAll(tasks).ConfigureAwait(false); diff --git a/MediaBrowser.Controller/Entities/Trailer.cs b/MediaBrowser.Controller/Entities/Trailer.cs index d655c275d..50ccd060b 100644 --- a/MediaBrowser.Controller/Entities/Trailer.cs +++ b/MediaBrowser.Controller/Entities/Trailer.cs @@ -102,7 +102,11 @@ namespace MediaBrowser.Controller.Entities public TrailerInfo GetLookupInfo() { - return GetItemLookupInfo<TrailerInfo>(); + var info = GetItemLookupInfo<TrailerInfo>(); + + info.IsLocalTrailer = IsLocalTrailer; + + return info; } } } diff --git a/MediaBrowser.Controller/Providers/DirectoryService.cs b/MediaBrowser.Controller/Providers/DirectoryService.cs index e17ae76ff..751de9fb4 100644 --- a/MediaBrowser.Controller/Providers/DirectoryService.cs +++ b/MediaBrowser.Controller/Providers/DirectoryService.cs @@ -1,4 +1,5 @@ -using MediaBrowser.Model.Logging; +using System.Collections.Concurrent; +using MediaBrowser.Model.Logging; using System; using System.Collections.Generic; using System.IO; @@ -19,7 +20,7 @@ namespace MediaBrowser.Controller.Providers { private readonly ILogger _logger; - private readonly Dictionary<string, List<FileSystemInfo>> _cache = new Dictionary<string, List<FileSystemInfo>>(StringComparer.OrdinalIgnoreCase); + private readonly ConcurrentDictionary<string, List<FileSystemInfo>> _cache = new ConcurrentDictionary<string, List<FileSystemInfo>>(StringComparer.OrdinalIgnoreCase); public DirectoryService(ILogger logger) { @@ -43,7 +44,7 @@ namespace MediaBrowser.Controller.Providers entries = new List<FileSystemInfo>(); } - _cache.Add(path, entries); + _cache.TryAdd(path, entries); } return entries; diff --git a/MediaBrowser.Controller/Providers/ItemLookupInfo.cs b/MediaBrowser.Controller/Providers/ItemLookupInfo.cs index b43654005..665da28f4 100644 --- a/MediaBrowser.Controller/Providers/ItemLookupInfo.cs +++ b/MediaBrowser.Controller/Providers/ItemLookupInfo.cs @@ -142,7 +142,7 @@ namespace MediaBrowser.Controller.Providers public class TrailerInfo : ItemLookupInfo { - + public bool IsLocalTrailer { get; set; } } public class BookInfo : ItemLookupInfo |
