class ComplexConfig::Proxy
Public Class Methods
new(env = nil)
click to toggle source
# File lib/complex_config/proxy.rb, line 3 def initialize(env = nil) @env = env end
Public Instance Methods
inspect()
click to toggle source
# File lib/complex_config/proxy.rb, line 11 def inspect "#<#{to_s}>" end
method_missing(name, *args)
click to toggle source
# File lib/complex_config/proxy.rb, line 20 def method_missing(name, *args) if name =~ /\?\z/ method_name, name = name, $` exist = ::ComplexConfig::Provider.exist?(name) (class << self; self; end).class_eval do define_method(method_name) do |env = nil| if exist __send__(name, *args) else nil end end end __send__(method_name, *args) else config = ::ComplexConfig::Provider[name] (class << self; self; end).class_eval do define_method(name) do |env = nil| if env ||= @env config[env] || ::ComplexConfig::Settings.new else config end end end __send__(name, *args) end end
reload()
click to toggle source
# File lib/complex_config/proxy.rb, line 15 def reload ::ComplexConfig::Provider.flush_cache self end
to_s()
click to toggle source
# File lib/complex_config/proxy.rb, line 7 def to_s 'ComplexConfig::Proxy' end