Cutoff moved to its own spec

This commit is contained in:
Mark McDowall
2013-09-10 19:07:22 -07:00
parent 92cc41edeb
commit 33fa468f91
9 changed files with 66 additions and 16 deletions
@@ -1,3 +1,4 @@
using System;
using NLog;
using NzbDrone.Core.Configuration;
using NzbDrone.Core.Qualities;
@@ -7,7 +8,8 @@ namespace NzbDrone.Core.DecisionEngine
{
public interface IQualityUpgradableSpecification
{
bool IsUpgradable(QualityProfile profile, QualityModel currentQuality, QualityModel newQuality = null);
bool IsUpgradable(QualityModel currentQuality, QualityModel newQuality = null);
bool CutoffNotMet(QualityProfile profile, QualityModel currentQuality, QualityModel newQuality = null);
}
public class QualityUpgradableSpecification : IQualityUpgradableSpecification
@@ -21,7 +23,7 @@ namespace NzbDrone.Core.DecisionEngine
_logger = logger;
}
public bool IsUpgradable(QualityProfile profile, QualityModel currentQuality, QualityModel newQuality = null)
public bool IsUpgradable(QualityModel currentQuality, QualityModel newQuality = null)
{
if (newQuality != null)
{
@@ -38,6 +40,11 @@ namespace NzbDrone.Core.DecisionEngine
}
}
return true;
}
public bool CutoffNotMet(QualityProfile profile, QualityModel currentQuality, QualityModel newQuality = null)
{
if (currentQuality.Quality >= profile.Cutoff)
{
_logger.Trace("Existing item meets cut-off. skipping.");