class BasicDiskSettings
Public Class Methods
new(&block)
click to toggle source
# File lib/rsettings/adapters/basic_disk_settings.rb, line 6 def initialize(&block) @file = ".rsettings" _ensure instance_eval &block if block_given? end
Public Instance Methods
clear()
click to toggle source
# File lib/rsettings/adapters/basic_disk_settings.rb, line 12 def clear rm file if exists? end
file()
click to toggle source
# File lib/rsettings/adapters/basic_disk_settings.rb, line 30 def file; @file; end
get(name)
click to toggle source
# File lib/rsettings/adapters/basic_disk_settings.rb, line 26 def get(name) Setting.new(settings[name.value]).tap{|result| notify_missing name if result.missing?} end
set(opts ={})
click to toggle source
# File lib/rsettings/adapters/basic_disk_settings.rb, line 16 def set(opts ={}) opts = all.merge opts File.open file, "w+" do |io| io.puts opts.to_yaml end notify :set, @settings end
Private Instance Methods
_ensure()
click to toggle source
# File lib/rsettings/adapters/basic_disk_settings.rb, line 48 def _ensure touch file end
all()
click to toggle source
# File lib/rsettings/adapters/basic_disk_settings.rb, line 36 def all return {} unless exists? YAML.load(IO.read(file)) || {} end
exists?()
click to toggle source
# File lib/rsettings/adapters/basic_disk_settings.rb, line 46 def exists?; File.exists? file; end
notify_missing(name)
click to toggle source
# File lib/rsettings/adapters/basic_disk_settings.rb, line 42 def notify_missing(name) notify :missing, name end
settings()
click to toggle source
# File lib/rsettings/adapters/basic_disk_settings.rb, line 34 def settings; @settings ||= all; end