diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-06-16 21:56:23 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-06-16 21:56:23 -0400 |
| commit | 21fd761b05584481d9f6293ca48e373f356c80b6 (patch) | |
| tree | 47f8c0a461e6a99bd75f588792cb0f865ad56ee4 /MediaBrowser.Server.Implementations/Channels/ChannelManager.cs | |
| parent | f91889e3c465edc3ca2c8079429e17646ef1c440 (diff) | |
fixes #838 - Support rtmp protocol with channels
Diffstat (limited to 'MediaBrowser.Server.Implementations/Channels/ChannelManager.cs')
| -rw-r--r-- | MediaBrowser.Server.Implementations/Channels/ChannelManager.cs | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/MediaBrowser.Server.Implementations/Channels/ChannelManager.cs b/MediaBrowser.Server.Implementations/Channels/ChannelManager.cs index ad775b576..59e4e695d 100644 --- a/MediaBrowser.Server.Implementations/Channels/ChannelManager.cs +++ b/MediaBrowser.Server.Implementations/Channels/ChannelManager.cs @@ -280,7 +280,7 @@ namespace MediaBrowser.Server.Implementations.Channels MediaStreams = GetMediaStreams(info).ToList(), Container = info.Container, - LocationType = info.IsRemote ? LocationType.Remote : LocationType.FileSystem, + Protocol = info.Protocol, Path = info.Path, RequiredHttpHeaders = info.RequiredHttpHeaders, RunTimeTicks = item.RunTimeTicks, @@ -555,17 +555,18 @@ namespace MediaBrowser.Server.Implementations.Channels return GetChannelItemEntity(i.Item2, channelProvider, channel, token); }); - IEnumerable<BaseItem> internalItems = await Task.WhenAll(itemTasks).ConfigureAwait(false); + var internalItems = await Task.WhenAll(itemTasks).ConfigureAwait(false); - internalItems = ApplyFilters(internalItems, query.Filters, user); + internalItems = ApplyFilters(internalItems, query.Filters, user).ToArray(); + await RefreshIfNeeded(internalItems, cancellationToken).ConfigureAwait(false); if (query.StartIndex.HasValue) { - internalItems = internalItems.Skip(query.StartIndex.Value); + internalItems = internalItems.Skip(query.StartIndex.Value).ToArray(); } if (query.Limit.HasValue) { - internalItems = internalItems.Take(query.Limit.Value); + internalItems = internalItems.Take(query.Limit.Value).ToArray(); } var returnItemArray = internalItems.Select(i => _dtoService.GetBaseItemDto(i, query.Fields, user)) @@ -658,6 +659,7 @@ namespace MediaBrowser.Server.Implementations.Channels }); var internalItems = await Task.WhenAll(itemTasks).ConfigureAwait(false); + await RefreshIfNeeded(internalItems, cancellationToken).ConfigureAwait(false); var returnItemArray = internalItems.Select(i => _dtoService.GetBaseItemDto(i, query.Fields, user)) .ToArray(); |
