protected OpenBitSetDISI CalculateOpenBitSetDisi(string facetAttributeFieldName, string value) { var facetQuery = new TermQuery(new Term(facetAttributeFieldName, value)); var facetQueryFilter = new QueryWrapperFilter(facetQuery); return(new OpenBitSetDISI(facetQueryFilter.GetDocIdSet(IndexReader).Iterator(), IndexReader.MaxDoc)); }
/// <inheritdoc /> public ISearchBit GetBits() { var query = CreateQuery(); var filter = new QueryWrapperFilter(query); var indexSearcher = _indexSearcherFactory(); var context = (AtomicReaderContext)indexSearcher.IndexReader.Context; var bits = filter.GetDocIdSet(context, context.AtomicReader.LiveDocs); var documentSetIDInterator = new OpenBitSetDISI(bits.GetIterator(), indexSearcher.IndexReader.MaxDoc); return(new SearchBit(documentSetIDInterator)); }
public ISearchBits GetBits() { var query = CreateQuery(); IndexSearcher searcher; try { searcher = new IndexSearcher(_directory, true); } catch { // index might not exist if it has been rebuilt Logger.Information("Attempt to read a none existing index"); return(null); } using (searcher) { var filter = new QueryWrapperFilter(query); var bits = filter.GetDocIdSet(searcher.IndexReader); var disi = new OpenBitSetDISI(bits.Iterator(), searcher.MaxDoc); return(new SearchBits(disi)); } }