Class: Omniconf::Adapter::Yaml

Inherits:
Base
  • Object
show all
Includes:
ReadOnly
Defined in:
lib/omniconf/adapters/yaml.rb

Instance Attribute Summary

Attributes inherited from Base

#configuration, #source_id

Instance Method Summary collapse

Methods included from ReadOnly

#set_value

Methods inherited from Base

#reload_configuration!

Constructor Details

#initialize(id, params) ⇒ Yaml

Returns a new instance of Yaml.



9
10
11
12
13
14
15
16
17
# File 'lib/omniconf/adapters/yaml.rb', line 9

def initialize id, params
  @source_id = id
  defaults = {}
  defaults.merge!({
    :environment => Rails.env,
    :file => File.join(Rails.root, 'config/settings.yml')
  }) if defined? Rails
  @params = defaults.merge params
end

Instance Method Details

#load_configuration!Object



19
20
21
22
23
24
# File 'lib/omniconf/adapters/yaml.rb', line 19

def load_configuration!
  yaml = ::YAML.load_file(@params[:file])[@params[:environment]]
  @configuration = Omniconf::Configuration.new(self, yaml)

  Omniconf.merge_configuration! @source_id
end