�
Ϫ�f{ � � � G d � d� Z y)c �F � e Zd ZdZd� Zd� Zd� Zd� Zd� Zd� Z d� Z
d � Zd
� Zy)�AccountManagera* I am responsible for managing a user's accounts.
That is, remembering what accounts are available, their settings,
adding and removal of accounts, etc.
@ivar accounts: A collection of available accounts.
@type accounts: mapping of strings to L{Account<interfaces.IAccount>}s.
c � � i | _ y �N��accounts��selfs �>/usr/lib/python3/dist-packages/twisted/words/im/baseaccount.py�__init__zAccountManager.__init__ s � ���
� c �� � g }| j j � D ]C }|j |j |j � |j
|j f� �E |S )z�A snapshot of all the accounts and their status.
@returns: A list of tuples, each of the form
(string:accountName, boolean:isOnline,
boolean:autoLogin, string:gatewayType)
)r �values�append�accountName�isOnline� autoLogin�gatewayType)r �data�accounts r
�getSnapShotzAccountManager.getSnapShot sd � � ���}�}�+�+�-� �G��K�K��'�'��$�$�&��%�%��'�'� �
� � �r c �2 � t | j � dk( S )N� )�lenr r s r
�isEmptyzAccountManager.isEmpty) s � ��4�=�=�!�Q�&�&r c � � g }| j j � D ]! }|j |j � � �# |S r )r r r r )r �connectioninfor s r
�getConnectionInfoz AccountManager.getConnectionInfo, s@ � ����}�}�+�+�-� 6�G��!�!�'�"2�"2�"4�5� 6��r c �6 � || j |j < |