diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-09-30 00:47:30 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-09-30 00:47:30 -0400 |
| commit | 4aa959c1e266442804b6961aeb2d09f4b812f744 (patch) | |
| tree | 3f43d42aacadb463dd945e663657a51dc5808b19 /MediaBrowser.Server.Implementations/Channels/ChannelPostScanTask.cs | |
| parent | 1fcfff41c7d33266a059b9f4161f9aea34be8de4 (diff) | |
display trailers within suggestions
Diffstat (limited to 'MediaBrowser.Server.Implementations/Channels/ChannelPostScanTask.cs')
| -rw-r--r-- | MediaBrowser.Server.Implementations/Channels/ChannelPostScanTask.cs | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/MediaBrowser.Server.Implementations/Channels/ChannelPostScanTask.cs b/MediaBrowser.Server.Implementations/Channels/ChannelPostScanTask.cs index 1dff669ae..f677661f7 100644 --- a/MediaBrowser.Server.Implementations/Channels/ChannelPostScanTask.cs +++ b/MediaBrowser.Server.Implementations/Channels/ChannelPostScanTask.cs @@ -99,20 +99,22 @@ namespace MediaBrowser.Server.Implementations.Channels } progress.Report(100); - } private async Task GetAllItems(string user, string channelId, string folderId, int currentRefreshLevel, int maxRefreshLevel, IProgress<double> progress, CancellationToken cancellationToken) { var folderItems = new List<string>(); + var innerProgress = new ActionableProgress<double>(); + innerProgress.RegisterAction(p => progress.Report(p / 2)); + var result = await _channelManager.GetChannelItemsInternal(new ChannelItemQuery { ChannelId = channelId, UserId = user, FolderId = folderId - }, cancellationToken); + }, innerProgress, cancellationToken); folderItems.AddRange(result.Items.Where(i => i.IsFolder).Select(i => i.Id.ToString("N"))); @@ -128,7 +130,7 @@ namespace MediaBrowser.Server.Implementations.Channels StartIndex = totalRetrieved, FolderId = folderId - }, cancellationToken); + }, new Progress<double>(), cancellationToken); folderItems.AddRange(result.Items.Where(i => i.IsFolder).Select(i => i.Id.ToString("N"))); @@ -142,12 +144,12 @@ namespace MediaBrowser.Server.Implementations.Channels { var numComplete = 0; var numItems = folderItems.Count; - + foreach (var folder in folderItems) { try { - var innerProgress = new ActionableProgress<double>(); + innerProgress = new ActionableProgress<double>(); var startingNumberComplete = numComplete; innerProgress.RegisterAction(p => @@ -157,7 +159,7 @@ namespace MediaBrowser.Server.Implementations.Channels innerPercent /= numItems; progress.Report((innerPercent * 50) + 50); }); - + await GetAllItems(user, channelId, folder, currentRefreshLevel + 1, maxRefreshLevel, innerProgress, cancellationToken).ConfigureAwait(false); } catch (Exception ex) @@ -168,7 +170,7 @@ namespace MediaBrowser.Server.Implementations.Channels numComplete++; double percent = numComplete; percent /= numItems; - progress.Report(percent * 100); + progress.Report((percent * 50) + 50); } } |
