Sha256: c4382ef9c6f6d7b1ec18df3c374f8353d4a0550719ea9f85aa82ef1b0a5d1bb3

Contents?: true

Size: 578 Bytes

Versions: 8

Compression:

Stored size: 578 Bytes

Contents

require 'active_support/core_ext/hash/indifferent_access'

module ActiveRecord::Turntable
  class Config
    include Singleton

    def self.[](key)
      instance[key]
    end

    def [](key)
      self.class.load!(ActiveRecord::Base.turntable_config_file) unless @config
      @config[key]
    end

    def self.load!(config_file, env = (defined?(Rails) ? Rails.env : 'development'))
      instance.load!(config_file, env)
    end

    def load!(config_file, env)
      @config = YAML.load(ERB.new(IO.read(config_file)).result).with_indifferent_access[env]
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
activerecord-turntable-2.0.6 lib/active_record/turntable/config.rb
activerecord-turntable-2.0.5 lib/active_record/turntable/config.rb
activerecord-turntable-2.0.4 lib/active_record/turntable/config.rb
activerecord-turntable-2.0.3 lib/active_record/turntable/config.rb
activerecord-turntable-2.0.2 lib/active_record/turntable/config.rb
activerecord-turntable-2.0.1 lib/active_record/turntable/config.rb
activerecord-turntable-2.0.0 lib/active_record/turntable/config.rb
activerecord-turntable-2.0.0.rc1 lib/active_record/turntable/config.rb