public FileDedupe( FileDedupeConfig fileDedupeConfig, IndexedFileParser indexedFileParser, DirectoryAnalyser dedupeAnalyser, IndexWriter indexWriter, IndexerFactory indexerFactory, IndexMerger indexMerger, ILogger logger) { _fileDedupeConfig = fileDedupeConfig; _indexedFileParser = indexedFileParser; _directoryAnalyser = dedupeAnalyser; _indexWriter = indexWriter; _indexerFactory = indexerFactory; _indexMerger = indexMerger; _logger = logger; Console.WriteLine($"Loading Index: {_fileDedupeConfig.IndexFile}"); _index = indexedFileParser.Parse(_fileDedupeConfig.IndexFile); Console.WriteLine($"Loaded Index: {_fileDedupeConfig.IndexFile}"); }
public static async Task MainAsync(string[] args) { var config = ConfigReader.LoadFromFile("config.json"); var logger = new ConsoleLogger(); var dedupeAnalyser = new DirectoryAnalyser(); var indexWriter = new IndexWriter(); var parser = new IndexedFileParser(logger); var indexerFactory = new IndexerFactory(logger); var indexMerger = new IndexMerger(parser, indexWriter, logger); var fileDedupe = new FileDedupe( config, parser, dedupeAnalyser, indexWriter, indexerFactory, indexMerger, logger); fileDedupe.AnalyseDirectories(); }