Class: EzConfig::ConfigLoader
- Inherits:
-
Object
- Object
- EzConfig::ConfigLoader
- Defined in:
- lib/prefab/config_loader.rb
Instance Method Summary collapse
- #calc_config ⇒ Object
-
#initialize(logger) ⇒ ConfigLoader
constructor
A new instance of ConfigLoader.
- #set(delta) ⇒ Object
Constructor Details
#initialize(logger) ⇒ ConfigLoader
Returns a new instance of ConfigLoader.
4 5 6 7 8 9 10 11 |
# File 'lib/prefab/config_loader.rb', line 4 def initialize(logger) @logger = logger load_ez_config load_project_config load_local_overrides @api_config = Concurrent::Map.new @immutable_config = @ez_config.merge(@project_config) end |
Instance Method Details
#calc_config ⇒ Object
13 14 15 16 17 18 19 20 |
# File 'lib/prefab/config_loader.rb', line 13 def calc_config rtn = @immutable_config.clone @api_config.each_key do |k| rtn[k] = @api_config[k] end rtn = rtn.merge(@local_overrides) rtn end |
#set(delta) ⇒ Object
22 23 24 |
# File 'lib/prefab/config_loader.rb', line 22 def set(delta) @api_config[delta.key] = delta.value end |