class EsExperiment::Documents

Attributes

factories[RW]

Public Instance Methods

get(key) click to toggle source
# File lib/es_experiment/documents.rb, line 6
def get(key)
  factories[key.to_sym]
end
load(config) click to toggle source
# File lib/es_experiment/documents.rb, line 14
def load(config)
  self.factories = {}
  doc_path = config.documents_path
  Dir.foreach(doc_path) do |file|
    next unless valid_file?(config.schema_path, file)

    load_doc(doc_path, file)
  end
  self
end
set(key, value) click to toggle source
# File lib/es_experiment/documents.rb, line 10
def set(key, value)
  factories[key.to_sym] = value
end

Private Instance Methods

load_doc(doc_path, file) click to toggle source
# File lib/es_experiment/documents.rb, line 34
def load_doc(doc_path, file)
  name = File.basename(file, '.json')
  data = Oj.load(File.read(File.join(Dir.pwd, doc_path, file)))
  set(name, data)
end
valid_file?(schema_path, file) click to toggle source
# File lib/es_experiment/documents.rb, line 29
def valid_file?(schema_path, file)
  schema = File.basename(schema_path)
  schema != file && file.include?('.json')
end