diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2015-10-16 00:46:41 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2015-10-16 00:46:41 -0400 |
| commit | a8e5aba6432104b63c8b831b3239091ba94ada3c (patch) | |
| tree | 78d76473954e5974835baccad1a5ed83fddee447 /MediaBrowser.Providers | |
| parent | 2c5ee7e2cf45b6d70c2c64dfe2372d420aa3aa14 (diff) | |
update library setup
Diffstat (limited to 'MediaBrowser.Providers')
| -rw-r--r-- | MediaBrowser.Providers/Movies/MovieDbProvider.cs | 17 | ||||
| -rw-r--r-- | MediaBrowser.Providers/Music/MusicBrainzAlbumProvider.cs | 2 |
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)) |
