aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Channels
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2014-06-02 22:01:30 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2014-06-02 22:01:30 -0400
commitc91ea99016ce9594a9918259ed1f5e0b7bc0ce6c (patch)
tree1775d2b1a11e6f9151e5e095bb6470c01ee14917 /MediaBrowser.Controller/Channels
parent858c37b8607ff0698a94b9e7bfff6190d3bca56d (diff)
more work on channel downloading
Diffstat (limited to 'MediaBrowser.Controller/Channels')
-rw-r--r--MediaBrowser.Controller/Channels/ChannelVideoItem.cs12
-rw-r--r--MediaBrowser.Controller/Channels/IChannelManager.cs9
2 files changed, 20 insertions, 1 deletions
diff --git a/MediaBrowser.Controller/Channels/ChannelVideoItem.cs b/MediaBrowser.Controller/Channels/ChannelVideoItem.cs
index 2f207c4201..7a261bc58c 100644
--- a/MediaBrowser.Controller/Channels/ChannelVideoItem.cs
+++ b/MediaBrowser.Controller/Channels/ChannelVideoItem.cs
@@ -1,6 +1,7 @@
using MediaBrowser.Controller.Entities;
using MediaBrowser.Model.Channels;
using MediaBrowser.Model.Configuration;
+using MediaBrowser.Model.Dto;
using MediaBrowser.Model.Entities;
using System.Collections.Generic;
using System.Globalization;
@@ -10,6 +11,8 @@ namespace MediaBrowser.Controller.Channels
{
public class ChannelVideoItem : Video, IChannelMediaItem
{
+ public static IChannelManager ChannelManager { get; set; }
+
public string ExternalId { get; set; }
public string ChannelId { get; set; }
@@ -77,5 +80,14 @@ namespace MediaBrowser.Controller.Channels
return base.LocationType;
}
}
+
+ public override IEnumerable<MediaSourceInfo> GetMediaSources(bool enablePathSubstitution)
+ {
+ var list = base.GetMediaSources(enablePathSubstitution).ToList();
+
+ list.InsertRange(0, ChannelManager.GetCachedChannelItemMediaSources(Id.ToString("N")));
+
+ return list;
+ }
}
}
diff --git a/MediaBrowser.Controller/Channels/IChannelManager.cs b/MediaBrowser.Controller/Channels/IChannelManager.cs
index 4be38870b8..180ac4a392 100644
--- a/MediaBrowser.Controller/Channels/IChannelManager.cs
+++ b/MediaBrowser.Controller/Channels/IChannelManager.cs
@@ -67,11 +67,18 @@ namespace MediaBrowser.Controller.Channels
Task<QueryResult<BaseItemDto>> GetChannelItems(ChannelItemQuery query, CancellationToken cancellationToken);
/// <summary>
+ /// Gets the cached channel item media sources.
+ /// </summary>
+ /// <param name="id">The identifier.</param>
+ /// <returns>IEnumerable{MediaSourceInfo}.</returns>
+ IEnumerable<MediaSourceInfo> GetCachedChannelItemMediaSources(string id);
+
+ /// <summary>
/// Gets the channel item media sources.
/// </summary>
/// <param name="id">The identifier.</param>
/// <param name="cancellationToken">The cancellation token.</param>
- /// <returns>Task{IEnumerable{ChannelMediaInfo}}.</returns>
+ /// <returns>Task{IEnumerable{MediaSourceInfo}}.</returns>
Task<IEnumerable<MediaSourceInfo>> GetChannelItemMediaSources(string id, CancellationToken cancellationToken);
}
}