public PhysicalFileOrganizer(FilesOrganizerOptions options, IFileMover mover, IFileEnumerator enumerator, IMapper mapper)
 {
     this.Options        = options ?? throw new ArgumentNullException(nameof(options));
     this.FileMover      = mover ?? throw new ArgumentNullException(nameof(mover));
     this.FileEnumerator = enumerator ?? throw new ArgumentNullException(nameof(enumerator));
     this.Mapper         = mapper ?? throw new ArgumentNullException(nameof(mapper));
 }
Exemplo n.º 2
0
        public IFilesOrganizer Create(FilesOrganizerOptions options)
        {
            var mapper     = new PatternBasedPathMapper(options);
            var fileMover  = new PhysicalFileMover(this.logger);
            var enumerator = new PhysicalFileEnumerator();

            return(new PhysicalFileOrganizer(options, fileMover, enumerator, mapper));
        }
Exemplo n.º 3
0
        private static FileType GetFileType(FilesOrganizerOptions options, string filename)
        {
            string extension = Path.GetExtension(filename).ToLowerInvariant();

            FileType result;

            if (options.ImageFileFormatPatterns.Contains(extension))
            {
                result = FileType.Image;
            }
            else if (options.VideoFileFormatPatterns.Contains(extension))
            {
                result = FileType.Movie;
            }
            else
            {
                result = FileType.Unknown;
            }

            return(result);
        }
 public PatternBasedPathMapper(FilesOrganizerOptions options) : base(options)
 {
     this.pattern = options.DestinationPattern ?? throw new ArgumentNullException(nameof(pattern));
 }
Exemplo n.º 5
0
 public Mapper(FilesOrganizerOptions options)
 {
     this.options = options ?? throw new ArgumentNullException(nameof(options));
 }