class GrosCalin::Config

Public Class Methods

new(config='./config.yml') click to toggle source
# File lib/gros_calin/config.rb, line 76
def initialize(config='./config.yml')
  yaml = load(config)
  raise "Invalid YAML file #{config}" unless yaml
  yaml.each do |id, ds|
    datasource = Datasource.new(id, driver(ds['driver']), ds['options'])
    (ds['hugs'] || []).each do |id, query|
      datasource.hugs << Hug.new( id, datasource, query )
    end
    datasources << datasource
  end
end

Public Instance Methods

datasources() click to toggle source
# File lib/gros_calin/config.rb, line 88
def datasources
  @datasources ||= Collection.new
end

Private Instance Methods

driver(id) click to toggle source
# File lib/gros_calin/config.rb, line 97
def driver(id)
  GrosCalin.drivers[id]
end
load(config) click to toggle source
# File lib/gros_calin/config.rb, line 93
def load(config)
  YAML.load(File.read(File.expand_path(config)))
end