Interface Scorer
- All Known Implementing Classes:
QueryScorer,QueryTermScorer
public interface Scorer
A Scorer is responsible for scoring a stream of tokens. These token scores can then be used to
compute
TextFragment scores.-
Method Summary
Modifier and TypeMethodDescriptionfloatCalled when theHighlighterhas no more tokens for the current fragment - the Scorer returns the weighting it has derived for the most recent fragment, typically based on the results ofgetTokenScore().floatCalled for each token in the current fragment.init(TokenStream tokenStream) Called to init the Scorer with aTokenStream.voidstartFragment(TextFragment newFragment) Called when a new fragment is started for consideration.
-
Method Details
-
init
Called to init the Scorer with aTokenStream. You can grab references to the attributes you are interested in here and access them fromgetTokenScore().- Parameters:
tokenStream- theTokenStreamthat will be scored.- Returns:
- either a
TokenStreamthat the Highlighter should continue using (eg if you read the tokenSream in this method) or null to continue using the sameTokenStreamthat was passed in. - Throws:
IOException- If there is a low-level I/O error
-
startFragment
Called when a new fragment is started for consideration.- Parameters:
newFragment- the fragment that will be scored next
-
getTokenScore
float getTokenScore()Called for each token in the current fragment. TheHighlighterwill increment theTokenStreampassed to init on every call.- Returns:
- a score which is passed to the
Highlighterclass to influence the mark-up of the text (this return value is NOT used to score the fragment)
-
getFragmentScore
float getFragmentScore()Called when theHighlighterhas no more tokens for the current fragment - the Scorer returns the weighting it has derived for the most recent fragment, typically based on the results ofgetTokenScore().
-