Module: ConfigFiles::ClassMethods
- Includes:
- Meta
- Defined in:
- lib/config_files.rb
Instance Attribute Summary collapse
-
#directories ⇒ Object
Returns the value of attribute directories.
Instance Method Summary collapse
- #any_extension ⇒ Object
- #build_combined(file) ⇒ Object
- #config_directories(*arr) ⇒ Object
- #config_key ⇒ Object
- #dynamic_config_files(*arr) ⇒ Object (also: #config_files)
- #merged_hash(file) ⇒ Object
- #static_config_files(*arr) ⇒ Object
Methods included from Meta
Instance Attribute Details
#directories ⇒ Object
Returns the value of attribute directories.
22 23 24 |
# File 'lib/config_files.rb', line 22 def directories @directories end |
Instance Method Details
#any_extension ⇒ Object
24 25 26 |
# File 'lib/config_files.rb', line 24 def any_extension '*' end |
#build_combined(file) ⇒ Object
46 47 48 |
# File 'lib/config_files.rb', line 46 def build_combined(file) merged_hash(file) end |
#config_directories(*arr) ⇒ Object
32 33 34 35 36 37 38 39 40 |
# File 'lib/config_files.rb', line 32 def config_directories(*arr) self.directories||={ :etc => ['config', 'etc', '/etc'] } arr.each do |directory_list| directory_list.each do |key, value| self.directories[key]=value.map { |dir| ::File.(dir) } ("#{key}_dir") { @directories[key] } end end end |
#config_key ⇒ Object
28 29 30 |
# File 'lib/config_files.rb', line 28 def config_key :etc end |
#dynamic_config_files(*arr) ⇒ Object Also known as: config_files
57 58 59 60 61 |
# File 'lib/config_files.rb', line 57 def dynamic_config_files(*arr) arr.each do |file| (file) { build_combined(file) } end end |
#merged_hash(file) ⇒ Object
42 43 44 |
# File 'lib/config_files.rb', line 42 def merged_hash(file) config_files(file).inject({}) { |master, file| master.deep_merge(FileFactory.(file)) } end |
#static_config_files(*arr) ⇒ Object
50 51 52 53 54 55 |
# File 'lib/config_files.rb', line 50 def static_config_files(*arr) arr.each do |file| content=build_combined(file) (file) { content } end end |