class Aquatone::KeyStore
Constants
- KEY_STORE_FILE_LOCATION
Public Class Methods
get(name)
click to toggle source
# File lib/aquatone/key_store.rb, line 10 def self.get(name) keys[name] end
key?(name)
click to toggle source
# File lib/aquatone/key_store.rb, line 24 def self.key?(name) keys.key?(name) end
keys()
click to toggle source
# File lib/aquatone/key_store.rb, line 20 def self.keys @keys ||= read_key_store_file end
reset!()
click to toggle source
# File lib/aquatone/key_store.rb, line 28 def self.reset! @keys = nil end
set(name, value)
click to toggle source
# File lib/aquatone/key_store.rb, line 14 def self.set(name, value) k = keys k[name] = value write_key_store_file(keys) end
Private Class Methods
deserialize(keys)
click to toggle source
# File lib/aquatone/key_store.rb, line 66 def self.deserialize(keys) YAML.parse(keys).to_ruby rescue Psych::SyntaxError fail KeyStoreFileCorrupt, "Key store file contains invalid YAML" end
key_store_exists?()
click to toggle source
# File lib/aquatone/key_store.rb, line 58 def self.key_store_exists? File.exists?(KEY_STORE_FILE_LOCATION) end
key_store_readable?()
click to toggle source
# File lib/aquatone/key_store.rb, line 50 def self.key_store_readable? File.readable?(KEY_STORE_FILE_LOCATION) end
key_store_writable?()
click to toggle source
# File lib/aquatone/key_store.rb, line 54 def self.key_store_writable? File.writable?(KEY_STORE_FILE_LOCATION) end
read_key_store_file()
click to toggle source
# File lib/aquatone/key_store.rb, line 34 def self.read_key_store_file return {} unless key_store_exists? fail KeyStoreFileNotReadable, "Key store file is not readable" unless key_store_readable? deserialize(File.read(KEY_STORE_FILE_LOCATION)) end
serialize(keys)
click to toggle source
# File lib/aquatone/key_store.rb, line 62 def self.serialize(keys) YAML.dump(keys) end
write_key_store_file(keys)
click to toggle source
# File lib/aquatone/key_store.rb, line 40 def self.write_key_store_file(keys) if key_store_exists? fail KeyStoreFileNotWritable, "Key store file is not writable" unless key_store_writable? end File.open(KEY_STORE_FILE_LOCATION, "w") do |file| file.write(serialize(keys)) end @keys = nil end