Method: Sip::Config#initialize

Defined in:
lib/sip/config.rb

#initialize(initial_values) ⇒ Config

Returns a new instance of Config.



24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/sip/config.rb', line 24

def initialize(initial_values)
  # temp_keys are ones we'll delete before saving to a file
  @temp_keys = []
  merge! initial_values

  # initialize defaults, including setting dbname and tablename ease of use keys
  self['databases'].each { |dbname, dbconf|
    self['databases'][dbname] = DBCONF_DEFAULT.merge(dbconf)
    self['databases'][dbname]['dbname'] = dbname
    self['databases'][dbname]['tables'].each { |tablename, tableconf|
      tableconf = {'hive_table_name' => "#{dbname}_#{tablename}"}.merge(TABLECONF_DEFAULT).merge(tableconf)
      self['databases'][dbname]['tables'][tablename] = tableconf
      self['databases'][dbname]['tables'][tablename]['tablename'] = tablename
    }
  }
end