aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Providers
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2015-10-16 00:46:41 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2015-10-16 00:46:41 -0400
commita8e5aba6432104b63c8b831b3239091ba94ada3c (patch)
tree78d76473954e5974835baccad1a5ed83fddee447 /MediaBrowser.Providers
parent2c5ee7e2cf45b6d70c2c64dfe2372d420aa3aa14 (diff)
update library setup
Diffstat (limited to 'MediaBrowser.Providers')
-rw-r--r--MediaBrowser.Providers/Movies/MovieDbProvider.cs17
-rw-r--r--MediaBrowser.Providers/Music/MusicBrainzAlbumProvider.cs2
2 files changed, 16 insertions, 3 deletions
diff --git a/MediaBrowser.Providers/Movies/MovieDbProvider.cs b/MediaBrowser.Providers/Movies/MovieDbProvider.cs
index 20526b3606..c39c2ed685 100644
--- a/MediaBrowser.Providers/Movies/MovieDbProvider.cs
+++ b/MediaBrowser.Providers/Movies/MovieDbProvider.cs
@@ -353,14 +353,27 @@ namespace MediaBrowser.Providers.Movies
return mainResult;
}
+ private static long _lastRequestTicks;
+
/// <summary>
/// Gets the movie db response.
/// </summary>
- internal Task<Stream> GetMovieDbResponse(HttpRequestOptions options)
+ internal async Task<Stream> GetMovieDbResponse(HttpRequestOptions options)
{
+ var requestIntervalMs = 250;
+ var delayTicks = (requestIntervalMs * 10000) - (DateTime.UtcNow.Ticks - _lastRequestTicks);
+ var delayMs = Math.Min(delayTicks / 10000, requestIntervalMs);
+
+ if (delayMs > 0)
+ {
+ _logger.Debug("Throttling Tmdb by {0} ms", delayMs);
+ await Task.Delay(Convert.ToInt32(delayMs)).ConfigureAwait(false);
+ }
+
options.ResourcePool = MovieDbResourcePool;
+ _lastRequestTicks = DateTime.UtcNow.Ticks;
- return _httpClient.Get(options);
+ return await _httpClient.Get(options).ConfigureAwait(false);
}
public TheMovieDbOptions GetTheMovieDbOptions()
diff --git a/MediaBrowser.Providers/Music/MusicBrainzAlbumProvider.cs b/MediaBrowser.Providers/Music/MusicBrainzAlbumProvider.cs
index 70946db36e..978d611a8c 100644
--- a/MediaBrowser.Providers/Music/MusicBrainzAlbumProvider.cs
+++ b/MediaBrowser.Providers/Music/MusicBrainzAlbumProvider.cs
@@ -300,7 +300,7 @@ namespace MediaBrowser.Providers.Music
if (!isSearch)
{
options.CacheMode = CacheMode.Unconditional;
- options.CacheLength = TimeSpan.FromDays(7);
+ options.CacheLength = TimeSpan.FromDays(3);
}
using (var xml = await _httpClient.Get(options).ConfigureAwait(false))