public static IReindexer Create() { var tokenizer = new FilteringTokenizer( new TransformingTokenizer(new Tokenizer(), x => new Token(English.Stem(x.Payload), x.Type)), x => English.IsStopWord(x.Payload) ); var queryParser = new VisitingQueryParser( new QueryParser(), new FilterTermVisitor(English.IsStopWord), new TransformTermVisitor(English.Stem) ); var fullTextIndex = new FullTextIndex(); var fileWatcherDispatcher = new FileWatcherDispatcher(); var fileWatcherService = new FileWatcherService(new FileWatcherFactory(fileWatcherDispatcher), TimeSpan.FromSeconds(1)); return(new Reindexer( fullTextIndex, queryParser, tokenizer, fileWatcherService, Disposable.Create(() => { fileWatcherService.Dispose(); fileWatcherDispatcher.Dispose(); fullTextIndex.Dispose(); }) )); }
public DirectoryWatcherTests() { tempDirectory = Path.Combine(Path.GetTempPath(), $"{Guid.NewGuid():N}"); watcherTempDirectory = Path.Combine(tempDirectory, $"{Guid.NewGuid():N}"); Directory.CreateDirectory(watcherTempDirectory); fileWatcherDispatcher = new FileWatcherDispatcher(); directoryWatcher = new DirectoryWatcher(watcherTempDirectory, fileWatcherDispatcher); }
public SingleFileWatcherTests() { tempDirectory = Path.Combine(Path.GetTempPath(), $"{Guid.NewGuid():N}"); watcherTempDirectory = Path.Combine(tempDirectory, $"{Guid.NewGuid():N}"); filePath = Path.Combine(watcherTempDirectory, $"{Guid.NewGuid():N}"); Directory.CreateDirectory(watcherTempDirectory); File.WriteAllText(filePath, "Hello"); dispatcher = new FileWatcherDispatcher(); singleFileWatcher = new SingleFileWatcher(filePath, dispatcher); }