public static IndexWriter Create(AbstractConnection connection, Entity entity) { var dir = LuceneDirectoryFactory.Create(connection, entity); Analyzer defaultAnalyzer = new KeywordAnalyzer(); var analyzer = new PerFieldAnalyzerWrapper(defaultAnalyzer); foreach (var field in GetFields(entity, connection.Version, connection.Logger)) { analyzer.AddAnalyzer(field.Key, field.Value); } return new IndexWriter(dir, analyzer, IndexWriter.MaxFieldLength.UNLIMITED); }
public static IndexWriter Create(AbstractConnection connection, Process process, Entity entity) { using (var dir = LuceneDirectoryFactory.Create(connection, entity)) { Analyzer defaultAnalyzer = new KeywordAnalyzer(); if (process.SearchTypes.ContainsKey("default")) { defaultAnalyzer = LuceneAnalyzerFactory.Create(process.SearchTypes["default"].Analyzer, connection.Version); } var analyzer = new PerFieldAnalyzerWrapper(defaultAnalyzer); foreach (var field in GetFields(entity, connection.Version, connection.Logger)) { analyzer.AddAnalyzer(field.Key, field.Value); } return new IndexWriter(dir, analyzer, IndexWriter.MaxFieldLength.UNLIMITED); } }