Class FacetsCollector


  • public class FacetsCollector
    extends org.apache.lucene.search.Collector
    Collector for facet accumulation. *
    WARNING: This API is experimental and might change in incompatible ways in the next release.
    • Constructor Detail

      • FacetsCollector

        public FacetsCollector​(FacetSearchParams facetSearchParams,
                               org.apache.lucene.index.IndexReader indexReader,
                               TaxonomyReader taxonomyReader)
        Create a collector for accumulating facets while collecting documents during search.
        Parameters:
        facetSearchParams - faceted search parameters defining which facets are required and how.
        indexReader - searched index.
        taxonomyReader - taxonomy containing the facets.
    • Method Detail

      • initScoredDocCollector

        protected ScoredDocIdCollector initScoredDocCollector​(FacetSearchParams facetSearchParams,
                                                              org.apache.lucene.index.IndexReader indexReader,
                                                              TaxonomyReader taxonomyReader)
        Create a ScoredDocIdCollector to be used as the first phase of the facet collection. If all facetRequests are do not require the document score, a ScoredDocIdCollector which does not store the document scores would be returned. Otherwise a SDIC which does store the documents will be returned, having an initial allocated space for 1000 such documents' scores.
      • getFacetResults

        public List<FacetResult> getFacetResults()
                                          throws IOException
        Return accumulated facets results (according to faceted search parameters) for collected documents.
        Throws:
        IOException - on error
      • acceptsDocsOutOfOrder

        public boolean acceptsDocsOutOfOrder()
        Specified by:
        acceptsDocsOutOfOrder in class org.apache.lucene.search.Collector
      • collect

        public void collect​(int doc)
                     throws IOException
        Specified by:
        collect in class org.apache.lucene.search.Collector
        Throws:
        IOException
      • setNextReader

        public void setNextReader​(org.apache.lucene.index.IndexReader reader,
                                  int docBase)
                           throws IOException
        Specified by:
        setNextReader in class org.apache.lucene.search.Collector
        Throws:
        IOException
      • setScorer

        public void setScorer​(org.apache.lucene.search.Scorer scorer)
                       throws IOException
        Specified by:
        setScorer in class org.apache.lucene.search.Collector
        Throws:
        IOException