Class: Keg::Configuration
- Inherits:
-
Object
- Object
- Keg::Configuration
- Defined in:
- lib/keg/configuration.rb
Instance Method Summary collapse
- #config_path ⇒ Object
- #database_does_set? ⇒ Boolean
-
#initialize(root) ⇒ Configuration
constructor
A new instance of Configuration.
- #load ⇒ Object
- #save(name) ⇒ Object
Constructor Details
#initialize(root) ⇒ Configuration
Returns a new instance of Configuration.
5 6 7 |
# File 'lib/keg/configuration.rb', line 5 def initialize(root) @root = root end |
Instance Method Details
#config_path ⇒ Object
27 28 29 |
# File 'lib/keg/configuration.rb', line 27 def config_path File.join(@root, '.keg', 'config.yml') end |
#database_does_set? ⇒ Boolean
31 32 33 34 35 36 |
# File 'lib/keg/configuration.rb', line 31 def database_does_set? return false unless @config return false if @config['database'].nil? return false if @config['database'].empty? return true end |
#load ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/keg/configuration.rb', line 14 def load begin @config = YAML.load_file(config_path) rescue Errno::ENOENT save '' end unless database_does_set? raise 'Error: Database does not set. You should set a database.' end @config['database'] end |
#save(name) ⇒ Object
9 10 11 12 |
# File 'lib/keg/configuration.rb', line 9 def save(name) config = { 'database' => name } File.write(config_path, config.to_yaml) end |