aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Server.Implementations/Channels/ChannelDownloadScheduledTask.cs
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2014-09-18 00:50:21 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2014-09-18 00:50:21 -0400
commit1e7ae8301d014d49072b7140323866a3ff9f52bd (patch)
tree7227bcd628ed1c2ea4184135234c1da03dbf21a6 /MediaBrowser.Server.Implementations/Channels/ChannelDownloadScheduledTask.cs
parent3509a401c8e3d91854b4fda4e4d7700b0aacefa5 (diff)
switch to new CC url
Diffstat (limited to 'MediaBrowser.Server.Implementations/Channels/ChannelDownloadScheduledTask.cs')
-rw-r--r--MediaBrowser.Server.Implementations/Channels/ChannelDownloadScheduledTask.cs23
1 files changed, 20 insertions, 3 deletions
diff --git a/MediaBrowser.Server.Implementations/Channels/ChannelDownloadScheduledTask.cs b/MediaBrowser.Server.Implementations/Channels/ChannelDownloadScheduledTask.cs
index f5b5db3fd..1d95dbc1b 100644
--- a/MediaBrowser.Server.Implementations/Channels/ChannelDownloadScheduledTask.cs
+++ b/MediaBrowser.Server.Implementations/Channels/ChannelDownloadScheduledTask.cs
@@ -3,6 +3,7 @@ using MediaBrowser.Common.IO;
using MediaBrowser.Common.Net;
using MediaBrowser.Common.Progress;
using MediaBrowser.Common.ScheduledTasks;
+using MediaBrowser.Common.Security;
using MediaBrowser.Controller.Channels;
using MediaBrowser.Controller.Configuration;
using MediaBrowser.Controller.Library;
@@ -30,8 +31,9 @@ namespace MediaBrowser.Server.Implementations.Channels
private readonly IFileSystem _fileSystem;
private readonly ILibraryManager _libraryManager;
private readonly IUserManager _userManager;
+ private readonly ISecurityManager _security;
- public ChannelDownloadScheduledTask(IChannelManager manager, IServerConfigurationManager config, ILogger logger, IHttpClient httpClient, IFileSystem fileSystem, ILibraryManager libraryManager, IUserManager userManager)
+ public ChannelDownloadScheduledTask(IChannelManager manager, IServerConfigurationManager config, ILogger logger, IHttpClient httpClient, IFileSystem fileSystem, ILibraryManager libraryManager, IUserManager userManager, ISecurityManager security)
{
_manager = manager;
_config = config;
@@ -40,6 +42,7 @@ namespace MediaBrowser.Server.Implementations.Channels
_fileSystem = fileSystem;
_libraryManager = libraryManager;
_userManager = userManager;
+ _security = security;
}
public string Name
@@ -176,14 +179,28 @@ namespace MediaBrowser.Server.Implementations.Channels
progress.Report(100);
}
+ private double? GetDownloadLimit(ChannelOptions channelOptions)
+ {
+ if (!_security.IsMBSupporter)
+ {
+ const double limit = .5;
+
+ return Math.Min(channelOptions.DownloadSizeLimit ?? limit, limit);
+ }
+
+ return channelOptions.DownloadSizeLimit;
+ }
+
private async Task DownloadChannelItem(BaseItemDto item,
ChannelOptions channelOptions,
CancellationToken cancellationToken,
string path)
{
- if (channelOptions.DownloadSizeLimit.HasValue)
+ var limit = GetDownloadLimit(channelOptions);
+
+ if (limit.HasValue)
{
- if (IsSizeLimitReached(path, channelOptions.DownloadSizeLimit.Value))
+ if (IsSizeLimitReached(path, limit.Value))
{
return;
}