aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2014-09-30 00:47:30 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2014-09-30 00:47:30 -0400
commit4aa959c1e266442804b6961aeb2d09f4b812f744 (patch)
tree3f43d42aacadb463dd945e663657a51dc5808b19 /MediaBrowser.Controller
parent1fcfff41c7d33266a059b9f4161f9aea34be8de4 (diff)
display trailers within suggestions
Diffstat (limited to 'MediaBrowser.Controller')
-rw-r--r--MediaBrowser.Controller/Channels/Channel.cs2
-rw-r--r--MediaBrowser.Controller/Channels/ChannelFolderItem.cs5
-rw-r--r--MediaBrowser.Controller/Channels/IChannelManager.cs24
-rw-r--r--MediaBrowser.Controller/Channels/InternalChannelFeatures.cs18
-rw-r--r--MediaBrowser.Controller/Entities/UserViewBuilder.cs14
5 files changed, 50 insertions, 13 deletions
diff --git a/MediaBrowser.Controller/Channels/Channel.cs b/MediaBrowser.Controller/Channels/Channel.cs
index d52ad99bc7..9e5a332e10 100644
--- a/MediaBrowser.Controller/Channels/Channel.cs
+++ b/MediaBrowser.Controller/Channels/Channel.cs
@@ -36,7 +36,7 @@ namespace MediaBrowser.Controller.Channels
SortBy = query.SortBy,
SortOrder = query.SortOrder
- }, CancellationToken.None);
+ }, new Progress<double>(), CancellationToken.None);
}
catch
{
diff --git a/MediaBrowser.Controller/Channels/ChannelFolderItem.cs b/MediaBrowser.Controller/Channels/ChannelFolderItem.cs
index db54a0c4ab..eea410fb88 100644
--- a/MediaBrowser.Controller/Channels/ChannelFolderItem.cs
+++ b/MediaBrowser.Controller/Channels/ChannelFolderItem.cs
@@ -1,4 +1,5 @@
-using MediaBrowser.Controller.Entities;
+using System;
+using MediaBrowser.Controller.Entities;
using MediaBrowser.Model.Channels;
using MediaBrowser.Model.Configuration;
using MediaBrowser.Model.Querying;
@@ -58,7 +59,7 @@ namespace MediaBrowser.Controller.Channels
SortBy = query.SortBy,
SortOrder = query.SortOrder
- }, CancellationToken.None);
+ }, new Progress<double>(), CancellationToken.None);
}
catch
{
diff --git a/MediaBrowser.Controller/Channels/IChannelManager.cs b/MediaBrowser.Controller/Channels/IChannelManager.cs
index 07fb891324..f4e985c7ad 100644
--- a/MediaBrowser.Controller/Channels/IChannelManager.cs
+++ b/MediaBrowser.Controller/Channels/IChannelManager.cs
@@ -1,4 +1,5 @@
-using MediaBrowser.Controller.Entities;
+using System;
+using MediaBrowser.Controller.Entities;
using MediaBrowser.Model.Channels;
using MediaBrowser.Model.Dto;
using MediaBrowser.Model.Querying;
@@ -82,6 +83,14 @@ namespace MediaBrowser.Controller.Channels
/// <param name="cancellationToken">The cancellation token.</param>
/// <returns>Task{QueryResult{BaseItemDto}}.</returns>
Task<QueryResult<BaseItemDto>> GetLatestChannelItems(AllChannelMediaQuery query, CancellationToken cancellationToken);
+
+ /// <summary>
+ /// Gets the latest channel items internal.
+ /// </summary>
+ /// <param name="query">The query.</param>
+ /// <param name="cancellationToken">The cancellation token.</param>
+ /// <returns>Task&lt;QueryResult&lt;BaseItem&gt;&gt;.</returns>
+ Task<QueryResult<BaseItem>> GetLatestChannelItemsInternal(AllChannelMediaQuery query, CancellationToken cancellationToken);
/// <summary>
/// Gets the channel items.
@@ -95,9 +104,10 @@ namespace MediaBrowser.Controller.Channels
/// Gets the channel items internal.
/// </summary>
/// <param name="query">The query.</param>
+ /// <param name="progress">The progress.</param>
/// <param name="cancellationToken">The cancellation token.</param>
/// <returns>Task&lt;QueryResult&lt;BaseItem&gt;&gt;.</returns>
- Task<QueryResult<BaseItem>> GetChannelItemsInternal(ChannelItemQuery query, CancellationToken cancellationToken);
+ Task<QueryResult<BaseItem>> GetChannelItemsInternal(ChannelItemQuery query, IProgress<double> progress, CancellationToken cancellationToken);
/// <summary>
/// Gets the cached channel item media sources.
@@ -129,5 +139,15 @@ namespace MediaBrowser.Controller.Channels
/// <param name="cancellationToken">The cancellation token.</param>
/// <returns>BaseItemDto.</returns>
Task<BaseItemDto> GetChannelFolder(string userId, CancellationToken cancellationToken);
+
+ /// <summary>
+ /// Downloads the channel item.
+ /// </summary>
+ /// <param name="item">The item.</param>
+ /// <param name="destinationPath">The destination path.</param>
+ /// <param name="progress">The progress.</param>
+ /// <param name="cancellationToken">The cancellation token.</param>
+ /// <returns>Task.</returns>
+ Task DownloadChannelItem(IChannelMediaItem item, string destinationPath, IProgress<double> progress, CancellationToken cancellationToken);
}
}
diff --git a/MediaBrowser.Controller/Channels/InternalChannelFeatures.cs b/MediaBrowser.Controller/Channels/InternalChannelFeatures.cs
index bcc6791598..fc25304495 100644
--- a/MediaBrowser.Controller/Channels/InternalChannelFeatures.cs
+++ b/MediaBrowser.Controller/Channels/InternalChannelFeatures.cs
@@ -1,4 +1,5 @@
-using MediaBrowser.Model.Channels;
+using System;
+using MediaBrowser.Model.Channels;
using System.Collections.Generic;
namespace MediaBrowser.Controller.Channels
@@ -38,6 +39,12 @@ namespace MediaBrowser.Controller.Channels
/// <value>The automatic refresh levels.</value>
public int? AutoRefreshLevels { get; set; }
+ /// <summary>
+ /// Gets or sets the daily download limit.
+ /// </summary>
+ /// <value>The daily download limit.</value>
+ public int? DailyDownloadLimit { get; set; }
+
public InternalChannelFeatures()
{
MediaTypes = new List<ChannelMediaType>();
@@ -46,4 +53,13 @@ namespace MediaBrowser.Controller.Channels
DefaultSortFields = new List<ChannelItemSortField>();
}
}
+
+ public class ChannelDownloadException : Exception
+ {
+ public ChannelDownloadException(string message)
+ : base(message)
+ {
+
+ }
+ }
}
diff --git a/MediaBrowser.Controller/Entities/UserViewBuilder.cs b/MediaBrowser.Controller/Entities/UserViewBuilder.cs
index 587cfae955..b9695f8e20 100644
--- a/MediaBrowser.Controller/Entities/UserViewBuilder.cs
+++ b/MediaBrowser.Controller/Entities/UserViewBuilder.cs
@@ -218,7 +218,7 @@ namespace MediaBrowser.Controller.Entities
{
if (query.Recursive)
{
- return GetResult(GetRecursiveChildren(parent, user, new[] { CollectionType.Music }), query);
+ return GetResult(GetRecursiveChildren(parent, user, new[] { CollectionType.Music, CollectionType.MusicVideos }), query);
}
var list = new List<BaseItem>();
@@ -251,7 +251,7 @@ namespace MediaBrowser.Controller.Entities
private QueryResult<BaseItem> GetMusicAlbumArtists(Folder parent, User user, UserItemsQuery query)
{
- var artists = GetRecursiveChildren(parent, user, new[] { CollectionType.Music })
+ var artists = GetRecursiveChildren(parent, user, new[] { CollectionType.Music, CollectionType.MusicVideos })
.Where(i => !i.IsFolder)
.OfType<IHasAlbumArtist>()
.SelectMany(i => i.AlbumArtists)
@@ -275,7 +275,7 @@ namespace MediaBrowser.Controller.Entities
private QueryResult<BaseItem> GetMusicArtists(Folder parent, User user, UserItemsQuery query)
{
- var artists = GetRecursiveChildren(parent, user, new[] { CollectionType.Music })
+ var artists = GetRecursiveChildren(parent, user, new[] { CollectionType.Music, CollectionType.MusicVideos })
.Where(i => !i.IsFolder)
.OfType<IHasArtist>()
.SelectMany(i => i.Artists)
@@ -299,7 +299,7 @@ namespace MediaBrowser.Controller.Entities
private QueryResult<BaseItem> GetFavoriteArtists(Folder parent, User user, UserItemsQuery query)
{
- var artists = GetRecursiveChildren(parent, user, new[] { CollectionType.Music })
+ var artists = GetRecursiveChildren(parent, user, new[] { CollectionType.Music, CollectionType.MusicVideos })
.Where(i => !i.IsFolder)
.OfType<IHasAlbumArtist>()
.SelectMany(i => i.AlbumArtists)
@@ -323,12 +323,12 @@ namespace MediaBrowser.Controller.Entities
private QueryResult<BaseItem> GetMusicAlbums(Folder parent, User user, UserItemsQuery query)
{
- return GetResult(GetRecursiveChildren(parent, user, new[] { CollectionType.Music }).Where(i => i is MusicAlbum), query);
+ return GetResult(GetRecursiveChildren(parent, user, new[] { CollectionType.Music, CollectionType.MusicVideos }).Where(i => i is MusicAlbum), query);
}
private QueryResult<BaseItem> GetMusicSongs(Folder parent, User user, UserItemsQuery query)
{
- return GetResult(GetRecursiveChildren(parent, user, new[] { CollectionType.Music }).Where(i => i is Audio.Audio), query);
+ return GetResult(GetRecursiveChildren(parent, user, new[] { CollectionType.Music, CollectionType.MusicVideos }).Where(i => i is Audio.Audio), query);
}
private QueryResult<BaseItem> GetMusicLatest(Folder parent, User user, UserItemsQuery query)
@@ -336,7 +336,7 @@ namespace MediaBrowser.Controller.Entities
query.SortBy = new[] { ItemSortBy.DateCreated, ItemSortBy.SortName };
query.SortOrder = SortOrder.Descending;
- return GetResult(GetRecursiveChildren(parent, user, new[] { CollectionType.Music }).Where(i => i is MusicVideo || i is Audio.Audio), GetSpecialItemsLimit(), query);
+ return GetResult(GetRecursiveChildren(parent, user, new[] { CollectionType.Music, CollectionType.MusicVideos }).Where(i => i is MusicVideo || i is Audio.Audio), GetSpecialItemsLimit(), query);
}
private async Task<QueryResult<BaseItem>> GetMovieFolders(Folder parent, User user, UserItemsQuery query)