Class: Ppds::Config

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

Constant Summary collapse

@@gconf =
GConf::Client.default

Instance Method Summary collapse

Constructor Details

#initialize(app) ⇒ Config

Returns a new instance of Config.



11
12
13
14
# File 'lib/ppds/config.rb', line 11

def initialize(app)
  @root = '/apps/%s' % app
  gconf.add_dir(@root)
end

Instance Method Details

#allObject



24
25
26
# File 'lib/ppds/config.rb', line 24

def all
  gconf.all_entries(@root)
end

#destroyObject



40
41
42
43
44
45
# File 'lib/ppds/config.rb', line 40

def destroy
  for one in all
    gconf.unset(one.key)
  end
  save
end

#gconfObject



7
8
9
# File 'lib/ppds/config.rb', line 7

def gconf
  @@gconf
end

#get(name) ⇒ Object



28
29
30
# File 'lib/ppds/config.rb', line 28

def get(name)
  gconf[key_from_name(name)]
end

#key_from_name(name) ⇒ Object



20
21
22
# File 'lib/ppds/config.rb', line 20

def key_from_name(name)
  [ @root, name ].join("/")
end

#name_from_key(key) ⇒ Object



16
17
18
# File 'lib/ppds/config.rb', line 16

def name_from_key(key)
  key.split('/').last
end

#saveObject



36
37
38
# File 'lib/ppds/config.rb', line 36

def save
  gconf.suggest_sync
end

#set(name, value) ⇒ Object



32
33
34
# File 'lib/ppds/config.rb', line 32

def set(name, value)
  gconf[key_from_name(name)] = value
end