diff options
Diffstat (limited to 'Emby.Server.Implementations/LiveTv')
16 files changed, 141 insertions, 188 deletions
diff --git a/Emby.Server.Implementations/LiveTv/EmbyTV/DirectRecorder.cs b/Emby.Server.Implementations/LiveTv/EmbyTV/DirectRecorder.cs index b2d25fdae..49833de73 100644 --- a/Emby.Server.Implementations/LiveTv/EmbyTV/DirectRecorder.cs +++ b/Emby.Server.Implementations/LiveTv/EmbyTV/DirectRecorder.cs @@ -34,7 +34,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV public Task Record(IDirectStreamProvider? directStreamProvider, MediaSourceInfo mediaSource, string targetFile, TimeSpan duration, Action onStarted, CancellationToken cancellationToken) { - if (directStreamProvider != null) + if (directStreamProvider is not null) { return RecordFromDirectStreamProvider(directStreamProvider, targetFile, duration, onStarted, cancellationToken); } diff --git a/Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs b/Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs index cf9be5a54..8f5fa8694 100644 --- a/Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs +++ b/Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs @@ -295,7 +295,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV } var program = GetProgramInfoFromCache(timer); - if (program == null) + if (program is null) { OnTimerOutOfDate(timer); continue; @@ -367,7 +367,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV { var epgChannel = GetEpgChannelFromTunerChannel(info, tunerChannel, epgChannels); - if (epgChannel != null) + if (epgChannel is not null) { if (!string.IsNullOrWhiteSpace(epgChannel.Name)) { @@ -450,7 +450,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV var channel = epgChannelData.GetChannelById(mappedTunerChannelId); - if (channel != null) + if (channel is not null) { return channel; } @@ -473,7 +473,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV var channel = epgChannelData.GetChannelById(mappedTunerChannelId); - if (channel != null) + if (channel is not null) { return channel; } @@ -490,7 +490,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV var channel = epgChannelData.GetChannelByNumber(tunerChannelNumber); - if (channel != null) + if (channel is not null) { return channel; } @@ -502,7 +502,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV var channel = epgChannelData.GetChannelByName(normalizedName); - if (channel != null) + if (channel is not null) { return channel; } @@ -552,7 +552,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV } var remove = _seriesTimerProvider.GetAll().FirstOrDefault(r => string.Equals(r.Id, timerId, StringComparison.OrdinalIgnoreCase)); - if (remove != null) + if (remove is not null) { _seriesTimerProvider.Delete(remove); } @@ -563,7 +563,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV private void CancelTimerInternal(string timerId, bool isSeriesCancelled, bool isManualCancellation) { var timer = _timerProvider.GetTimer(timerId); - if (timer != null) + if (timer is not null) { var statusChanging = timer.Status != RecordingStatus.Cancelled; timer.Status = RecordingStatus.Cancelled; @@ -582,7 +582,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV _timerProvider.AddOrUpdate(timer, false); } - if (statusChanging && TimerCancelled != null) + if (statusChanging && TimerCancelled is not null) { TimerCancelled(this, new GenericEventArgs<string>(timerId)); } @@ -617,7 +617,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV null : _timerProvider.GetTimerByProgramId(info.ProgramId); - if (existingTimer != null) + if (existingTimer is not null) { if (existingTimer.Status == RecordingStatus.Cancelled || existingTimer.Status == RecordingStatus.Completed) @@ -642,13 +642,13 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV programInfo = GetProgramInfoFromCache(info); } - if (programInfo == null) + if (programInfo is null) { _logger.LogInformation("Unable to find program with Id {0}. Will search using start date", info.ProgramId); programInfo = GetProgramInfoFromCache(info.ChannelId, info.StartDate); } - if (programInfo != null) + if (programInfo is not null) { CopyProgramInfoToTimerInfo(programInfo, info); } @@ -668,7 +668,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV // populate info.seriesID var program = GetProgramInfoFromCache(info.ProgramId); - if (program != null) + if (program is not null) { info.SeriesId = program.ExternalSeriesId; } @@ -714,7 +714,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV { var instance = _seriesTimerProvider.GetAll().FirstOrDefault(i => string.Equals(i.Id, info.Id, StringComparison.OrdinalIgnoreCase)); - if (instance != null) + if (instance is not null) { instance.ChannelId = info.ChannelId; instance.Days = info.Days; @@ -744,7 +744,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV { var existingTimer = _timerProvider.GetTimer(updatedTimer.Id); - if (existingTimer == null) + if (existingTimer is null) { throw new ResourceNotFoundException(); } @@ -861,7 +861,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV } }; - if (program != null) + if (program is not null) { defaults.SeriesId = program.SeriesId; defaults.ProgramId = program.Id; @@ -912,7 +912,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV var epgChannel = await GetEpgChannelFromTunerChannel(provider.Item1, provider.Item2, channel, cancellationToken).ConfigureAwait(false); - if (epgChannel == null) + if (epgChannel is null) { _logger.LogDebug("EPG channel not found for tuner channel {0}-{1} from {2}-{3}", channel.Number, channel.Name, provider.Item1.Name, provider.Item2.ListingsId ?? string.Empty); continue; @@ -945,9 +945,9 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV { var provider = _liveTvManager.ListingProviders.FirstOrDefault(l => string.Equals(l.Type, i.Type, StringComparison.OrdinalIgnoreCase)); - return provider == null ? null : new Tuple<IListingsProvider, ListingsProviderInfo>(provider, i); + return provider is null ? null : new Tuple<IListingsProvider, ListingsProviderInfo>(provider, i); }) - .Where(i => i != null) + .Where(i => i is not null) .ToList(); } @@ -964,7 +964,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV null : currentLiveStreams.FirstOrDefault(i => string.Equals(i.OriginalStreamId, streamId, StringComparison.OrdinalIgnoreCase)); - if (result != null && result.EnableStreamSharing) + if (result is not null && result.EnableStreamSharing) { result.ConsumerCount++; @@ -1134,7 +1134,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV // trim trailing period from the folder name var folderName = _fileSystem.GetValidFilename(timer.Name).Trim().TrimEnd('.').Trim(); - if (metadata != null && metadata.ProductionYear.HasValue) + if (metadata is not null && metadata.ProductionYear.HasValue) { folderName += " (" + metadata.ProductionYear.Value.ToString(CultureInfo.InvariantCulture) + ")"; } @@ -1232,13 +1232,13 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV programInfo = GetProgramInfoFromCache(timer); } - if (programInfo == null) + if (programInfo is null) { _logger.LogInformation("Unable to find program with Id {0}. Will search using start date", timer.ProgramId); programInfo = GetProgramInfoFromCache(timer.ChannelId, timer.StartDate); } - if (programInfo != null) + if (programInfo is not null) { CopyProgramInfoToTimerInfo(programInfo, timer); } @@ -1412,7 +1412,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV var item = GetAffectedBaseItem(Path.GetDirectoryName(path)); - if (item != null) + if (item is not null) { _logger.LogInformation("Refreshing recording parent {Path}", item.Path); @@ -1437,19 +1437,19 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV var parentPath = Path.GetDirectoryName(path); - while (item == null && !string.IsNullOrEmpty(path)) + while (item is null && !string.IsNullOrEmpty(path)) { item = _libraryManager.FindByPath(path, null); path = Path.GetDirectoryName(path); } - if (item != null) + if (item is not null) { if (item.GetType() == typeof(Folder) && string.Equals(item.Path, parentPath, StringComparison.OrdinalIgnoreCase)) { var parentItem = item.GetParent(); - if (parentItem != null && parentItem is not AggregateFolder) + if (parentItem is not null && parentItem is not AggregateFolder) { item = parentItem; } @@ -1474,7 +1474,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV var seriesTimerId = timer.SeriesTimerId; var seriesTimer = _seriesTimerProvider.GetAll().FirstOrDefault(i => string.Equals(i.Id, seriesTimerId, StringComparison.OrdinalIgnoreCase)); - if (seriesTimer == null || seriesTimer.KeepUpTo <= 0) + if (seriesTimer is null || seriesTimer.KeepUpTo <= 0) { return; } @@ -1569,7 +1569,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV { var libraryItem = _libraryManager.FindByPath(timer.RecordingPath, false); - if (libraryItem != null) + if (libraryItem is not null) { _libraryManager.DeleteItem( libraryItem, @@ -1695,7 +1695,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV _ => null }; - if (imageSaveFilenameWithoutExtension == null) + if (imageSaveFilenameWithoutExtension is null) { return; } @@ -1714,7 +1714,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV (program.GetImageInfo(ImageType.Thumb, 0) ?? program.GetImageInfo(ImageType.Primary, 0)) : (program.GetImageInfo(ImageType.Primary, 0) ?? program.GetImageInfo(ImageType.Thumb, 0)); - if (image != null) + if (image is not null) { try { @@ -1729,7 +1729,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV if (!program.IsSeries) { image = program.GetImageInfo(ImageType.Backdrop, 0); - if (image != null) + if (image is not null) { try { @@ -1742,7 +1742,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV } image = program.GetImageInfo(ImageType.Thumb, 0); - if (image != null) + if (image is not null) { try { @@ -1755,7 +1755,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV } image = program.GetImageInfo(ImageType.Logo, 0); - if (image != null) + if (image is not null) { try { @@ -1782,7 +1782,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV }).FirstOrDefault() as LiveTvProgram; // dummy this up - if (program == null) + if (program is null) { program = new LiveTvProgram { @@ -2240,7 +2240,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV ? null : _timerProvider.GetTimerByProgramId(timer.ProgramId)); - if (existingTimer == null) + if (existingTimer is null) { if (ShouldCancelTimerForSeriesTimer(seriesTimer, timer)) { @@ -2367,13 +2367,13 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV DtoOptions = new DtoOptions() }).FirstOrDefault() as LiveTvChannel; - if (channel != null && !string.IsNullOrWhiteSpace(channel.ExternalId)) + if (channel is not null && !string.IsNullOrWhiteSpace(channel.ExternalId)) { tempChannelCache[parent.ChannelId] = channel; } } - if (channel != null || tempChannelCache.TryGetValue(parent.ChannelId, out channel)) + if (channel is not null || tempChannelCache.TryGetValue(parent.ChannelId, out channel)) { channelId = channel.ExternalId; } @@ -2426,13 +2426,13 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV DtoOptions = new DtoOptions() }).FirstOrDefault() as LiveTvChannel; - if (channel != null && !string.IsNullOrWhiteSpace(channel.ExternalId)) + if (channel is not null && !string.IsNullOrWhiteSpace(channel.ExternalId)) { tempChannelCache[programInfo.ChannelId] = channel; } } - if (channel != null || tempChannelCache.TryGetValue(programInfo.ChannelId, out channel)) + if (channel is not null || tempChannelCache.TryGetValue(programInfo.ChannelId, out channel)) { channelId = channel.ExternalId; } @@ -2626,7 +2626,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV { var configuredDevice = configuredDevices.FirstOrDefault(i => string.Equals(i.DeviceId, device.DeviceId, StringComparison.OrdinalIgnoreCase)); - if (configuredDevice != null && !string.Equals(device.Url, configuredDevice.Url, StringComparison.OrdinalIgnoreCase)) + if (configuredDevice is not null && !string.Equals(device.Url, configuredDevice.Url, StringComparison.OrdinalIgnoreCase)) { _logger.LogInformation("Tuner url has changed from {PreviousUrl} to {NewUrl}", configuredDevice.Url, device.Url); diff --git a/Emby.Server.Implementations/LiveTv/EmbyTV/EncodedRecorder.cs b/Emby.Server.Implementations/LiveTv/EmbyTV/EncodedRecorder.cs index 08534de59..5369c9b3d 100644 --- a/Emby.Server.Implementations/LiveTv/EmbyTV/EncodedRecorder.cs +++ b/Emby.Server.Implementations/LiveTv/EmbyTV/EncodedRecorder.cs @@ -208,7 +208,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV // var audioChannels = 2; // var audioStream = mediaStreams.FirstOrDefault(i => i.Type == MediaStreamType.Audio); - // if (audioStream != null) + // if (audioStream is not null) // { // audioChannels = audioStream.Channels ?? audioChannels; // } diff --git a/Emby.Server.Implementations/LiveTv/EmbyTV/ItemDataProvider.cs b/Emby.Server.Implementations/LiveTv/EmbyTV/ItemDataProvider.cs index 58b798ce6..d5a6feb47 100644 --- a/Emby.Server.Implementations/LiveTv/EmbyTV/ItemDataProvider.cs +++ b/Emby.Server.Implementations/LiveTv/EmbyTV/ItemDataProvider.cs @@ -36,7 +36,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV [MemberNotNull(nameof(_items))] private void EnsureLoaded() { - if (_items != null) + if (_items is not null) { return; } @@ -49,7 +49,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV { var bytes = File.ReadAllBytes(_dataPath); _items = JsonSerializer.Deserialize<T[]>(bytes, _jsonOptions); - if (_items == null) + if (_items is null) { Logger.LogError("Error deserializing {Path}, data was null", _dataPath); _items = Array.Empty<T>(); diff --git a/Emby.Server.Implementations/LiveTv/EmbyTV/RecordingHelper.cs b/Emby.Server.Implementations/LiveTv/EmbyTV/RecordingHelper.cs index 40dcca94f..7bbeae866 100644 --- a/Emby.Server.Implementations/LiveTv/EmbyTV/RecordingHelper.cs +++ b/Emby.Server.Implementations/LiveTv/EmbyTV/RecordingHelper.cs @@ -63,7 +63,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV } } } - else if (info.IsMovie && info.ProductionYear != null) + else if (info.IsMovie && info.ProductionYear is not null) { name += " (" + info.ProductionYear + ")"; } diff --git a/Emby.Server.Implementations/LiveTv/EmbyTV/SeriesTimerManager.cs b/Emby.Server.Implementations/LiveTv/EmbyTV/SeriesTimerManager.cs index b1259de23..bf28f3b67 100644 --- a/Emby.Server.Implementations/LiveTv/EmbyTV/SeriesTimerManager.cs +++ b/Emby.Server.Implementations/LiveTv/EmbyTV/SeriesTimerManager.cs @@ -16,10 +16,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV /// <inheritdoc /> public override void Add(SeriesTimerInfo item) { - if (string.IsNullOrEmpty(item.Id)) - { - throw new ArgumentException("SeriesTimerInfo.Id cannot be null or empty."); - } + ArgumentException.ThrowIfNullOrEmpty(item.Id); base.Add(item); } diff --git a/Emby.Server.Implementations/LiveTv/EmbyTV/TimerManager.cs b/Emby.Server.Implementations/LiveTv/EmbyTV/TimerManager.cs index f612565d1..9f8441fa4 100644 --- a/Emby.Server.Implementations/LiveTv/EmbyTV/TimerManager.cs +++ b/Emby.Server.Implementations/LiveTv/EmbyTV/TimerManager.cs @@ -74,10 +74,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV public override void Add(TimerInfo item) { - if (string.IsNullOrEmpty(item.Id)) - { - throw new ArgumentException("TimerInfo.Id cannot be null or empty."); - } + ArgumentException.ThrowIfNullOrEmpty(item.Id); base.Add(item); AddOrUpdateSystemTimer(item); @@ -165,7 +162,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV var timerId = (string?)state ?? throw new ArgumentNullException(nameof(state)); var timer = GetAll().FirstOrDefault(i => string.Equals(i.Id, timerId, StringComparison.OrdinalIgnoreCase)); - if (timer != null) + if (timer is not null) { TimerFired?.Invoke(this, new GenericEventArgs<TimerInfo>(timer)); } diff --git a/Emby.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs b/Emby.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs index b981ad81a..3f7914d3b 100644 --- a/Emby.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs +++ b/Emby.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs @@ -74,10 +74,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings public async Task<IEnumerable<ProgramInfo>> GetProgramsAsync(ListingsProviderInfo info, string channelId, DateTime startDateUtc, DateTime endDateUtc, CancellationToken cancellationToken) { - if (string.IsNullOrEmpty(channelId)) - { - throw new ArgumentNullException(nameof(channelId)); - } + ArgumentException.ThrowIfNullOrEmpty(channelId); // Normalize incoming input channelId = channelId.Replace(".json.schedulesdirect.org", string.Empty, StringComparison.OrdinalIgnoreCase).TrimStart('I'); @@ -111,7 +108,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings using var response = await Send(options, true, info, cancellationToken).ConfigureAwait(false); await using var responseStream = await response.Content.ReadAsStreamAsync(cancellationToken).ConfigureAwait(false); var dailySchedules = await JsonSerializer.DeserializeAsync<IReadOnlyList<DayDto>>(responseStream, _jsonOptions, cancellationToken).ConfigureAwait(false); - if (dailySchedules == null) + if (dailySchedules is null) { return Array.Empty<ProgramInfo>(); } @@ -127,7 +124,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings using var innerResponse = await Send(programRequestOptions, true, info, cancellationToken).ConfigureAwait(false); await using var innerResponseStream = await innerResponse.Content.ReadAsStreamAsync(cancellationToken).ConfigureAwait(false); var programDetails = await JsonSerializer.DeserializeAsync<IReadOnlyList<ProgramDetailsDto>>(innerResponseStream, _jsonOptions, cancellationToken).ConfigureAwait(false); - if (programDetails == null) + if (programDetails is null) { return Array.Empty<ProgramInfo>(); } @@ -153,7 +150,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings continue; } - if (images != null) + if (images is not null) { var imageIndex = images.FindIndex(i => i.ProgramId == schedule.ProgramId[..10]); if (imageIndex > -1) @@ -228,7 +225,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings private ProgramInfo GetProgram(string channelId, ProgramDto programInfo, ProgramDetailsDto details) { - if (programInfo.AirDateTime == null) + if (programInfo.AirDateTime is null) { return null; } @@ -266,7 +263,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings } string episodeTitle = null; - if (details.EpisodeTitle150 != null) + if (details.EpisodeTitle150 is not null) { episodeTitle = details.EpisodeTitle150; } @@ -283,7 +280,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings EpisodeTitle = episodeTitle, Audio = audioType, // IsNew = programInfo.@new ?? false, - IsRepeat = programInfo.New == null, + IsRepeat = programInfo.New is null, IsSeries = string.Equals(details.EntityType, "episode", StringComparison.OrdinalIgnoreCase), ImageUrl = details.PrimaryImage, ThumbImageUrl = details.ThumbImage, @@ -315,13 +312,13 @@ namespace Emby.Server.Implementations.LiveTv.Listings info.ShowId = showId; - if (programInfo.VideoProperties != null) + if (programInfo.VideoProperties is not null) { info.IsHD = programInfo.VideoProperties.Contains("hdtv", StringComparison.OrdinalIgnoreCase); info.Is3D = programInfo.VideoProperties.Contains("3d", StringComparison.OrdinalIgnoreCase); } - if (details.ContentRating != null && details.ContentRating.Count > 0) + if (details.ContentRating is not null && details.ContentRating.Count > 0) { info.OfficialRating = details.ContentRating[0].Code.Replace("TV", "TV-", StringComparison.Ordinal) .Replace("--", "-", StringComparison.Ordinal); @@ -333,13 +330,13 @@ namespace Emby.Server.Implementations.LiveTv.Listings } } - if (details.Descriptions != null) + if (details.Descriptions is not null) { - if (details.Descriptions.Description1000 != null && details.Descriptions.Description1000.Count > 0) + if (details.Descriptions.Description1000 is not null && details.Descriptions.Description1000.Count > 0) { info.Overview = details.Descriptions.Description1000[0].Description; } - else if (details.Descriptions.Description100 != null && details.Descriptions.Description100.Count > 0) + else if (details.Descriptions.Description100 is not null && details.Descriptions.Description100.Count > 0) { info.Overview = details.Descriptions.Description100[0].Description; } @@ -351,12 +348,12 @@ namespace Emby.Server.Implementations.LiveTv.Listings info.SeriesProviderIds[MetadataProvider.Zap2It.ToString()] = info.SeriesId; - if (details.Metadata != null) + if (details.Metadata is not null) { foreach (var metadataProgram in details.Metadata) { var gracenote = metadataProgram.Gracenote; - if (gracenote != null) + if (gracenote is not null) { info.SeasonNumber = gracenote.Season; @@ -371,13 +368,13 @@ namespace Emby.Server.Implementations.LiveTv.Listings } } - if (details.OriginalAirDate != null) + if (details.OriginalAirDate is not null) { info.OriginalAirDate = details.OriginalAirDate; info.ProductionYear = info.OriginalAirDate.Value.Year; } - if (details.Movie != null) + if (details.Movie is not null) { if (!string.IsNullOrEmpty(details.Movie.Year) && int.TryParse(details.Movie.Year, out int year)) @@ -386,7 +383,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings } } - if (details.Genres != null) + if (details.Genres is not null) { info.Genres = details.Genres.Where(g => !string.IsNullOrWhiteSpace(g)).ToList(); info.IsNews = details.Genres.Contains("news", StringComparison.OrdinalIgnoreCase); @@ -407,7 +404,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings .ThenByDescending(i => GetSizeOrder(i)) .FirstOrDefault(); - if (match == null) + if (match is null) { return null; } @@ -518,7 +515,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings var root = await JsonSerializer.DeserializeAsync<IReadOnlyList<HeadendsDto>>(response, _jsonOptions, cancellationToken).ConfigureAwait(false); - if (root != null) + if (root is not null) { foreach (HeadendsDto headend in root) { @@ -670,15 +667,8 @@ namespace Emby.Server.Implementations.LiveTv.Listings { var token = await GetToken(info, cancellationToken).ConfigureAwait(false); - if (string.IsNullOrEmpty(token)) - { - throw new ArgumentException("Authentication required."); - } - - if (string.IsNullOrEmpty(info.ListingsId)) - { - throw new ArgumentException("Listings Id required"); - } + ArgumentException.ThrowIfNullOrEmpty(token); + ArgumentException.ThrowIfNullOrEmpty(info.ListingsId); _logger.LogInformation("Adding new LineUp "); @@ -689,17 +679,11 @@ namespace Emby.Server.Implementations.LiveTv.Listings private async Task<bool> HasLineup(ListingsProviderInfo info, CancellationToken cancellationToken) { - if (string.IsNullOrEmpty(info.ListingsId)) - { - throw new ArgumentException("Listings Id required"); - } + ArgumentException.ThrowIfNullOrEmpty(info.ListingsId); var token = await GetToken(info, cancellationToken).ConfigureAwait(false); - if (string.IsNullOrEmpty(token)) - { - throw new ArgumentException("token required"); - } + ArgumentException.ThrowIfNullOrEmpty(token); _logger.LogInformation("Headends on account "); @@ -732,23 +716,13 @@ namespace Emby.Server.Implementations.LiveTv.Listings { if (validateLogin) { - if (string.IsNullOrEmpty(info.Username)) - { - throw new ArgumentException("Username is required"); - } - - if (string.IsNullOrEmpty(info.Password)) - { - throw new ArgumentException("Password is required"); - } + ArgumentException.ThrowIfNullOrEmpty(info.Username); + ArgumentException.ThrowIfNullOrEmpty(info.Password); } if (validateListings) { - if (string.IsNullOrEmpty(info.ListingsId)) - { - throw new ArgumentException("Listings Id required"); - } + ArgumentException.ThrowIfNullOrEmpty(info.ListingsId); var hasLineup = await HasLineup(info, CancellationToken.None).ConfigureAwait(false); @@ -767,17 +741,11 @@ namespace Emby.Server.Implementations.LiveTv.Listings public async Task<List<ChannelInfo>> GetChannels(ListingsProviderInfo info, CancellationToken cancellationToken) { var listingsId = info.ListingsId; - if (string.IsNullOrEmpty(listingsId)) - { - throw new ArgumentException("ListingsId required"); - } + ArgumentException.ThrowIfNullOrEmpty(listingsId); var token = await GetToken(info, cancellationToken).ConfigureAwait(false); - if (string.IsNullOrEmpty(token)) - { - throw new ArgumentException("token required"); - } + ArgumentException.ThrowIfNullOrEmpty(token); using var options = new HttpRequestMessage(HttpMethod.Get, ApiUrl + "/lineups/" + listingsId); options.Headers.TryAddWithoutValidation("token", token); @@ -785,7 +753,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings using var httpResponse = await Send(options, true, info, cancellationToken).ConfigureAwait(false); await using var stream = await httpResponse.Content.ReadAsStreamAsync(cancellationToken).ConfigureAwait(false); var root = await JsonSerializer.DeserializeAsync<ChannelDto>(stream, _jsonOptions, cancellationToken).ConfigureAwait(false); - if (root == null) + if (root is null) { return new List<ChannelInfo>(); } @@ -814,7 +782,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings Name = string.IsNullOrWhiteSpace(station.Name) ? channelNumber : station.Name }; - if (station.Logo != null) + if (station.Logo is not null) { channelInfo.ImageUrl = station.Logo.Url; } diff --git a/Emby.Server.Implementations/LiveTv/Listings/XmlTvListingsProvider.cs b/Emby.Server.Implementations/LiveTv/Listings/XmlTvListingsProvider.cs index 264eec947..e874990da 100644 --- a/Emby.Server.Implementations/LiveTv/Listings/XmlTvListingsProvider.cs +++ b/Emby.Server.Implementations/LiveTv/Listings/XmlTvListingsProvider.cs @@ -151,9 +151,9 @@ namespace Emby.Server.Implementations.LiveTv.Listings Overview = program.Description, ProductionYear = program.CopyrightDate?.Year, SeasonNumber = program.Episode?.Series, - IsSeries = program.Episode != null, + IsSeries = program.Episode is not null, IsRepeat = program.IsPreviouslyShown && !program.IsNew, - IsPremiere = program.Premiere != null, + IsPremiere = program.Premiere is not null, IsKids = program.Categories.Any(c => info.KidsCategories.Contains(c, StringComparison.OrdinalIgnoreCase)), IsMovie = program.Categories.Any(c => info.MovieCategories.Contains(c, StringComparison.OrdinalIgnoreCase)), IsNews = program.Categories.Any(c => info.NewsCategories.Contains(c, StringComparison.OrdinalIgnoreCase)), @@ -162,7 +162,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings HasImage = !string.IsNullOrEmpty(program.Icon?.Source), OfficialRating = string.IsNullOrEmpty(program.Rating?.Value) ? null : program.Rating.Value, CommunityRating = program.StarRating, - SeriesId = program.Episode == null ? null : program.Title?.GetMD5().ToString("N", CultureInfo.InvariantCulture) + SeriesId = program.Episode is null ? null : program.Title?.GetMD5().ToString("N", CultureInfo.InvariantCulture) }; if (string.IsNullOrWhiteSpace(program.ProgramId)) diff --git a/Emby.Server.Implementations/LiveTv/LiveTvDtoService.cs b/Emby.Server.Implementations/LiveTv/LiveTvDtoService.cs index c09f9cf8d..9326fbd5c 100644 --- a/Emby.Server.Implementations/LiveTv/LiveTvDtoService.cs +++ b/Emby.Server.Implementations/LiveTv/LiveTvDtoService.cs @@ -80,7 +80,7 @@ namespace Emby.Server.Implementations.LiveTv dto.ProgramId = GetInternalProgramId(info.ProgramId).ToString("N", CultureInfo.InvariantCulture); } - if (program != null) + if (program is not null) { dto.ProgramInfo = _dtoService.GetBaseItemDto(program, new DtoOptions()); @@ -98,7 +98,7 @@ namespace Emby.Server.Implementations.LiveTv } } - if (channel != null) + if (channel is not null) { dto.ChannelName = channel.Name; @@ -150,7 +150,7 @@ namespace Emby.Server.Implementations.LiveTv dto.ProgramId = GetInternalProgramId(info.ProgramId).ToString("N", CultureInfo.InvariantCulture); } - dto.DayPattern = info.Days == null ? null : GetDayPattern(info.Days.ToArray()); + dto.DayPattern = info.Days is null ? null : GetDayPattern(info.Days.ToArray()); FillImages(dto, info.Name, info.SeriesId); @@ -168,10 +168,10 @@ namespace Emby.Server.Implementations.LiveTv DtoOptions = new DtoOptions(false) }).FirstOrDefault(); - if (librarySeries != null) + if (librarySeries is not null) { var image = librarySeries.GetImageInfo(ImageType.Thumb, 0); - if (image != null) + if (image is not null) { try { @@ -185,7 +185,7 @@ namespace Emby.Server.Implementations.LiveTv } image = librarySeries.GetImageInfo(ImageType.Backdrop, 0); - if (image != null) + if (image is not null) { try { @@ -212,10 +212,10 @@ namespace Emby.Server.Implementations.LiveTv Name = string.IsNullOrEmpty(programSeriesId) ? seriesName : null }).FirstOrDefault(); - if (program != null) + if (program is not null) { var image = program.GetImageInfo(ImageType.Primary, 0); - if (image != null) + if (image is not null) { try { @@ -228,10 +228,10 @@ namespace Emby.Server.Implementations.LiveTv } } - if (dto.ParentBackdropImageTags == null || dto.ParentBackdropImageTags.Length == 0) + if (dto.ParentBackdropImageTags is null || dto.ParentBackdropImageTags.Length == 0) { image = program.GetImageInfo(ImageType.Backdrop, 0); - if (image != null) + if (image is not null) { try { @@ -262,10 +262,10 @@ namespace Emby.Server.Implementations.LiveTv DtoOptions = new DtoOptions(false) }).FirstOrDefault(); - if (librarySeries != null) + if (librarySeries is not null) { var image = librarySeries.GetImageInfo(ImageType.Thumb, 0); - if (image != null) + if (image is not null) { try { @@ -279,7 +279,7 @@ namespace Emby.Server.Implementations.LiveTv } image = librarySeries.GetImageInfo(ImageType.Backdrop, 0); - if (image != null) + if (image is not null) { try { @@ -305,7 +305,7 @@ namespace Emby.Server.Implementations.LiveTv DtoOptions = new DtoOptions(false) }).FirstOrDefault(); - if (program == null) + if (program is null) { program = _libraryManager.GetItemList(new InternalItemsQuery { @@ -318,10 +318,10 @@ namespace Emby.Server.Implementations.LiveTv }).FirstOrDefault(); } - if (program != null) + if (program is not null) { var image = program.GetImageInfo(ImageType.Primary, 0); - if (image != null) + if (image is not null) { try { @@ -334,10 +334,10 @@ namespace Emby.Server.Implementations.LiveTv } } - if (dto.ParentBackdropImageTags == null || dto.ParentBackdropImageTags.Length == 0) + if (dto.ParentBackdropImageTags is null || dto.ParentBackdropImageTags.Length == 0) { image = program.GetImageInfo(ImageType.Backdrop, 0); - if (image != null) + if (image is not null) { try { @@ -460,7 +460,7 @@ namespace Emby.Server.Implementations.LiveTv { var channel = _libraryManager.GetItemById(dto.ChannelId); - if (channel != null) + if (channel is not null) { info.ChannelId = channel.ExternalId; } @@ -470,7 +470,7 @@ namespace Emby.Server.Implementations.LiveTv { var program = _libraryManager.GetItemById(dto.ProgramId); - if (program != null) + if (program is not null) { info.ProgramId = program.ExternalId; } @@ -480,7 +480,7 @@ namespace Emby.Server.Implementations.LiveTv { var timer = await liveTv.GetSeriesTimer(dto.SeriesTimerId, cancellationToken).ConfigureAwait(false); - if (timer != null) + if (timer is not null) { info.SeriesTimerId = timer.ExternalId; } @@ -526,7 +526,7 @@ namespace Emby.Server.Implementations.LiveTv { var channel = _libraryManager.GetItemById(dto.ChannelId); - if (channel != null) + if (channel is not null) { info.ChannelId = channel.ExternalId; } @@ -536,7 +536,7 @@ namespace Emby.Server.Implementations.LiveTv { var program = _libraryManager.GetItemById(dto.ProgramId); - if (program != null) + if (program is not null) { info.ProgramId = program.ExternalId; } diff --git a/Emby.Server.Implementations/LiveTv/LiveTvManager.cs b/Emby.Server.Implementations/LiveTv/LiveTvManager.cs index 97c2e6e30..7afc7959c 100644 --- a/Emby.Server.Implementations/LiveTv/LiveTvManager.cs +++ b/Emby.Server.Implementations/LiveTv/LiveTvManager.cs @@ -434,7 +434,7 @@ namespace Emby.Server.Implementations.LiveTv var item = _libraryManager.GetItemById(id) as LiveTvChannel; - if (item == null) + if (item is null) { item = new LiveTvChannel { @@ -446,7 +446,7 @@ namespace Emby.Server.Implementations.LiveTv isNew = true; } - if (channelInfo.Tags != null) + if (channelInfo.Tags is not null) { if (!channelInfo.Tags.SequenceEqual(item.Tags, StringComparer.OrdinalIgnoreCase)) { @@ -836,7 +836,7 @@ namespace Emby.Server.Implementations.LiveTv { var seriesTimers = await GetSeriesTimersInternal(new SeriesTimerQuery(), cancellationToken).ConfigureAwait(false); var seriesTimer = seriesTimers.Items.FirstOrDefault(i => string.Equals(_tvDtoService.GetInternalSeriesTimerId(i.Id).ToString("N", CultureInfo.InvariantCulture), query.SeriesTimerId, StringComparison.OrdinalIgnoreCase)); - if (seriesTimer != null) + if (seriesTimer is not null) { internalQuery.ExternalSeriesId = seriesTimer.SeriesId; @@ -948,7 +948,7 @@ namespace Emby.Server.Implementations.LiveTv var channel = _libraryManager.GetItemById(program.ChannelId); - if (channel == null) + if (channel is null) { return score; } @@ -989,7 +989,7 @@ namespace Emby.Server.Implementations.LiveTv var timer = timerList.FirstOrDefault(i => string.Equals(i.ProgramId, externalProgramId, StringComparison.OrdinalIgnoreCase)); var foundSeriesTimer = false; - if (timer != null) + if (timer is not null) { if (timer.Status != RecordingStatus.Cancelled && timer.Status != RecordingStatus.Error) { @@ -1016,7 +1016,7 @@ namespace Emby.Server.Implementations.LiveTv var seriesTimer = seriesTimerList.FirstOrDefault(i => string.Equals(i.SeriesId, externalSeriesId, StringComparison.OrdinalIgnoreCase)); - if (seriesTimer != null) + if (seriesTimer is not null) { program.SeriesTimerId = _tvDtoService.GetInternalSeriesTimerId(seriesTimer.Id) .ToString("N", CultureInfo.InvariantCulture); @@ -1086,7 +1086,7 @@ namespace Emby.Server.Implementations.LiveTv var coreService = _services.OfType<EmbyTV.EmbyTV>().FirstOrDefault(); - if (coreService != null) + if (coreService is not null) { await coreService.RefreshSeriesTimers(cancellationToken).ConfigureAwait(false); await coreService.RefreshTimers(cancellationToken).ConfigureAwait(false); @@ -1280,7 +1280,7 @@ namespace Emby.Server.Implementations.LiveTv { var item = _libraryManager.GetItemById(itemId); - if (item != null) + if (item is not null) { _libraryManager.DeleteItem( item, @@ -1314,7 +1314,7 @@ namespace Emby.Server.Implementations.LiveTv private QueryResult<BaseItem> GetEmbyRecordings(RecordingQuery query, DtoOptions dtoOptions, User user) { - if (user == null) + if (user is null) { return new QueryResult<BaseItem>(); } @@ -1377,7 +1377,7 @@ namespace Emby.Server.Implementations.LiveTv limit = null; // var allActivePaths = EmbyTV.EmbyTV.Current.GetAllActiveRecordings().Select(i => i.Path).ToArray(); - // var items = allActivePaths.Select(i => _libraryManager.FindByPath(i, false)).Where(i => i != null).ToArray(); + // var items = allActivePaths.Select(i => _libraryManager.FindByPath(i, false)).Where(i => i is not null).ToArray(); // return new QueryResult<BaseItem> // { @@ -1517,7 +1517,7 @@ namespace Emby.Server.Implementations.LiveTv dto.CompletionPercentage = pct; } - if (channel != null) + if (channel is not null) { dto.ChannelName = channel.Name; @@ -1702,7 +1702,7 @@ namespace Emby.Server.Implementations.LiveTv { var timer = await GetTimer(id, CancellationToken.None).ConfigureAwait(false); - if (timer == null) + if (timer is null) { throw new ResourceNotFoundException(string.Format(CultureInfo.InvariantCulture, "Timer with Id {0} not found", id)); } @@ -1721,7 +1721,7 @@ namespace Emby.Server.Implementations.LiveTv { var timer = await GetSeriesTimer(id, CancellationToken.None).ConfigureAwait(false); - if (timer == null) + if (timer is null) { throw new ResourceNotFoundException(string.Format(CultureInfo.InvariantCulture, "SeriesTimer with Id {0} not found", id)); } @@ -1834,7 +1834,7 @@ namespace Emby.Server.Implementations.LiveTv { var internalChannelId = _tvDtoService.GetInternalChannelId(i.Item2.Name, i.Item1.ChannelId); var channel = _libraryManager.GetItemById(internalChannelId); - channelName = channel == null ? null : channel.Name; + channelName = channel is null ? null : channel.Name; } return _tvDtoService.GetSeriesTimerInfoDto(i.Item1, i.Item2, channelName); @@ -1887,7 +1887,7 @@ namespace Emby.Server.Implementations.LiveTv { var currentProgram = programs.FirstOrDefault(i => channel.Id.Equals(i.ChannelId)); - if (currentProgram != null) + if (currentProgram is not null) { currentProgramsList.Add(currentProgram); } @@ -1913,7 +1913,7 @@ namespace Emby.Server.Implementations.LiveTv ILiveTvService service = null; ProgramInfo programInfo = null; - if (program != null) + if (program is not null) { service = GetService(program); @@ -2147,7 +2147,7 @@ namespace Emby.Server.Implementations.LiveTv var service = _services.FirstOrDefault(i => string.Equals(i.GetType().FullName.GetMD5().ToString("N", CultureInfo.InvariantCulture), parts[0], StringComparison.OrdinalIgnoreCase)); - if (service == null) + if (service is null) { throw new ArgumentException("Service not found."); } @@ -2178,7 +2178,7 @@ namespace Emby.Server.Implementations.LiveTv var provider = _tunerHosts.FirstOrDefault(i => string.Equals(info.Type, i.Type, StringComparison.OrdinalIgnoreCase)); - if (provider == null) + if (provider is null) { throw new ResourceNotFoundException(); } @@ -2222,7 +2222,7 @@ namespace Emby.Server.Implementations.LiveTv var provider = _listingProviders.FirstOrDefault(i => string.Equals(info.Type, i.Type, StringComparison.OrdinalIgnoreCase)); - if (provider == null) + if (provider is null) { throw new ResourceNotFoundException( string.Format( @@ -2317,7 +2317,7 @@ namespace Emby.Server.Implementations.LiveTv var providerChannel = EmbyTV.EmbyTV.Current.GetEpgChannelFromTunerChannel(mappings, tunerChannel, providerChannels); - if (providerChannel != null) + if (providerChannel is not null) { result.ProviderChannelName = providerChannel.Name; result.ProviderChannelId = providerChannel.Id; @@ -2334,7 +2334,7 @@ namespace Emby.Server.Implementations.LiveTv { var provider = _listingProviders.FirstOrDefault(i => string.Equals(providerType, i.Type, StringComparison.OrdinalIgnoreCase)); - if (provider == null) + if (provider is null) { throw new ResourceNotFoundException(); } @@ -2347,7 +2347,7 @@ namespace Emby.Server.Implementations.LiveTv var provider = _listingProviders.FirstOrDefault(i => string.Equals(info.Type, i.Type, StringComparison.OrdinalIgnoreCase)); - if (provider == null) + if (provider is null) { throw new ResourceNotFoundException(); } @@ -2390,7 +2390,7 @@ namespace Emby.Server.Implementations.LiveTv .SelectMany(i => i.Locations) .Distinct(StringComparer.OrdinalIgnoreCase) .Select(i => _libraryManager.FindByPath(i, true)) - .Where(i => i != null && i.IsVisibleStandalone(user)) + .Where(i => i is not null && i.IsVisibleStandalone(user)) .SelectMany(i => _libraryManager.GetCollectionFolders(i)) .GroupBy(x => x.Id) .Select(x => x.First()) diff --git a/Emby.Server.Implementations/LiveTv/LiveTvMediaSourceProvider.cs b/Emby.Server.Implementations/LiveTv/LiveTvMediaSourceProvider.cs index 4b7584af3..6a92fc599 100644 --- a/Emby.Server.Implementations/LiveTv/LiveTvMediaSourceProvider.cs +++ b/Emby.Server.Implementations/LiveTv/LiveTvMediaSourceProvider.cs @@ -42,7 +42,7 @@ namespace Emby.Server.Implementations.LiveTv { var activeRecordingInfo = _liveTvManager.GetActiveRecordingInfo(item.Path); - if (string.IsNullOrEmpty(item.Path) || activeRecordingInfo != null) + if (string.IsNullOrEmpty(item.Path) || activeRecordingInfo is not null) { return GetMediaSourcesInternal(item, activeRecordingInfo, cancellationToken); } @@ -59,7 +59,7 @@ namespace Emby.Server.Implementations.LiveTv try { - if (activeRecordingInfo != null) + if (activeRecordingInfo is not null) { sources = await EmbyTV.EmbyTV.Current.GetRecordingStreamMediaSources(activeRecordingInfo, cancellationToken) .ConfigureAwait(false); diff --git a/Emby.Server.Implementations/LiveTv/TunerHosts/BaseTunerHost.cs b/Emby.Server.Implementations/LiveTv/TunerHosts/BaseTunerHost.cs index 2b82f2462..7b6c8b80a 100644 --- a/Emby.Server.Implementations/LiveTv/TunerHosts/BaseTunerHost.cs +++ b/Emby.Server.Implementations/LiveTv/TunerHosts/BaseTunerHost.cs @@ -131,10 +131,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts public async Task<List<MediaSourceInfo>> GetChannelStreamMediaSources(string channelId, CancellationToken cancellationToken) { - if (string.IsNullOrEmpty(channelId)) - { - throw new ArgumentNullException(nameof(channelId)); - } + ArgumentException.ThrowIfNullOrEmpty(channelId); if (IsValidChannelId(channelId)) { @@ -147,7 +144,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts var channels = await GetChannels(host, true, cancellationToken).ConfigureAwait(false); var channelInfo = channels.FirstOrDefault(i => string.Equals(i.Id, channelId, StringComparison.OrdinalIgnoreCase)); - if (channelInfo != null) + if (channelInfo is not null) { return await GetChannelStreamMediaSources(host, channelInfo, cancellationToken).ConfigureAwait(false); } @@ -166,10 +163,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts public async Task<ILiveStream> GetChannelStream(string channelId, string streamId, List<ILiveStream> currentLiveStreams, CancellationToken cancellationToken) { - if (string.IsNullOrEmpty(channelId)) - { - throw new ArgumentNullException(nameof(channelId)); - } + ArgumentException.ThrowIfNullOrEmpty(channelId); if (!IsValidChannelId(channelId)) { @@ -187,7 +181,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts var channels = await GetChannels(host, true, cancellationToken).ConfigureAwait(false); var channelInfo = channels.FirstOrDefault(i => string.Equals(i.Id, channelId, StringComparison.OrdinalIgnoreCase)); - if (channelInfo != null) + if (channelInfo is not null) { hostsWithChannel.Add(new Tuple<TunerHostInfo, ChannelInfo>(host, channelInfo)); } @@ -223,10 +217,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts protected virtual bool IsValidChannelId(string channelId) { - if (string.IsNullOrEmpty(channelId)) - { - throw new ArgumentNullException(nameof(channelId)); - } + ArgumentException.ThrowIfNullOrEmpty(channelId); return channelId.StartsWith(ChannelIdPrefix, StringComparison.OrdinalIgnoreCase); } diff --git a/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunHost.cs b/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunHost.cs index e0eaa8e58..5327b3d74 100644 --- a/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunHost.cs +++ b/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunHost.cs @@ -302,7 +302,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun var hdHomerunChannelInfo = channels.FirstOrDefault() as HdHomerunChannelInfo; - if (hdHomerunChannelInfo == null || hdHomerunChannelInfo.IsLegacyTuner) + if (hdHomerunChannelInfo is null || hdHomerunChannelInfo.IsLegacyTuner) { return await GetTunerInfosUdp(info, cancellationToken).ConfigureAwait(false); } @@ -503,7 +503,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun { var modelInfo = await GetModelInfo(tuner, false, cancellationToken).ConfigureAwait(false); - if (modelInfo != null && modelInfo.SupportsTranscoding) + if (modelInfo is not null && modelInfo.SupportsTranscoding) { if (tuner.AllowHWTranscoding) { @@ -560,7 +560,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun var mediaSource = GetMediaSource(tunerHost, hdhrId, channel, profile); - if (hdhomerunChannel != null && hdhomerunChannel.IsLegacyTuner) + if (hdhomerunChannel is not null && hdhomerunChannel.IsLegacyTuner) { return new HdHomerunUdpStream( mediaSource, @@ -674,7 +674,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun var info = await TryGetTunerHostInfo(deviceAddress, cancellationToken).ConfigureAwait(false); - if (info != null) + if (info is not null) { list.Add(info); } diff --git a/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunManager.cs b/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunManager.cs index e67b5846a..81eb083f6 100644 --- a/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunManager.cs +++ b/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunManager.cs @@ -37,7 +37,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun { using (var socket = _tcpClient) { - if (socket != null) + if (socket is not null) { _tcpClient = null; diff --git a/Emby.Server.Implementations/LiveTv/TunerHosts/LiveStream.cs b/Emby.Server.Implementations/LiveTv/TunerHosts/LiveStream.cs index 2748794b3..3ae9e256b 100644 --- a/Emby.Server.Implementations/LiveTv/TunerHosts/LiveStream.cs +++ b/Emby.Server.Implementations/LiveTv/TunerHosts/LiveStream.cs @@ -35,7 +35,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts EnableStreamSharing = true; UniqueId = Guid.NewGuid().ToString("N", CultureInfo.InvariantCulture); - if (tuner != null) + if (tuner is not null) { TunerHostId = tuner.Id; } |
