Adding the ignore file
[gc-dialer] / src / backends / null_backend.py
1 #!/usr/bin/python
2
3 """
4 DialCentral - Front end for Google's Grand Central service.
5 Copyright (C) 2008  Eric Warnke ericew AT gmail DOT com
6
7 This library is free software; you can redistribute it and/or
8 modify it under the terms of the GNU Lesser General Public
9 License as published by the Free Software Foundation; either
10 version 2.1 of the License, or (at your option) any later version.
11
12 This library is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15 Lesser General Public License for more details.
16
17 You should have received a copy of the GNU Lesser General Public
18 License along with this library; if not, write to the Free Software
19 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
20 """
21
22
23 class NullDialer(object):
24
25         def __init__(self):
26                 pass
27
28         def is_quick_login_possible(self):
29                 return False
30
31         def is_authed(self, force = False):
32                 return False
33
34         def login(self, username, password):
35                 return self.is_authed()
36
37         def logout(self):
38                 self.clear_caches()
39
40         def call(self, number):
41                 return True
42
43         def cancel(self, outgoingNumber=None):
44                 pass
45
46         def send_sms(self, number, message):
47                 raise NotImplementedError("SMS Is Not Supported")
48
49         def search(self, query):
50                 return []
51
52         def get_feed(self, feed):
53                 return {}
54
55         def download(self, messageId, adir):
56                 return ""
57
58         def clear_caches(self):
59                 pass
60
61         def is_valid_syntax(self, number):
62                 """
63                 @returns If This number be called ( syntax validation only )
64                 """
65                 return False
66
67         def get_account_number(self):
68                 """
69                 @returns The grand central phone number
70                 """
71                 return ""
72
73         def get_callback_numbers(self):
74                 return {}
75
76         def set_callback_number(self, callbacknumber):
77                 return True
78
79         def get_callback_number(self):
80                 return ""
81
82         def get_recent(self):
83                 return ()
84
85         def get_addressbooks(self):
86                 return ()
87
88         def open_addressbook(self, bookId):
89                 return self
90
91         @staticmethod
92         def contact_source_short_name(contactId):
93                 return "ERROR"
94
95         @staticmethod
96         def factory_name():
97                 return "ERROR"
98
99         def get_contacts(self):
100                 return ()
101
102         def get_contact_details(self, contactId):
103                 return ()
104
105         def get_messages(self):
106                 return ()
107
108
109 class NullAddressBook(object):
110         """
111         Minimal example of both an addressbook factory and an addressbook
112         """
113
114         def clear_caches(self):
115                 pass
116
117         def get_addressbooks(self):
118                 """
119                 @returns Iterable of (Address Book Factory, Book Id, Book Name)
120                 """
121                 yield self, "", "None"
122
123         def open_addressbook(self, bookId):
124                 return self
125
126         @staticmethod
127         def contact_source_short_name(contactId):
128                 return ""
129
130         @staticmethod
131         def factory_name():
132                 return ""
133
134         @staticmethod
135         def get_contacts():
136                 """
137                 @returns Iterable of (contact id, contact name)
138                 """
139                 return []
140
141         @staticmethod
142         def get_contact_details(contactId):
143                 """
144                 @returns Iterable of (Phone Type, Phone Number)
145                 """
146                 return []