类org.apache.lucene.search.highlight.WeightedSpanTerm源码实例Demo

下面列出了怎么用org.apache.lucene.search.highlight.WeightedSpanTerm的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: Elasticsearch   文件: CustomQueryScorer.java
@Override
protected void extractUnknownQuery(Query query,
                                   Map<String, WeightedSpanTerm> terms) throws IOException {
    if (query instanceof FunctionScoreQuery) {
        query = ((FunctionScoreQuery) query).getSubQuery();
        extract(query, query.getBoost(), terms);
    } else if (query instanceof FiltersFunctionScoreQuery) {
        query = ((FiltersFunctionScoreQuery) query).getSubQuery();
        extract(query, query.getBoost(), terms);
    } else if (terms.isEmpty()) {
        extractWeightedTerms(terms, query, query.getBoost());
    }
}
 
源代码2 项目: lucene-solr   文件: HighlightCustomQueryTest.java
@Override
protected void extractUnknownQuery(Query query,
    Map<String, WeightedSpanTerm> terms) throws IOException {
  float boost = 1f;
  while (query instanceof BoostQuery) {
    BoostQuery bq = (BoostQuery) query;
    boost *= bq.getBoost();
    query = bq.getQuery();
  }
  if (query instanceof CustomQuery) {
    extractWeightedTerms(terms, new TermQuery(((CustomQuery) query).term), boost);
  }
}
 
源代码3 项目: lucene-solr   文件: DefaultSolrHighlighter.java
@Override
protected void extract(Query query, float boost, Map<String, WeightedSpanTerm> terms) throws IOException {
  // these queries are not supported in lucene highlighting out of the box since 8.0
  if (query instanceof ToParentBlockJoinQuery) {
    extract(((ToParentBlockJoinQuery) query).getChildQuery(), boost, terms);
  } else if (query instanceof ToChildBlockJoinQuery) {
    extract(((ToChildBlockJoinQuery) query).getParentQuery(), boost, terms);
  } else {
    super.extract(query, boost, terms);
  }
}
 
源代码4 项目: Elasticsearch   文件: CustomQueryScorer.java
public CustomQueryScorer(WeightedSpanTerm[] weightedTerms) {
    super(weightedTerms);
}
 
 类所在包
 同包方法