diff options
| -rw-r--r-- | MediaBrowser.Model/Configuration/ServerConfiguration.cs | 1 | ||||
| -rw-r--r-- | MediaBrowser.Mono.userprefs | 28 | ||||
| -rw-r--r-- | MediaBrowser.Providers/Movies/PersonUpdatesPreScanTask.cs | 15 | ||||
| -rw-r--r-- | MediaBrowser.Providers/Movies/TmdbPersonProvider.cs | 7 |
4 files changed, 24 insertions, 27 deletions
diff --git a/MediaBrowser.Model/Configuration/ServerConfiguration.cs b/MediaBrowser.Model/Configuration/ServerConfiguration.cs index 656393585..40003e638 100644 --- a/MediaBrowser.Model/Configuration/ServerConfiguration.cs +++ b/MediaBrowser.Model/Configuration/ServerConfiguration.cs @@ -224,6 +224,7 @@ namespace MediaBrowser.Model.Configuration /// </summary> /// <value><c>true</c> if [enable tv db updates]; otherwise, <c>false</c>.</value> public bool EnableTvDbUpdates { get; set; } + public bool EnableTmdbUpdates { get; set; } public bool EnableVideoImageExtraction { get; set; } diff --git a/MediaBrowser.Mono.userprefs b/MediaBrowser.Mono.userprefs index b773d7aef..a4e4b1751 100644 --- a/MediaBrowser.Mono.userprefs +++ b/MediaBrowser.Mono.userprefs @@ -1,25 +1,24 @@ <Properties> - <MonoDevelop.Ide.Workspace ActiveConfiguration="Debug|x86" /> - <MonoDevelop.Ide.Workbench ActiveDocument="MediaBrowser.Model\Web\QueryStringDictionary.cs"> - <Files> - <File FileName="MediaBrowser.Server.Implementations\HttpServer\HttpServer.cs" Line="1" Column="1" /> - <File FileName="MediaBrowser.Server.Mono\Networking\NetworkManager.cs" Line="1" Column="1" /> - <File FileName="MediaBrowser.ServerApplication\ApplicationHost.cs" Line="1" Column="1" /> - <File FileName="MediaBrowser.Server.Mono\Native\NativeApp.cs" Line="1" Column="1" /> - <File FileName="MediaBrowser.Server.Mono\Program.cs" Line="1" Column="1" /> - <File FileName="MediaBrowser.ServerApplication\FFMpeg\FFMpegDownloader.cs" Line="31" Column="30" /> - <File FileName="MediaBrowser.Server.Mono\FFMpeg\FFMpegDownloadInfo.cs" Line="1" Column="1" /> - <File FileName="MediaBrowser.Model\Web\QueryStringDictionary.cs" Line="26" Column="10" /> - </Files> + <MonoDevelop.Ide.Workspace ActiveConfiguration="Release|x86" /> + <MonoDevelop.Ide.Workbench> <Pads> <Pad Id="ProjectPad"> <State expanded="True"> + <Node name="MediaBrowser.Common.Implementations" expanded="True"> + <Node name="HttpClientManager" expanded="True" /> + </Node> + <Node name="MediaBrowser.Controller" expanded="True"> + <Node name="Drawing" expanded="True" /> + </Node> <Node name="MediaBrowser.Model" expanded="True"> - <Node name="References" expanded="True" selected="True" /> + <Node name="References" expanded="True" /> <Node name="Web" expanded="True" /> </Node> + <Node name="MediaBrowser.Server.Implementations" expanded="True" /> <Node name="MediaBrowser.Server.Mono" expanded="True"> - <Node name="FFMpeg" expanded="True" /> + <Node name="FFMpeg" expanded="True"> + <Node name="FFMpegDownloader.cs" selected="True" /> + </Node> </Node> </State> </Pad> @@ -35,6 +34,7 @@ <BreakpointStore> <Breakpoint file="D:\Development\MediaBrowser\MediaBrowser.Server.Mono\Native\NativeApp.cs" line="23" column="1" /> <Breakpoint file="D:\Development\MediaBrowser\MediaBrowser.Server.Mono\Native\NativeApp.cs" line="15" column="1" /> + <Breakpoint file="D:\Development\MediaBrowser\MediaBrowser.Common.Implementations\HttpClientManager\HttpClientManager.cs" line="477" column="17" /> </BreakpointStore> </MonoDevelop.Ide.DebuggingService.Breakpoints> <MonoDevelop.Ide.DebuggingService.PinnedWatches /> diff --git a/MediaBrowser.Providers/Movies/PersonUpdatesPreScanTask.cs b/MediaBrowser.Providers/Movies/PersonUpdatesPreScanTask.cs index 347e4de97..e9d0b5c9a 100644 --- a/MediaBrowser.Providers/Movies/PersonUpdatesPreScanTask.cs +++ b/MediaBrowser.Providers/Movies/PersonUpdatesPreScanTask.cs @@ -60,7 +60,7 @@ namespace MediaBrowser.Providers.Movies /// <returns>Task.</returns> public async Task Run(IProgress<double> progress, CancellationToken cancellationToken) { - if (!_config.Configuration.EnableInternetProviders) + if (!_config.Configuration.EnableInternetProviders || !_config.Configuration.EnableTmdbUpdates) { progress.Report(100); return; @@ -101,8 +101,8 @@ namespace MediaBrowser.Providers.Movies var updatedIds = await GetIdsToUpdate(lastUpdateDate, 1, cancellationToken).ConfigureAwait(false); - var existingDictionary = existingDirectories.ToDictionary(i => i, StringComparer.OrdinalIgnoreCase); - + var existingDictionary = existingDirectories.ToDictionary(i => i, StringComparer.OrdinalIgnoreCase); + var idsToUpdate = updatedIds.Where(i => !string.IsNullOrWhiteSpace(i) && existingDictionary.ContainsKey(i)); await UpdatePeople(idsToUpdate, path, progress, cancellationToken).ConfigureAwait(false); @@ -174,14 +174,9 @@ namespace MediaBrowser.Providers.Movies { await UpdatePerson(id, peopleDataPath, cancellationToken).ConfigureAwait(false); } - catch (HttpException ex) + catch (Exception ex) { - // Already logged at lower levels, but don't fail the whole operation, unless timed out - // We have to fail this to make it run again otherwise new episode data could potentially be missing - if (ex.IsTimedOut) - { - throw; - } + _logger.ErrorException("Error updating tmdb person id {0}", ex, id); } numComplete++; diff --git a/MediaBrowser.Providers/Movies/TmdbPersonProvider.cs b/MediaBrowser.Providers/Movies/TmdbPersonProvider.cs index f0c8e3dca..33fb27280 100644 --- a/MediaBrowser.Providers/Movies/TmdbPersonProvider.cs +++ b/MediaBrowser.Providers/Movies/TmdbPersonProvider.cs @@ -155,7 +155,7 @@ namespace MediaBrowser.Providers.Movies if (!string.IsNullOrEmpty(id)) { - await FetchInfo(person, id, cancellationToken).ConfigureAwait(false); + await FetchInfo(person, id, force, cancellationToken).ConfigureAwait(false); } else { @@ -219,9 +219,10 @@ namespace MediaBrowser.Providers.Movies /// </summary> /// <param name="person">The person.</param> /// <param name="id">The id.</param> + /// <param name="isForcedRefresh">if set to <c>true</c> [is forced refresh].</param> /// <param name="cancellationToken">The cancellation token.</param> /// <returns>Task.</returns> - private async Task FetchInfo(Person person, string id, CancellationToken cancellationToken) + private async Task FetchInfo(Person person, string id, bool isForcedRefresh, CancellationToken cancellationToken) { var personDataPath = GetPersonDataPath(ConfigurationManager.ApplicationPaths, id); @@ -240,7 +241,7 @@ namespace MediaBrowser.Providers.Movies await DownloadPersonInfo(id, personDataPath, cancellationToken).ConfigureAwait(false); } - //if (!HasAltMeta(person)) + if (isForcedRefresh || ConfigurationManager.Configuration.EnableTmdbUpdates || !HasAltMeta(person)) { var info = JsonSerializer.DeserializeFromFile<PersonResult>(Path.Combine(personDataPath, dataFileName)); |
