class Elastic::Nodes::Agg::Terms

Attributes

field[RW]
size[RW]

Public Class Methods

build(_name, _field, size: nil) click to toggle source
Calls superclass method Elastic::Nodes::BaseAgg::build
# File lib/elastic/nodes/agg/terms.rb, line 6
def self.build(_name, _field, size: nil)
  super(_name).tap do |node|
    node.field = _field
    node.size = size
  end
end

Public Instance Methods

clone() click to toggle source
# File lib/elastic/nodes/agg/terms.rb, line 15
def clone
  prepare_clone(super)
end
render(_options = {}) click to toggle source
# File lib/elastic/nodes/agg/terms.rb, line 23
def render(_options = {})
  hash = { 'field' => @field.to_s }
  hash['size'] = @size if @size

  render_aggs({ 'terms' => hash }, _options)
end
simplify() click to toggle source
# File lib/elastic/nodes/agg/terms.rb, line 19
def simplify
  prepare_clone(super)
end

Private Instance Methods

prepare_clone(_clone) click to toggle source
# File lib/elastic/nodes/agg/terms.rb, line 32
def prepare_clone(_clone)
  _clone.field = @field
  _clone.size = @size
  _clone
end