Module: ConfigDefault
Defined Under Namespace
Modules: RailsApplicationConfigurationPatch, RailsApplicationPatch, RailsPatch
Classes: Struct
Constant Summary
collapse
- VERSION =
"0.3.3"
Instance Attribute Summary collapse
Instance Method Summary
collapse
Instance Attribute Details
#config ⇒ Object
Returns the value of attribute config.
13
14
15
|
# File 'lib/config_default.rb', line 13
def config
@config
end
|
Instance Method Details
#apply_rails_patch! ⇒ Object
17
18
19
|
# File 'lib/config_default.rb', line 17
def configure
yield(config) if block_given?
end
|
#load(name, key: Rails.env, symbolize_keys: false, deep_symbolize_keys: false) ⇒ Object
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
# File 'lib/config_default.rb', line 25
def load(name, key: Rails.env, symbolize_keys: false, deep_symbolize_keys: false)
default_config = load_file("#{name}.#{config.postfix}")
config = load_file(name)
data = default_config.deep_merge(config)
data = data[key] if key
return {} if data.nil?
if deep_symbolize_keys
data.deep_symbolize_keys
elsif symbolize_keys
data.symbolize_keys
else
data
end
end
|
#load_file(name) ⇒ Object
43
44
45
46
47
48
|
# File 'lib/config_default.rb', line 43
def load_file(name)
file_name = File.join(config.config_path, "#{name}.yml")
ActiveSupport::ConfigurationFile.parse(file_name)
rescue
{}
end
|
#load_struct(name, key: Rails.env, recursive: false, allow_nil: false) ⇒ Object
50
51
52
53
|
# File 'lib/config_default.rb', line 50
def load_struct(name, key: Rails.env, recursive: false, allow_nil: false)
attributes = load(name, key: key)
ConfigDefault::Struct.new(attributes, recursive: recursive, allow_nil: allow_nil)
end
|