Module: Billy::Settings

Included in:
Brain
Defined in:
lib/billygoat/settings.rb

Overview

Storage for all goat specific settings

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#settingsObject



23
24
25
26
27
# File 'lib/billygoat/settings.rb', line 23

def settings
  return @settings if @settings
  save_settings(default_settings) unless File.exists?(settings_path)
  @settings = YAML.load_file(settings_path)
end

Instance Method Details

#default_settingsObject



17
18
19
20
21
# File 'lib/billygoat/settings.rb', line 17

def default_settings
  {
    version: VERSION
  }
end

#save_settings(settings = @settings) ⇒ Object



29
30
31
32
# File 'lib/billygoat/settings.rb', line 29

def save_settings(settings = @settings)
  create_config_path
  save_yaml(settings_path, settings)
end

#settings_fileObject



8
9
10
# File 'lib/billygoat/settings.rb', line 8

def settings_file
  @settings ||= "settings.yml"
end

#settings_pathObject



13
14
15
# File 'lib/billygoat/settings.rb', line 13

def settings_path
  "#{config_path}/#{settings_file}"
end