Module: ElasticRecord::Index::Settings

Included in:
ElasticRecord::Index
Defined in:
lib/elastic_record/index/settings.rb

Instance Method Summary collapse

Instance Method Details

#analysis_bodyObject



25
26
27
28
29
# File 'lib/elastic_record/index/settings.rb', line 25

def analysis_body
  doctypes.each_with_object({}) do |doctype, result|
    result.deep_merge!(doctype.analysis)
  end
end

#settingsObject



8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/elastic_record/index/settings.rb', line 8

def settings
  @settings ||=
    begin
      result = {}

      if (analysis = analysis_body).any?
        result['analysis'] = analysis
      end

      result
    end
end

#settings=(mapping) ⇒ Object



4
5
6
# File 'lib/elastic_record/index/settings.rb', line 4

def settings=(mapping)
  settings.deep_merge!(mapping)
end

#update_settings(index_name = alias_name) ⇒ Object



21
22
23
# File 'lib/elastic_record/index/settings.rb', line 21

def update_settings(index_name = alias_name)
  connection.json_put "/#{index_name}/_settings", settings
end