class AppConfig
Public Class Methods
[](key)
click to toggle source
# File lib/sm_app_config/app_config.rb, line 5 def self.[] key result = ENV[key.upcase] return YAML.load(result) unless result.nil? result = config[key] return result unless result.nil? raise ArgumentError.new("No ENV['#{key.upcase}'] or AppConfig['#{key}'] setting found") end
reload!()
click to toggle source
# File lib/sm_app_config/app_config.rb, line 15 def self.reload! @config = nil end
Private Class Methods
config()
click to toggle source
# File lib/sm_app_config/app_config.rb, line 21 def self.config @config ||= begin raw_config = File.read(config_file) loaded = YAML.load(raw_config) if defined?(Rails) loaded[Rails.env] or raise "No configuration found for environment #{Rails.env}" else loaded end rescue SystemCallError raise "No configuration file found at #{config_file}" end end
config_file()
click to toggle source
# File lib/sm_app_config/app_config.rb, line 36 def self.config_file SmAppConfig.config_file end