class Gtk2PasswordApp::Accounts
Attributes
data[R]
Public Class Methods
new(dumpfile, password=nil)
click to toggle source
# File lib/gtk2passwordapp/accounts.rb, line 9 def initialize(dumpfile, password=nil) reset(password) if password # sets @yzb @dumpfile = dumpfile @data = {} end
Public Instance Methods
add(account)
click to toggle source
# File lib/gtk2passwordapp/accounts.rb, line 48 def add(account) raise CONFIG[:AccountHit] if @data.has_key?(account) Account.new(account, @data) end
delete(account)
click to toggle source
# File lib/gtk2passwordapp/accounts.rb, line 38 def delete(account) raise CONFIG[:AccountMiss] unless @data.has_key?(account) @data.delete(account) end
exist?()
click to toggle source
# File lib/gtk2passwordapp/accounts.rb, line 15 def exist? File.exist? @dumpfile end
get(account)
click to toggle source
# File lib/gtk2passwordapp/accounts.rb, line 43 def get(account) raise CONFIG[:AccountMiss] unless @data.has_key?(account) Account.new(account, @data) end
load(password=nil)
click to toggle source
will raise an exception on failed decryption
# File lib/gtk2passwordapp/accounts.rb, line 20 def load(password=nil) reset(password) if password data = @yzb.load(@dumpfile) # Sanity check... load will raise CipherError on decription error. raise CONFIG[:CipherError] unless data.class == Hash @data = data end
names()
click to toggle source
# File lib/gtk2passwordapp/accounts.rb, line 34 def names @data.keys end
reset(password)
click to toggle source
# File lib/gtk2passwordapp/accounts.rb, line 4 def reset(password) @yzb = YamlZlibBlowfish.new(password) end
save(password=nil)
click to toggle source
# File lib/gtk2passwordapp/accounts.rb, line 28 def save(password=nil) reset(password) if password @yzb.dump(@dumpfile, @data) File.chmod(0600, @dumpfile) end