diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2015-01-12 00:07:19 -0500 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2015-01-12 00:07:19 -0500 |
| commit | f45e16660416a44b75716e9f33621fb711c98b5b (patch) | |
| tree | 7975c90600d4fbb2ba1b71938141bcf58676073f /MediaBrowser.Server.Implementations/Channels/ChannelDownloadScheduledTask.cs | |
| parent | 231e89e4b91c95efbff4a75396e6a0426d409271 (diff) | |
update nlog
Diffstat (limited to 'MediaBrowser.Server.Implementations/Channels/ChannelDownloadScheduledTask.cs')
| -rw-r--r-- | MediaBrowser.Server.Implementations/Channels/ChannelDownloadScheduledTask.cs | 40 |
1 files changed, 28 insertions, 12 deletions
diff --git a/MediaBrowser.Server.Implementations/Channels/ChannelDownloadScheduledTask.cs b/MediaBrowser.Server.Implementations/Channels/ChannelDownloadScheduledTask.cs index ce939aeb4..7179395b4 100644 --- a/MediaBrowser.Server.Implementations/Channels/ChannelDownloadScheduledTask.cs +++ b/MediaBrowser.Server.Implementations/Channels/ChannelDownloadScheduledTask.cs @@ -7,6 +7,7 @@ using MediaBrowser.Controller.Channels; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Channels; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Dto; @@ -208,16 +209,6 @@ namespace MediaBrowser.Server.Implementations.Channels CancellationToken cancellationToken, string path) { - var limit = GetDownloadLimit(channelOptions); - - if (limit.HasValue) - { - if (IsSizeLimitReached(path, limit.Value)) - { - return; - } - } - var itemId = item.Id.ToString("N"); var sources = await _manager.GetChannelItemMediaSources(itemId, false, cancellationToken) .ConfigureAwait(false); @@ -230,6 +221,16 @@ namespace MediaBrowser.Server.Implementations.Channels return; } + var limit = GetDownloadLimit(channelOptions); + + if (limit.HasValue) + { + if (IsSizeLimitReached(path, limit.Value)) + { + return; + } + } + var channelItem = (IChannelMediaItem)item; var destination = Path.Combine(path, channelItem.ChannelId, itemId); @@ -254,10 +255,25 @@ namespace MediaBrowser.Server.Implementations.Channels if (item != null) { + var forceSave = false; + // Get the version from the database - item = _libraryManager.GetItemById(item.Id) ?? item; + var dbItem = _libraryManager.GetItemById(item.Id); + + if (dbItem == null) + { + forceSave = true; + } + else + { + item = dbItem; + } + + await item.RefreshMetadata(new MetadataRefreshOptions + { + ForceSave = forceSave - await item.RefreshMetadata(cancellationToken).ConfigureAwait(false); + }, cancellationToken).ConfigureAwait(false); } } |
