aboutsummaryrefslogtreecommitdiff
path: root/Emby.Dlna/DlnaManager.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Emby.Dlna/DlnaManager.cs')
-rw-r--r--Emby.Dlna/DlnaManager.cs42
1 files changed, 18 insertions, 24 deletions
diff --git a/Emby.Dlna/DlnaManager.cs b/Emby.Dlna/DlnaManager.cs
index 2ea2c130f..99b3e6e7e 100644
--- a/Emby.Dlna/DlnaManager.cs
+++ b/Emby.Dlna/DlnaManager.cs
@@ -105,9 +105,9 @@ namespace Emby.Dlna
ArgumentNullException.ThrowIfNull(deviceInfo);
var profile = GetProfiles()
- .FirstOrDefault(i => i.Identification != null && IsMatch(deviceInfo, i.Identification));
+ .FirstOrDefault(i => i.Identification is not null && IsMatch(deviceInfo, i.Identification));
- if (profile == null)
+ if (profile is null)
{
_logger.LogInformation("No matching device profile found. The default will need to be used. \n{@Profile}", deviceInfo);
}
@@ -171,8 +171,8 @@ namespace Emby.Dlna
{
ArgumentNullException.ThrowIfNull(headers);
- var profile = GetProfiles().FirstOrDefault(i => i.Identification != null && IsMatch(headers, i.Identification));
- if (profile == null)
+ var profile = GetProfiles().FirstOrDefault(i => i.Identification is not null && IsMatch(headers, i.Identification));
+ if (profile is null)
{
_logger.LogDebug("No matching device profile found. {@Headers}", headers);
}
@@ -199,6 +199,11 @@ namespace Emby.Dlna
if (headers.TryGetValue(header.Name, out StringValues value))
{
+ if (StringValues.IsNullOrEmpty(value))
+ {
+ return false;
+ }
+
switch (header.Match)
{
case HeaderMatchType.Equals:
@@ -208,7 +213,8 @@ namespace Emby.Dlna
// _logger.LogDebug("IsMatch-Substring value: {0} testValue: {1} isMatch: {2}", value, header.Value, isMatch);
return isMatch;
case HeaderMatchType.Regex:
- return Regex.IsMatch(value, header.Value, RegexOptions.IgnoreCase);
+ // Can't be null, we checked above the switch statement
+ return Regex.IsMatch(value!, header.Value, RegexOptions.IgnoreCase);
default:
throw new ArgumentException("Unrecognized HeaderMatchType");
}
@@ -224,7 +230,7 @@ namespace Emby.Dlna
return _fileSystem.GetFilePaths(path)
.Where(i => string.Equals(Path.GetExtension(i), ".xml", StringComparison.OrdinalIgnoreCase))
.Select(i => ParseProfileFile(i, type))
- .Where(i => i != null)
+ .Where(i => i is not null)
.ToList()!; // We just filtered out all the nulls
}
catch (IOException)
@@ -265,14 +271,11 @@ namespace Emby.Dlna
/// <inheritdoc />
public DeviceProfile? GetProfile(string id)
{
- if (string.IsNullOrEmpty(id))
- {
- throw new ArgumentNullException(nameof(id));
- }
+ ArgumentException.ThrowIfNullOrEmpty(id);
var info = GetProfileInfosInternal().FirstOrDefault(i => string.Equals(i.Info.Id, id, StringComparison.OrdinalIgnoreCase));
- if (info == null)
+ if (info is null)
{
return null;
}
@@ -371,10 +374,7 @@ namespace Emby.Dlna
{
profile = ReserializeProfile(profile);
- if (string.IsNullOrEmpty(profile.Name))
- {
- throw new ArgumentException("Profile is missing Name");
- }
+ ArgumentException.ThrowIfNullOrEmpty(profile.Name);
var newFilename = _fileSystem.GetValidFilename(profile.Name) + ".xml";
var path = Path.Combine(UserProfilesPath, newFilename);
@@ -387,15 +387,9 @@ namespace Emby.Dlna
{
profile = ReserializeProfile(profile);
- if (string.IsNullOrEmpty(profile.Id))
- {
- throw new ArgumentException("Profile is missing Id");
- }
+ ArgumentException.ThrowIfNullOrEmpty(profile.Id);
- if (string.IsNullOrEmpty(profile.Name))
- {
- throw new ArgumentException("Profile is missing Name");
- }
+ ArgumentException.ThrowIfNullOrEmpty(profile.Name);
var current = GetProfileInfosInternal().First(i => string.Equals(i.Info.Id, profileId, StringComparison.OrdinalIgnoreCase));
if (current.Info.Type == DeviceProfileType.System)
@@ -470,7 +464,7 @@ namespace Emby.Dlna
var resource = GetType().Namespace + ".Images." + filename.ToLowerInvariant();
var stream = _assembly.GetManifestResourceStream(resource);
- if (stream == null)
+ if (stream is null)
{
return null;
}