Class FilterScorer

All Implemented Interfaces:
Unwrappable<Scorer>

public abstract class FilterScorer extends Scorer implements Unwrappable<Scorer>
A FilterScorer contains another Scorer, which it uses as its basic source of data, possibly transforming the data along the way or providing additional functionality. The class FilterScorer itself simply implements all abstract methods of Scorer with versions that pass all requests to the contained scorer. Subclasses of FilterScorer may further override some of these methods and may also provide additional methods and fields.
  • Field Details

    • in

      protected final Scorer in
  • Constructor Details

    • FilterScorer

      public FilterScorer(Scorer in)
      Create a new FilterScorer
      Parameters:
      in - the Scorer to wrap
    • FilterScorer

      public FilterScorer(Scorer in, Weight weight)
      Create a new FilterScorer with a specific weight
      Parameters:
      in - the Scorer to wrap
      weight - a Weight
  • Method Details

    • score

      public float score() throws IOException
      Description copied from class: Scorable
      Returns the score of the current document matching the query.
      Specified by:
      score in class Scorable
      Throws:
      IOException
    • docID

      public final int docID()
      Description copied from class: Scorable
      Returns the doc ID that is currently being scored.
      Specified by:
      docID in class Scorable
    • iterator

      public final DocIdSetIterator iterator()
      Description copied from class: Scorer
      Return a DocIdSetIterator over matching documents.

      The returned iterator will either be positioned on -1 if no documents have been scored yet, DocIdSetIterator.NO_MORE_DOCS if all documents have been scored already, or the last document id that has been scored otherwise.

      The returned iterator is a view: calling this method several times will return iterators that have the same state.

      Specified by:
      iterator in class Scorer
    • twoPhaseIterator

      public final TwoPhaseIterator twoPhaseIterator()
      Description copied from class: Scorer
      Optional method: Return a TwoPhaseIterator view of this Scorer. A return value of null indicates that two-phase iteration is not supported.

      Note that the returned TwoPhaseIterator's approximation must advance synchronously with the Scorer.iterator(): advancing the approximation must advance the iterator and vice-versa.

      Implementing this method is typically useful on Scorers that have a high per-document overhead in order to confirm matches.

      The default implementation returns null.

      Overrides:
      twoPhaseIterator in class Scorer
    • unwrap

      public Scorer unwrap()
      Description copied from interface: Unwrappable
      Unwraps this instance
      Specified by:
      unwrap in interface Unwrappable<Scorer>