Radarr/src/NzbDrone.Core/Organizer/FileNameValidationService.cs

33 lines
991 B
C#
Raw Normal View History

using System.Collections.Generic;
2013-11-16 05:03:42 +00:00
using System.Linq;
using FluentValidation.Results;
using NzbDrone.Core.Configuration;
2013-11-16 05:03:42 +00:00
using NzbDrone.Core.Parser.Model;
using NzbDrone.Core.Movies;
2013-11-16 05:03:42 +00:00
namespace NzbDrone.Core.Organizer
{
public interface IFilenameValidationService
{
ValidationFailure ValidateMovieFilename(SampleResult sampleResult);
2013-11-16 05:03:42 +00:00
}
public class FileNameValidationService : IFilenameValidationService
2013-11-16 05:03:42 +00:00
{
private const string ERROR_MESSAGE = "Produces invalid file names";
public ValidationFailure ValidateMovieFilename(SampleResult sampleResult)
{
var validationFailure = new ValidationFailure("MovieFormat", ERROR_MESSAGE);
var parsedMovieInfo = Parser.Parser.ParseMovieTitle(sampleResult.FileName, false); //We are not lenient when testing naming schemes
if(parsedMovieInfo == null)
{
return validationFailure;
}
return null;
}
2013-11-16 05:03:42 +00:00
}
}