Sha256: cc7868c0b7b4405e02964105d29e0cec697ea4451f3717cd0da816ea1b44213d
Contents?: true
Size: 953 Bytes
Versions: 14
Compression:
Stored size: 953 Bytes
Contents
module EY class EYRC attr_reader :path DEFAULT_PATH = "~/.eyrc" def self.load new(ENV['EYRC'] || DEFAULT_PATH) end def initialize(path) self.path = path end def exist? path.exist? end def delete_api_token delete('api_token') end def api_token self['api_token'] end def api_token=(token) self['api_token'] = token end private def path=(p) @path = Pathname.new(p).expand_path end def [](key) read_data[key.to_s] end def []=(key,val) new_data = read_data.merge(key.to_s => val) write_data new_data val end def delete(key) data = read_data.dup res = data.delete(key) write_data data res end def read_data exist? && YAML.load(path.read) || {} end def write_data(new_data) path.open("w") {|f| YAML.dump(new_data, f) } end end end
Version data entries
14 entries across 14 versions & 1 rubygems