Sha256: 44521837927e237731d83cb00a1eabce9328129ecd087a141a02ca3ef4294e77
Contents?: true
Size: 887 Bytes
Versions: 4
Compression:
Stored size: 887 Bytes
Contents
# frozen_string_literal: true module Esse # https://www.elastic.co/guide/en/elasticsearch/reference/1.7/indices.html class IndexSetting def initialize(body: {}, paths: [], globals: {}) @globals = globals || {} @paths = Array(paths) @settings = body end # This method will be overwrited when passing a block during the settings # defination on index class. # # Example: # class UserIndex < Esse::Index # settings do # # do something to load settings.. # end # end # def as_json return @settings unless @settings.empty? from_template || @settings end def body @globals.merge(as_json) end protected def from_template return if @paths.empty? loader = Esse::TemplateLoader.new(@paths) loader.read('{setting,settings}') end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
esse-0.0.5 | lib/esse/index_setting.rb |
esse-0.0.4 | lib/esse/index_setting.rb |
esse-0.0.3 | lib/esse/index_setting.rb |
esse-0.0.2 | lib/esse/index_setting.rb |