コード例 #1
0
        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}");
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: smgoodman84/FileAnalyser
        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();
        }