Class Filter

  • Direct Known Subclasses:
    SolrFilter

    public abstract class Filter
    extends org.apache.lucene.search.Query
    Convenient base class for building queries that only perform matching, but no scoring. The scorer produced by such queries always returns 0 as score.
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected Filter()
      Default Filter constructor that will use the doc id set iterator when consumed through the Query API.
      protected Filter​(boolean applyLazily)
      Filter constructor.
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      org.apache.lucene.search.Weight createWeight​(org.apache.lucene.search.IndexSearcher searcher, boolean needsScores, float boost)  
      abstract org.apache.lucene.search.DocIdSet getDocIdSet​(org.apache.lucene.index.LeafReaderContext context, org.apache.lucene.util.Bits acceptDocs)
      Creates a DocIdSet enumerating the documents that should be permitted in search results.
      • Methods inherited from class org.apache.lucene.search.Query

        classHash, equals, hashCode, rewrite, sameClassAs, toString, toString
    • Constructor Detail

      • Filter

        protected Filter​(boolean applyLazily)
        Filter constructor. When applyLazily is true and the produced DocIdSets support random-access, Lucene will only apply this filter after other clauses.
      • Filter

        protected Filter()
        Default Filter constructor that will use the doc id set iterator when consumed through the Query API.
    • Method Detail

      • getDocIdSet

        public abstract org.apache.lucene.search.DocIdSet getDocIdSet​(org.apache.lucene.index.LeafReaderContext context,
                                                                      org.apache.lucene.util.Bits acceptDocs)
                                                               throws IOException
        Creates a DocIdSet enumerating the documents that should be permitted in search results. NOTE: null can be returned if no documents are accepted by this Filter.

        Note: This method will be called once per segment in the index during searching. The returned DocIdSet must refer to document IDs for that segment, not for the top-level reader.

        Parameters:
        context - a LeafReaderContext instance opened on the index currently searched on. Note, it is likely that the provided reader info does not represent the whole underlying index i.e. if the index has more than one segment the given reader only represents a single segment. The provided context is always an atomic context, so you can call LeafReader.terms(String) on the context's reader, for example.
        acceptDocs - Bits that represent the allowable docs to match (typically deleted docs but possibly filtering other documents)
        Returns:
        a DocIdSet that provides the documents which should be permitted or prohibited in search results. NOTE: null should be returned if the filter doesn't accept any documents otherwise internal optimization might not apply in the case an empty DocIdSet is returned.
        Throws:
        IOException
      • createWeight

        public org.apache.lucene.search.Weight createWeight​(org.apache.lucene.search.IndexSearcher searcher,
                                                            boolean needsScores,
                                                            float boost)
                                                     throws IOException
        Overrides:
        createWeight in class org.apache.lucene.search.Query
        Throws:
        IOException