You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Sonarr/src/NzbDrone.Core/Validation/QualityProfileExistsValidat...

28 lines
855 B

using FluentValidation.Validators;
using NzbDrone.Core.Profiles.Qualities;
namespace NzbDrone.Core.Validation
{
public class QualityProfileExistsValidator : PropertyValidator
{
private readonly IQualityProfileService _qualityProfileService;
public QualityProfileExistsValidator(IQualityProfileService qualityProfileService)
{
_qualityProfileService = qualityProfileService;
}
protected override string GetDefaultMessageTemplate() => "Quality Profile does not exist";
protected override bool IsValid(PropertyValidatorContext context)
{
if (context?.PropertyValue == null || (int)context.PropertyValue == 0)
{
return true;
}
return _qualityProfileService.Exists((int)context.PropertyValue);
}
}
}