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/Tv/AddSeriesValidator.cs

29 lines
1.0 KiB

using FluentValidation;
using FluentValidation.Results;
using NzbDrone.Core.Validation.Paths;
namespace NzbDrone.Core.Tv
{
public interface IAddSeriesValidator
{
ValidationResult Validate(Series instance);
}
public class AddSeriesValidator : AbstractValidator<Series>, IAddSeriesValidator
{
public AddSeriesValidator(RootFolderValidator rootFolderValidator,
SeriesPathValidator seriesPathValidator,
SeriesAncestorValidator seriesAncestorValidator,
SeriesTitleSlugValidator seriesTitleSlugValidator)
{
RuleFor(c => c.Path).Cascade(CascadeMode.Stop)
.IsValidPath()
.SetValidator(rootFolderValidator)
.SetValidator(seriesPathValidator)
.SetValidator(seriesAncestorValidator);
RuleFor(c => c.TitleSlug).SetValidator(seriesTitleSlugValidator);
}
}
}