Sha256: 84c0006d2a8a5bece92d7fa5f65893444dbb3995761a0117e2327e9ff1743071

Contents?: true

Size: 521 Bytes

Versions: 1

Compression:

Stored size: 521 Bytes

Contents

require 'singleton'
require 'yaml'

module Khronos
  class Config
    include Singleton
    attr_reader :settings

    def load!(file_path, env='development')
      @settings = YAML.load_file(file_path)[env]
      ENV['KHRONOS_STORAGE'] = @settings['storage']
    end

    def get(key)
      @settings[key.to_s]
    end

    def set(key, value)
      @settings[key.to_s] = value
    end

    def method_missing(name, *args, &block)
      self.get(name.to_s)
    end
  end
end

Khronos::Config.instance.load('config.yml')

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
khronos-0.0.0 lib/khronos/config.rb