Пример #1
0
        public static async Task <FileSystemObserver> GetInstance(DataRepository repository)
        {
            var fso = new FileSystemObserver(repository);

            await fso.Initialize();

            return(fso);
        }
Пример #2
0
        private async Task Initialize(bool wipe)
        {
            Logger.Info($"Starting initialization...");

            _repository = await DataRepository.GetInstance(wipe);

            _parsersRepository = await ParsersRepository.GetInstance(_repository);

            _fileSystemObserver = await FileSystemObserver.GetInstance(_repository);

            _searchEngine = await SearchEngine.GetInstance(_repository, _parsersRepository);

            _parserEngine = await ParserEngine.GetInstance(_repository, _parsersRepository);

            _searchEngine.ParsingStateUpdated += async(sender, args) => await _parserEngine.UpdateStates();

            Logger.Info($"Initialization is finished.");
        }