Class: Grumblr::Config

Inherits:
Object
  • Object
show all
Defined in:
lib/grumblr/config.rb

Instance Method Summary collapse

Constructor Details

#initializeConfig

Returns a new instance of Config.



8
9
10
# File 'lib/grumblr/config.rb', line 8

def initialize
  prepare_directory
end

Instance Method Details

#confObject



12
13
14
15
16
# File 'lib/grumblr/config.rb', line 12

def conf
  @@conf ||= YAML::load(open(config_file))
rescue
  @@conf ||= {}
end

#config_directoryObject



39
40
41
# File 'lib/grumblr/config.rb', line 39

def config_directory
  @config_directory ||= File.expand_path(File.join('~', '.config', 'grumblr'))
end

#config_fileObject



35
36
37
# File 'lib/grumblr/config.rb', line 35

def config_file
  File.join(config_directory, 'settings.yml')
end

#destroyObject



30
31
32
33
# File 'lib/grumblr/config.rb', line 30

def destroy
  @@conf = {}
  $app.quit
end

#get(name) ⇒ Object



18
19
20
# File 'lib/grumblr/config.rb', line 18

def get(name)
  conf[name.to_s]
end

#prepare_directoryObject



43
44
45
46
# File 'lib/grumblr/config.rb', line 43

def prepare_directory
  return if File.directory?(config_directory)
  FileUtils.mkdir_p(config_directory)
end

#saveObject



26
27
28
# File 'lib/grumblr/config.rb', line 26

def save
  File.open(config_file, 'w') { |f| f.write conf.to_yaml }
end

#set(name, value) ⇒ Object



22
23
24
# File 'lib/grumblr/config.rb', line 22

def set(name, value)
  conf[name.to_s] = value
end