Thats a bit better not having some errno like stuff in there
authorepage <eopage@byu.net>
Sat, 21 Feb 2009 17:40:10 +0000 (17:40 +0000)
committerepage <eopage@byu.net>
Sat, 21 Feb 2009 17:40:10 +0000 (17:40 +0000)
git-svn-id: file:///svnroot/gc-dialer/trunk@197 c39d3808-3fe2-4d86-a59f-b7f623ee9f21

src/gc_backend.py
src/gc_dialer.py

index aff8238..50f2ece 100644 (file)
@@ -66,8 +66,6 @@ class GCDialer(object):
 
        def __init__(self, cookieFile = None):
                # Important items in this function are the setup of the browser emulation and cookie file
-               self._msg = ""
-
                self._browser = MozillaEmulator(None, 0)
                if cookieFile is None:
                        cookieFile = os.path.join(os.path.expanduser("~"), ".gc_cookies.txt")
@@ -135,16 +133,13 @@ class GCDialer(object):
                """
                This is the main function responsible for initating the callback
                """
-               self._msg = ""
-
                # If the number is not valid throw exception
                if not self.is_valid_syntax(number):
                        raise ValueError('number is not valid')
 
                # No point if we don't have the magic cookie
                if not self.is_authed():
-                       self._msg = "Not authenticated"
-                       return False
+                       raise RunetimeError("Not Authenticated")
 
                # Strip leading 1 from 11 digit dialing
                if len(number) == 11 and number[0] == 1:
@@ -158,16 +153,12 @@ class GCDialer(object):
                        )
                except urllib2.URLError, e:
                        warnings.warn("%s is not accesible" % GCDialer._clicktocallURL, UserWarning, 2)
-                       return False
+                       raise RunetimeError("%s is not accesible" % GCDialer._clicktocallURL)
 
-               if GCDialer._gcDialingStrRe.search(callSuccessPage) is not None:
-                       return True
-               else:
-                       self._msg = "Grand Central returned an error"
-                       return False
+               if GCDialer._gcDialingStrRe.search(callSuccessPage) is None:
+                       raise RuntimeError("Grand Central returned an error")
 
-               self._msg = "Unknown Error"
-               return False
+               return True
 
        def clear_caches(self):
                self.__contacts = None
index 31b1887..d5c443e 100755 (executable)
@@ -368,18 +368,18 @@ class Dialcentral(object):
                        warnings.warn("Backend Status: Logged in? %s, Authenticated? %s, Callback=%s" % (loggedIn, self._gcBackend.is_authed(), self._gcBackend.get_callback_number()), UserWarning, 2)
                        return
 
+               dialed = False
                try:
-                       callSuccess = self._gcBackend.dial(number)
+                       self._gcBackend.dial(number)
+                       dialed = True
+               except RuntimeError, e:
+                       self.display_error_message(e.message)
                except ValueError, e:
-                       self._gcBackend._msg = e.message
-                       callSuccess = False
+                       self.display_error_message(e.message)
 
-               if not callSuccess:
-                       self.display_error_message(self._gcBackend._msg)
-               else:
+               if dialed:
                        self._dialpad.clear()
-
-               self._recentView.clear()
+                       self._recentView.clear()
 
        def _on_paste(self, *args):
                contents = self._clipboard.wait_for_text()