New: Required/Ignored restrictions now support /pattern/ regex

This commit is contained in:
Qstick
2018-03-14 21:45:58 -04:00
parent 97d4063cf3
commit a27b6eb63e
5 changed files with 156 additions and 4 deletions
@@ -13,11 +13,13 @@ namespace NzbDrone.Core.DecisionEngine.Specifications
{
private readonly IRestrictionService _restrictionService;
private readonly Logger _logger;
private readonly ITermMatcher _termMatcher;
public ReleaseRestrictionsSpecification(IRestrictionService restrictionService, Logger logger)
public ReleaseRestrictionsSpecification(ITermMatcher termMatcher, IRestrictionService restrictionService, Logger logger)
{
_restrictionService = restrictionService;
_logger = logger;
_termMatcher = termMatcher;
}
public SpecificationPriority Priority => SpecificationPriority.Default;
@@ -63,9 +65,9 @@ namespace NzbDrone.Core.DecisionEngine.Specifications
return Decision.Accept();
}
private static List<string> ContainsAny(List<string> terms, string title)
private List<string> ContainsAny(List<string> terms, string title)
{
return terms.Where(t => title.ToLowerInvariant().Contains(t.ToLowerInvariant())).ToList();
return terms.Where(t => _termMatcher.IsMatch(t, title)).ToList();
}
}
}