From 4d1d2bbaa15e89155bf5bf289ee190db6f155bca Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Tue, 18 Mar 2014 13:05:57 -0400 Subject: Add more channel features --- .../Channels/ChannelCategoryItem.cs | 8 +++++ .../Channels/ChannelItemInfo.cs | 5 ++- MediaBrowser.Controller/Channels/IChannel.cs | 36 +++++++++++++++++----- .../MediaBrowser.Controller.csproj | 1 + 4 files changed, 42 insertions(+), 8 deletions(-) create mode 100644 MediaBrowser.Controller/Channels/ChannelCategoryItem.cs (limited to 'MediaBrowser.Controller') diff --git a/MediaBrowser.Controller/Channels/ChannelCategoryItem.cs b/MediaBrowser.Controller/Channels/ChannelCategoryItem.cs new file mode 100644 index 000000000..11e56ee07 --- /dev/null +++ b/MediaBrowser.Controller/Channels/ChannelCategoryItem.cs @@ -0,0 +1,8 @@ +using MediaBrowser.Controller.Entities; + +namespace MediaBrowser.Controller.Channels +{ + public class ChannelCategoryItem : Folder + { + } +} diff --git a/MediaBrowser.Controller/Channels/ChannelItemInfo.cs b/MediaBrowser.Controller/Channels/ChannelItemInfo.cs index f80ad8911..421d3e6f2 100644 --- a/MediaBrowser.Controller/Channels/ChannelItemInfo.cs +++ b/MediaBrowser.Controller/Channels/ChannelItemInfo.cs @@ -34,7 +34,10 @@ namespace MediaBrowser.Controller.Channels public ChannelMediaContentType ContentType { get; set; } public Dictionary ProviderIds { get; set; } - + + public DateTime? PremiereDate { get; set; } + public int? ProductionYear { get; set; } + public ChannelItemInfo() { Genres = new List(); diff --git a/MediaBrowser.Controller/Channels/IChannel.cs b/MediaBrowser.Controller/Channels/IChannel.cs index 956eb67e8..773147a14 100644 --- a/MediaBrowser.Controller/Channels/IChannel.cs +++ b/MediaBrowser.Controller/Channels/IChannel.cs @@ -1,4 +1,7 @@ using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; +using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; @@ -44,19 +47,24 @@ namespace MediaBrowser.Controller.Channels /// /// Gets the channel items. /// - /// The user. + /// The query. /// The cancellation token. /// Task{IEnumerable{ChannelItem}}. - Task> GetChannelItems(User user, CancellationToken cancellationToken); + Task GetChannelItems(InternalChannelItemQuery query, CancellationToken cancellationToken); /// - /// Gets the channel items. + /// Gets the channel image. /// - /// The category identifier. - /// The user. + /// The type. /// The cancellation token. - /// Task{IEnumerable{ChannelItem}}. - Task> GetChannelItems(string categoryId, User user, CancellationToken cancellationToken); + /// Task{DynamicImageInfo}. + Task GetChannelImage(ImageType type, CancellationToken cancellationToken); + + /// + /// Gets the supported channel images. + /// + /// IEnumerable{ImageType}. + IEnumerable GetSupportedChannelImages(); } public class ChannelCapabilities @@ -68,4 +76,18 @@ namespace MediaBrowser.Controller.Channels { public string SearchTerm { get; set; } } + + public class InternalChannelItemQuery + { + public string CategoryId { get; set; } + + public User User { get; set; } + } + + public class ChannelItemResult + { + public List Items { get; set; } + + public TimeSpan CacheLength { get; set; } + } } diff --git a/MediaBrowser.Controller/MediaBrowser.Controller.csproj b/MediaBrowser.Controller/MediaBrowser.Controller.csproj index 87fdc66f9..ac178ff53 100644 --- a/MediaBrowser.Controller/MediaBrowser.Controller.csproj +++ b/MediaBrowser.Controller/MediaBrowser.Controller.csproj @@ -68,6 +68,7 @@ Properties\SharedVersion.cs + -- cgit v1.2.3