From: Ed Page Date: Thu, 28 Jan 2010 03:43:32 +0000 (-0600) Subject: Hardening against some types of error X-Git-Url: http://git.maemo.org/git/?p=theonering;a=commitdiff_plain;h=b71048b78ae57f1d4f32189f106838188d4a777b Hardening against some types of error --- diff --git a/src/gvoice/addressbook.py b/src/gvoice/addressbook.py index dbb8ed9..8efb26f 100644 --- a/src/gvoice/addressbook.py +++ b/src/gvoice/addressbook.py @@ -47,13 +47,22 @@ class Addressbook(object): return self._numbers.iterkeys() def get_contact_name(self, strippedNumber): + """ + @throws KeyError if contact not in list (so client can choose what to display) + """ return self._numbers[strippedNumber][0] def get_phone_type(self, strippedNumber): - return self._numbers[strippedNumber][1] + try: + return self._numbers[strippedNumber][1] + except KeyError: + return "unknown" def is_blocked(self, strippedNumber): - return self._numbers[strippedNumber][1]["response"] == self._RESPONSE_BLOCKED + try: + return self._numbers[strippedNumber][1]["response"] == self._RESPONSE_BLOCKED + except KeyError: + return False def _populate_contacts(self): if self._numbers: diff --git a/src/handle.py b/src/handle.py index 02e5137..5fc4e98 100644 --- a/src/handle.py +++ b/src/handle.py @@ -52,14 +52,6 @@ class ContactHandle(TheOneRingHandle): def phoneNumber(self): return self._phoneNumber - @property - def contact_name(self): - return self._conn.session.addressbook.get_contact_name(self.phoneNumber) - - @property - def contactDetails(self): - return self._conn.session.addressbook.get_phone_type(self.phoneNumber) - class ListHandle(TheOneRingHandle):