class Esse::IndexMapping

Constants

FILENAMES

Public Class Methods

new(body: {}, paths: [], filenames: FILENAMES) click to toggle source
# File lib/esse/index_mapping.rb, line 7
def initialize(body: {}, paths: [], filenames: FILENAMES)
  @paths = Array(paths)
  @filenames = Array(filenames)
  @mappings = body
end

Public Instance Methods

as_json() click to toggle source

This method will be overwrited when passing a block during the mapping defination

# File lib/esse/index_mapping.rb, line 15
def as_json
  return @mappings unless @mappings.empty?

  from_template || @mappings
end
body() click to toggle source
# File lib/esse/index_mapping.rb, line 21
def body
  as_json
end
empty?() click to toggle source
# File lib/esse/index_mapping.rb, line 25
def empty?
  body.empty?
end

Protected Instance Methods

from_template() click to toggle source
# File lib/esse/index_mapping.rb, line 31
def from_template
  return if @paths.empty?

  loader = Esse::TemplateLoader.new(@paths)
  loader.read(*@filenames)
end