| OLD | NEW |
| (Empty) |
| 1 # -*- Python -*- | |
| 2 # | |
| 3 # Copyright (c) 2001-2004 Twisted Matrix Laboratories. | |
| 4 # See LICENSE for details. | |
| 5 | |
| 6 # | |
| 7 | |
| 8 | |
| 9 class AccountManager: | |
| 10 """I am responsible for managing a user's accounts. | |
| 11 | |
| 12 That is, remembering what accounts are available, their settings, | |
| 13 adding and removal of accounts, etc. | |
| 14 | |
| 15 @ivar accounts: A collection of available accounts. | |
| 16 @type accounts: mapping of strings to L{Account<interfaces.IAccount>}s. | |
| 17 """ | |
| 18 def __init__(self): | |
| 19 self.accounts = {} | |
| 20 | |
| 21 def getSnapShot(self): | |
| 22 """A snapshot of all the accounts and their status. | |
| 23 | |
| 24 @returns: A list of tuples, each of the form | |
| 25 (string:accountName, boolean:isOnline, | |
| 26 boolean:autoLogin, string:gatewayType) | |
| 27 """ | |
| 28 data = [] | |
| 29 for account in self.accounts.values(): | |
| 30 data.append((account.accountName, account.isOnline(), | |
| 31 account.autoLogin, account.gatewayType)) | |
| 32 return data | |
| 33 | |
| 34 def isEmpty(self): | |
| 35 return len(self.accounts) == 0 | |
| 36 | |
| 37 def getConnectionInfo(self): | |
| 38 connectioninfo = [] | |
| 39 for account in self.accounts.values(): | |
| 40 connectioninfo.append(account.isOnline()) | |
| 41 return connectioninfo | |
| 42 | |
| 43 def addAccount(self, account): | |
| 44 self.accounts[account.accountName] = account | |
| 45 | |
| 46 def delAccount(self, accountName): | |
| 47 del self.accounts[accountName] | |
| 48 | |
| 49 def connect(self, accountName, chatui): | |
| 50 """ | |
| 51 @returntype: Deferred L{interfaces.IClient} | |
| 52 """ | |
| 53 return self.accounts[accountName].logOn(chatui) | |
| 54 | |
| 55 def disconnect(self, accountName): | |
| 56 pass | |
| 57 #self.accounts[accountName].logOff() - not yet implemented | |
| 58 | |
| 59 def quit(self): | |
| 60 pass | |
| 61 #for account in self.accounts.values(): | |
| 62 # account.logOff() - not yet implemented | |
| OLD | NEW |