class OpenSearch::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

Public Instance Methods

to_hash(_options={}) click to toggle source
Calls superclass method
# File lib/opensearch/dsl/search/aggregations/composite.rb, line 57
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