Clean UA data

This commit is contained in:
Qstick
2021-05-15 18:31:08 -04:00
parent 2100587b5f
commit 06901c4aee

View File

@@ -1,9 +1,12 @@
using System.Collections.Generic;
using System.Text.RegularExpressions;
namespace NzbDrone.Core.Parser
{
public static class UserAgentParser
{
private static readonly List<string> UserAgentWhiteList = new List<string> { "Radarr", "Sonarr", "Readarr", "Lidarr", "Prowlarr" };
private static readonly Regex AppSourceRegex = new Regex(@"(?<agent>.*)\/.*(\(.*\))?",
RegexOptions.IgnoreCase | RegexOptions.Compiled);
public static string ParseSource(string userAgent)
@@ -11,9 +14,12 @@ namespace NzbDrone.Core.Parser
var match = AppSourceRegex.Match(userAgent);
if (match.Groups["agent"].Success)
{
if (UserAgentWhiteList.Contains(match.Groups["agent"].Value))
{
return match.Groups["agent"].Value;
}
}
return "Other";
}