aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Providers
diff options
context:
space:
mode:
authorBond_009 <bond.009@outlook.com>2024-07-17 15:48:21 +0200
committerBond_009 <bond.009@outlook.com>2024-07-17 15:48:21 +0200
commitecd2dab0a2550c80ae054576d9c05ddb24d5e47b (patch)
tree48d80691cd1287c58722fb1e7aea9e02b4ba410f /MediaBrowser.Providers
parent78ed8f660c1acf216cc0133bc709acf09f7a411e (diff)
Add TrySetProviderId extension
Diffstat (limited to 'MediaBrowser.Providers')
-rw-r--r--MediaBrowser.Providers/MediaInfo/AudioFileProber.cs27
-rw-r--r--MediaBrowser.Providers/Plugins/Omdb/OmdbProvider.cs5
-rw-r--r--MediaBrowser.Providers/Plugins/Tmdb/Movies/TmdbMovieProvider.cs6
-rw-r--r--MediaBrowser.Providers/Plugins/Tmdb/People/TmdbPersonProvider.cs11
-rw-r--r--MediaBrowser.Providers/Plugins/Tmdb/TV/TmdbEpisodeProvider.cs17
-rw-r--r--MediaBrowser.Providers/Plugins/Tmdb/TV/TmdbSeasonProvider.cs5
-rw-r--r--MediaBrowser.Providers/Plugins/Tmdb/TV/TmdbSeriesProvider.cs27
7 files changed, 23 insertions, 75 deletions
diff --git a/MediaBrowser.Providers/MediaInfo/AudioFileProber.cs b/MediaBrowser.Providers/MediaInfo/AudioFileProber.cs
index 0083d4f75f..fbafd55187 100644
--- a/MediaBrowser.Providers/MediaInfo/AudioFileProber.cs
+++ b/MediaBrowser.Providers/MediaInfo/AudioFileProber.cs
@@ -325,39 +325,32 @@ namespace MediaBrowser.Providers.MediaInfo
audio.NormalizationGain = (float)tags.ReplayGainTrackGain;
}
- if ((options.ReplaceAllMetadata || !audio.TryGetProviderId(MetadataProvider.MusicBrainzArtist, out _))
- && !string.IsNullOrEmpty(tags.MusicBrainzArtistId))
+ if (options.ReplaceAllMetadata || !audio.HasProviderId(MetadataProvider.MusicBrainzArtist))
{
- audio.SetProviderId(MetadataProvider.MusicBrainzArtist, tags.MusicBrainzArtistId);
+ audio.TrySetProviderId(MetadataProvider.MusicBrainzArtist, tags.MusicBrainzArtistId);
}
- if ((options.ReplaceAllMetadata || !audio.TryGetProviderId(MetadataProvider.MusicBrainzAlbumArtist, out _))
- && !string.IsNullOrEmpty(tags.MusicBrainzReleaseArtistId))
+ if (options.ReplaceAllMetadata || !audio.HasProviderId(MetadataProvider.MusicBrainzAlbumArtist))
{
- audio.SetProviderId(MetadataProvider.MusicBrainzAlbumArtist, tags.MusicBrainzReleaseArtistId);
+ audio.TrySetProviderId(MetadataProvider.MusicBrainzAlbumArtist, tags.MusicBrainzReleaseArtistId);
}
- if ((options.ReplaceAllMetadata || !audio.TryGetProviderId(MetadataProvider.MusicBrainzAlbum, out _))
- && !string.IsNullOrEmpty(tags.MusicBrainzReleaseId))
+ if (options.ReplaceAllMetadata || !audio.HasProviderId(MetadataProvider.MusicBrainzAlbum))
{
- audio.SetProviderId(MetadataProvider.MusicBrainzAlbum, tags.MusicBrainzReleaseId);
+ audio.TrySetProviderId(MetadataProvider.MusicBrainzAlbum, tags.MusicBrainzReleaseId);
}
- if ((options.ReplaceAllMetadata || !audio.TryGetProviderId(MetadataProvider.MusicBrainzReleaseGroup, out _))
- && !string.IsNullOrEmpty(tags.MusicBrainzReleaseGroupId))
+ if (options.ReplaceAllMetadata || !audio.HasProviderId(MetadataProvider.MusicBrainzReleaseGroup))
{
- audio.SetProviderId(MetadataProvider.MusicBrainzReleaseGroup, tags.MusicBrainzReleaseGroupId);
+ audio.TrySetProviderId(MetadataProvider.MusicBrainzReleaseGroup, tags.MusicBrainzReleaseGroupId);
}
- if (options.ReplaceAllMetadata || !audio.TryGetProviderId(MetadataProvider.MusicBrainzTrack, out _))
+ if (options.ReplaceAllMetadata || !audio.HasProviderId(MetadataProvider.MusicBrainzTrack))
{
// Fallback to ffprobe as TagLib incorrectly provides recording MBID in `tags.MusicBrainzTrackId`.
// See https://github.com/mono/taglib-sharp/issues/304
var trackMbId = mediaInfo.GetProviderId(MetadataProvider.MusicBrainzTrack);
- if (trackMbId is not null)
- {
- audio.SetProviderId(MetadataProvider.MusicBrainzTrack, trackMbId);
- }
+ audio.TrySetProviderId(MetadataProvider.MusicBrainzTrack, trackMbId);
}
// Save extracted lyrics if they exist,
diff --git a/MediaBrowser.Providers/Plugins/Omdb/OmdbProvider.cs b/MediaBrowser.Providers/Plugins/Omdb/OmdbProvider.cs
index c750caa1c9..de0da7f7bd 100644
--- a/MediaBrowser.Providers/Plugins/Omdb/OmdbProvider.cs
+++ b/MediaBrowser.Providers/Plugins/Omdb/OmdbProvider.cs
@@ -220,10 +220,7 @@ namespace MediaBrowser.Providers.Plugins.Omdb
item.HomePageUrl = result.Website;
}
- if (!string.IsNullOrWhiteSpace(result.imdbID))
- {
- item.SetProviderId(MetadataProvider.Imdb, result.imdbID);
- }
+ item.TrySetProviderId(MetadataProvider.Imdb, result.imdbID);
ParseAdditionalMetadata(itemResult, result, isEnglishRequested);
diff --git a/MediaBrowser.Providers/Plugins/Tmdb/Movies/TmdbMovieProvider.cs b/MediaBrowser.Providers/Plugins/Tmdb/Movies/TmdbMovieProvider.cs
index dac7a74ed8..8d68e2dcfe 100644
--- a/MediaBrowser.Providers/Plugins/Tmdb/Movies/TmdbMovieProvider.cs
+++ b/MediaBrowser.Providers/Plugins/Tmdb/Movies/TmdbMovieProvider.cs
@@ -81,11 +81,7 @@ namespace MediaBrowser.Providers.Plugins.Tmdb.Movies
}
remoteResult.SetProviderId(MetadataProvider.Tmdb, movie.Id.ToString(CultureInfo.InvariantCulture));
-
- if (!string.IsNullOrWhiteSpace(movie.ImdbId))
- {
- remoteResult.SetProviderId(MetadataProvider.Imdb, movie.ImdbId);
- }
+ remoteResult.TrySetProviderId(MetadataProvider.Imdb, movie.ImdbId);
return new[] { remoteResult };
}
diff --git a/MediaBrowser.Providers/Plugins/Tmdb/People/TmdbPersonProvider.cs b/MediaBrowser.Providers/Plugins/Tmdb/People/TmdbPersonProvider.cs
index 5c6e71fd89..98c46895d7 100644
--- a/MediaBrowser.Providers/Plugins/Tmdb/People/TmdbPersonProvider.cs
+++ b/MediaBrowser.Providers/Plugins/Tmdb/People/TmdbPersonProvider.cs
@@ -56,10 +56,7 @@ namespace MediaBrowser.Providers.Plugins.Tmdb.People
}
result.SetProviderId(MetadataProvider.Tmdb, personResult.Id.ToString(CultureInfo.InvariantCulture));
- if (!string.IsNullOrEmpty(personResult.ExternalIds.ImdbId))
- {
- result.SetProviderId(MetadataProvider.Imdb, personResult.ExternalIds.ImdbId);
- }
+ result.TrySetProviderId(MetadataProvider.Imdb, personResult.ExternalIds.ImdbId);
return new[] { result };
}
@@ -129,11 +126,7 @@ namespace MediaBrowser.Providers.Plugins.Tmdb.People
}
item.SetProviderId(MetadataProvider.Tmdb, person.Id.ToString(CultureInfo.InvariantCulture));
-
- if (!string.IsNullOrEmpty(person.ImdbId))
- {
- item.SetProviderId(MetadataProvider.Imdb, person.ImdbId);
- }
+ item.TrySetProviderId(MetadataProvider.Imdb, person.ImdbId);
result.HasMetadata = true;
result.Item = item;
diff --git a/MediaBrowser.Providers/Plugins/Tmdb/TV/TmdbEpisodeProvider.cs b/MediaBrowser.Providers/Plugins/Tmdb/TV/TmdbEpisodeProvider.cs
index 489f5e2a17..e628abde55 100644
--- a/MediaBrowser.Providers/Plugins/Tmdb/TV/TmdbEpisodeProvider.cs
+++ b/MediaBrowser.Providers/Plugins/Tmdb/TV/TmdbEpisodeProvider.cs
@@ -187,20 +187,9 @@ namespace MediaBrowser.Providers.Plugins.Tmdb.TV
};
var externalIds = episodeResult.ExternalIds;
- if (!string.IsNullOrEmpty(externalIds?.TvdbId))
- {
- item.SetProviderId(MetadataProvider.Tvdb, externalIds.TvdbId);
- }
-
- if (!string.IsNullOrEmpty(externalIds?.ImdbId))
- {
- item.SetProviderId(MetadataProvider.Imdb, externalIds.ImdbId);
- }
-
- if (!string.IsNullOrEmpty(externalIds?.TvrageId))
- {
- item.SetProviderId(MetadataProvider.TvRage, externalIds.TvrageId);
- }
+ item.TrySetProviderId(MetadataProvider.Tvdb, externalIds?.TvdbId);
+ item.TrySetProviderId(MetadataProvider.Imdb, externalIds?.ImdbId);
+ item.TrySetProviderId(MetadataProvider.TvRage, externalIds?.TvrageId);
if (episodeResult.Videos?.Results is not null)
{
diff --git a/MediaBrowser.Providers/Plugins/Tmdb/TV/TmdbSeasonProvider.cs b/MediaBrowser.Providers/Plugins/Tmdb/TV/TmdbSeasonProvider.cs
index 10efb68b94..3f208b5993 100644
--- a/MediaBrowser.Providers/Plugins/Tmdb/TV/TmdbSeasonProvider.cs
+++ b/MediaBrowser.Providers/Plugins/Tmdb/TV/TmdbSeasonProvider.cs
@@ -73,10 +73,7 @@ namespace MediaBrowser.Providers.Plugins.Tmdb.TV
result.Item.Name = seasonResult.Name;
}
- if (!string.IsNullOrEmpty(seasonResult.ExternalIds?.TvdbId))
- {
- result.Item.SetProviderId(MetadataProvider.Tvdb, seasonResult.ExternalIds.TvdbId);
- }
+ result.Item.TrySetProviderId(MetadataProvider.Tvdb, seasonResult.ExternalIds.TvdbId);
// TODO why was this disabled?
var credits = seasonResult.Credits;
diff --git a/MediaBrowser.Providers/Plugins/Tmdb/TV/TmdbSeriesProvider.cs b/MediaBrowser.Providers/Plugins/Tmdb/TV/TmdbSeriesProvider.cs
index d8476bd47d..e4062740fe 100644
--- a/MediaBrowser.Providers/Plugins/Tmdb/TV/TmdbSeriesProvider.cs
+++ b/MediaBrowser.Providers/Plugins/Tmdb/TV/TmdbSeriesProvider.cs
@@ -135,15 +135,9 @@ namespace MediaBrowser.Providers.Plugins.Tmdb.TV
remoteResult.SetProviderId(MetadataProvider.Tmdb, series.Id.ToString(CultureInfo.InvariantCulture));
if (series.ExternalIds is not null)
{
- if (!string.IsNullOrEmpty(series.ExternalIds.ImdbId))
- {
- remoteResult.SetProviderId(MetadataProvider.Imdb, series.ExternalIds.ImdbId);
- }
+ remoteResult.TrySetProviderId(MetadataProvider.Imdb, series.ExternalIds.ImdbId);
- if (!string.IsNullOrEmpty(series.ExternalIds.TvdbId))
- {
- remoteResult.SetProviderId(MetadataProvider.Tvdb, series.ExternalIds.TvdbId);
- }
+ remoteResult.TrySetProviderId(MetadataProvider.Tvdb, series.ExternalIds.TvdbId);
}
remoteResult.PremiereDate = series.FirstAirDate?.ToUniversalTime();
@@ -289,20 +283,9 @@ namespace MediaBrowser.Providers.Plugins.Tmdb.TV
var ids = seriesResult.ExternalIds;
if (ids is not null)
{
- if (!string.IsNullOrWhiteSpace(ids.ImdbId))
- {
- series.SetProviderId(MetadataProvider.Imdb, ids.ImdbId);
- }
-
- if (!string.IsNullOrEmpty(ids.TvrageId))
- {
- series.SetProviderId(MetadataProvider.TvRage, ids.TvrageId);
- }
-
- if (!string.IsNullOrEmpty(ids.TvdbId))
- {
- series.SetProviderId(MetadataProvider.Tvdb, ids.TvdbId);
- }
+ series.TrySetProviderId(MetadataProvider.Imdb, ids.ImdbId);
+ series.TrySetProviderId(MetadataProvider.TvRage, ids.TvrageId);
+ series.TrySetProviderId(MetadataProvider.Tvdb, ids.TvdbId);
}
var contentRatings = seriesResult.ContentRatings.Results ?? new List<ContentRating>();