List of usage examples for org.apache.lucene.search DisjunctionMaxQuery getTieBreakerMultiplier
public float getTieBreakerMultiplier()
From source file:org.elasticsearch.action.debugquery.QueryToMapTransformer.java
License:Apache License
@Override public Map visit(DisjunctionMaxQuery query) throws Exception { final Map map = newQuery(query); map.put("tieBreaker", query.getTieBreakerMultiplier()); final ArrayList children = new ArrayList(query.getDisjuncts().size()); map.put("disjuncts", children); for (final Query childQuery : query.getDisjuncts()) { final Object childObj = QueryAcceptor.accept(childQuery, this); children.add(childObj);/* w ww . j a va 2s. c om*/ } return map; }
From source file:org.elasticsearch.index.query.DisMaxQueryBuilderTests.java
License:Apache License
@Override protected void doAssertLuceneQuery(DisMaxQueryBuilder queryBuilder, Query query, QueryShardContext context) throws IOException { Collection<Query> queries = AbstractQueryBuilder.toQueries(queryBuilder.innerQueries(), context); assertThat(query, instanceOf(DisjunctionMaxQuery.class)); DisjunctionMaxQuery disjunctionMaxQuery = (DisjunctionMaxQuery) query; assertThat(disjunctionMaxQuery.getTieBreakerMultiplier(), equalTo(queryBuilder.tieBreaker())); assertThat(disjunctionMaxQuery.getDisjuncts().size(), equalTo(queries.size())); Iterator<Query> queryIterator = queries.iterator(); for (int i = 0; i < disjunctionMaxQuery.getDisjuncts().size(); i++) { assertThat(disjunctionMaxQuery.getDisjuncts().get(i), equalTo(queryIterator.next())); }//from w w w . jav a 2 s. c om }
From source file:uk.co.flax.luwak.util.SpanRewriter.java
License:Apache License
protected Query rewriteDisjunctionMaxQuery(DisjunctionMaxQuery disjunctionMaxQuery) { ArrayList<Query> subQueries = new ArrayList<>(); for (Query subQuery : disjunctionMaxQuery) { subQueries.add(rewrite(subQuery)); }//from ww w . j a v a2s. co m return new DisjunctionMaxQuery(subQueries, disjunctionMaxQuery.getTieBreakerMultiplier()); }