Fixed get account c-structure on Protocol class.
[python-purple] / protocol.pyx
1 #
2 #  Copyright (c) 2008 INdT - Instituto Nokia de Tecnologia
3 #
4 #  This file is part of python-purple.
5 #
6 #  python-purple is free software: you can redistribute it and/or modify
7 #  it under the terms of the GNU General Public License as published by
8 #  the Free Software Foundation, either version 3 of the License, or
9 #  (at your option) any later version.
10 #
11 #  python-purple is distributed in the hope that it will be useful,
12 #  but WITHOUT ANY WARRANTY; without even the implied warranty of
13 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 #  GNU General Public License for more details.
15 #
16 #  You should have received a copy of the GNU General Public License
17 #  along with this program.  If not, see <http://www.gnu.org/licenses/>.
18 #
19
20 cimport purple
21
22 cdef class Protocol:
23     """
24     Protocol class
25     @param protocol_id
26     """
27
28     def __init__(self, account, protocol_id):
29         self.__account = account
30         self.__protocol_id = protocol_id
31
32     cdef account.PurpleAccount *__account_get_structure(self):
33         return account.purple_accounts_find(self.__account.username, \
34                 self.__account.protocol_id)
35
36     def __get_protocol_id(self):
37         return self.__protocol_id.protocol_id
38     protocol_id = property(__get_protocol_id)
39
40     def _set_protocol_id(self, protocol_id):
41         account.purple_account_set_protocol_id( \
42                 self.__account_get_structure(), protocol_id)