List of usage examples for org.apache.lucene.index Terms.Bucket getDocCount
public abstract int getDocCount() throws IOException;
From source file:org.elasticsearch.search.aggregations.metrics.AvgIT.java
License:Apache License
@Override public void testOrderByEmptyAggregation() throws Exception { SearchResponse searchResponse = client().prepareSearch("idx").setQuery(matchAllQuery()) .addAggregation(/*from w ww .j a va 2 s .c om*/ terms("terms").field("value").order(Order.compound(Order.aggregation("filter>avg", true))) .subAggregation(filter("filter").filter(termQuery("value", 100)) .subAggregation(avg("avg").field("value")))) .get(); assertHitCount(searchResponse, 10); Terms terms = searchResponse.getAggregations().get("terms"); assertThat(terms, notNullValue()); List<Terms.Bucket> buckets = terms.getBuckets(); assertThat(buckets, notNullValue()); assertThat(buckets.size(), equalTo(10)); for (int i = 0; i < 10; i++) { Terms.Bucket bucket = buckets.get(i); assertThat(bucket, notNullValue()); assertThat(bucket.getKeyAsNumber(), equalTo((Number) Long.valueOf(i + 1))); assertThat(bucket.getDocCount(), equalTo(1L)); Filter filter = bucket.getAggregations().get("filter"); assertThat(filter, notNullValue()); assertThat(filter.getDocCount(), equalTo(0L)); Avg avg = filter.getAggregations().get("avg"); assertThat(avg, notNullValue()); assertThat(avg.value(), equalTo(Double.NaN)); } }
From source file:org.elasticsearch.search.aggregations.metrics.SumIT.java
License:Apache License
@Override public void testOrderByEmptyAggregation() throws Exception { SearchResponse searchResponse = client().prepareSearch("idx").setQuery(matchAllQuery()) .addAggregation(/*from w ww . j a va2 s . co m*/ terms("terms").field("value").order(Order.compound(Order.aggregation("filter>sum", true))) .subAggregation(filter("filter").filter(termQuery("value", 100)) .subAggregation(sum("sum").field("value")))) .get(); assertHitCount(searchResponse, 10); Terms terms = searchResponse.getAggregations().get("terms"); assertThat(terms, notNullValue()); List<Terms.Bucket> buckets = terms.getBuckets(); assertThat(buckets, notNullValue()); assertThat(buckets.size(), equalTo(10)); for (int i = 0; i < 10; i++) { Terms.Bucket bucket = buckets.get(i); assertThat(bucket, notNullValue()); assertThat(bucket.getKeyAsNumber(), equalTo((Number) Long.valueOf(i + 1))); assertThat(bucket.getDocCount(), equalTo(1L)); Filter filter = bucket.getAggregations().get("filter"); assertThat(filter, notNullValue()); assertThat(filter.getDocCount(), equalTo(0L)); Sum sum = filter.getAggregations().get("sum"); assertThat(sum, notNullValue()); assertThat(sum.value(), equalTo(0.0)); } }