]> git.notmuchmail.org Git - notmuch/blobdiff - bindings/python/notmuch/globals.py
python: add status and message attributes to NotmuchError
[notmuch] / bindings / python / notmuch / globals.py
index 05b9962a40a554ac83805191ac31fc745e181f51..2a57c411f3b6c4a07f61ec069c59397efe928059 100644 (file)
@@ -65,6 +65,7 @@ STATUS = Status(['SUCCESS',
   'NULL_POINTER',
   'TAG_TOO_LONG',
   'UNBALANCED_FREEZE_THAW',
+  'UNBALANCED_ATOMIC',
   'NOT_INITIALIZED'])
 """STATUS is a class, whose attributes provide constants that serve as return
 indicators for notmuch functions. Currently the following ones are defined. For
@@ -81,6 +82,7 @@ description.
   * NULL_POINTER
   * TAG_TOO_LONG
   * UNBALANCED_FREEZE_THAW
+  * UNBALANCED_ATOMIC
   * NOT_INITIALIZED
 
 Invoke the class method `notmuch.STATUS.status2str` with a status value as
@@ -91,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