private void configureBexisIndexing(bool recreateIndex)
{
configXML = new XmlDocument();
configXML.Load(FileHelper.ConfigFilePath);
LoadBeforeIndexing();
Lucene.Net.Store.Directory pathIndex = FSDirectory.Open(new DirectoryInfo(luceneIndexPath));
Lucene.Net.Store.Directory autoCompleteIndex = FSDirectory.Open(new DirectoryInfo(autoCompleteIndexPath));
PerFieldAnalyzerWrapper analyzer = new PerFieldAnalyzerWrapper(new BexisAnalyzer());
indexWriter = new IndexWriter(pathIndex, analyzer, recreateIndex, IndexWriter.MaxFieldLength.UNLIMITED);
autoCompleteIndexWriter = new IndexWriter(autoCompleteIndex, new NGramAnalyzer(), true, IndexWriter.MaxFieldLength.UNLIMITED);
foreach (XmlNode a in categoryXmlNodeList)
{
analyzer.AddAnalyzer("ng_" + a.Attributes.GetNamedItem("lucene_name").Value, new NGramAnalyzer());
}
analyzer.AddAnalyzer("ng_all", new NGramAnalyzer());
isIndexConfigured = true;
}