python: add status and message attributes to NotmuchError
authorJustus Winter <4winter@informatik.uni-hamburg.de>
Mon, 26 Sep 2011 01:05:30 +0000 (03:05 +0200)
committerSebastian Spaeth <Sebastian@SSpaeth.de>
Thu, 29 Sep 2011 07:07:11 +0000 (09:07 +0200)
Providing exception objects with meaningful attribute names
is much nicer than using e.args[].

Signed-off-by: Justus Winter <4winter@informatik.uni-hamburg.de>
bindings/python/notmuch/globals.py

index e5399beda0d47043a47c715db3b03b80ca406542..2a57c411f3b6c4a07f61ec069c59397efe928059 100644 (file)
@@ -93,13 +93,14 @@ STATUS.__name__ = 'STATUS'
 class NotmuchError(Exception):
     def __init__(self, status=None, message=None):
         """Is initiated with a (notmuch.STATUS[,message=None])"""
-        super(NotmuchError, self).__init__(message, status)
+        self.status = status
+        self.message = message
 
     def __str__(self):
-        if self.args[0] is not None:
-            return self.args[0]
+        if self.message is not None:
+            return self.message
         else:
-            return STATUS.status2str(self.args[1])
+            return STATUS.status2str(self.status)
 
 def _str(value):
     """Ensure a nicely utf-8 encoded string to pass to libnotmuch