Example usage for org.apache.lucene.index Terms.Bucket getDocCount

List of usage examples for org.apache.lucene.index Terms.Bucket getDocCount

Introduction

In this page you can find the example usage for org.apache.lucene.index Terms.Bucket getDocCount.

Prototype

public abstract int getDocCount() throws IOException;

Source Link

Document

Returns the number of documents that have at least one term for this field.

Usage

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));

    }
}