class Elasticsearch::DSL::Search::Aggregations::Composite

A multi-bucket aggregation that creates composite buckets from different sources.

@example

search do
  aggregation :things do
    composite do
      size 2000
      sources [
        { thing1: { terms: { field: 'thing1.field1' } } },
        { thing2: { terms: { field: 'thing2.field2' } } }
      ]
      after after_key
    end
  end
end

@see www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-composite-aggregation.html

Public Instance Methods

to_hash(_options={}) click to toggle source
Calls superclass method
# File lib/elasticsearch/dsl/search/aggregations/composite.rb, line 49
def to_hash(_options={})
  super
  # remove :after if no value is given
  @hash[name.to_sym].delete(:after) if @hash[name.to_sym].is_a?(Hash) && @hash[name.to_sym][:after].nil?

  @hash
end