X-Git-Url: https://git.notmuchmail.org/git?a=blobdiff_plain;f=bindings%2Fpython%2Fnotmuch%2Ferrors.py;h=b7684ef614a13c1a661252df4e70e81e00c8f447;hb=a727e7d4d398375c4a3ba5020e2ab25b5b874785;hp=f153a9c5bcf5c8c9c8e6ee05600eb4ffe998dd82;hpb=a7561cc20b17669784c3259afcbcef98029f93e9;p=notmuch diff --git a/bindings/python/notmuch/errors.py b/bindings/python/notmuch/errors.py index f153a9c5..b7684ef6 100644 --- a/bindings/python/notmuch/errors.py +++ b/bindings/python/notmuch/errors.py @@ -12,7 +12,7 @@ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License -along with notmuch. If not, see . +along with notmuch. If not, see . Copyright 2010 Sebastian Spaeth """ @@ -56,6 +56,9 @@ STATUS = Status(['SUCCESS', 'TAG_TOO_LONG', 'UNBALANCED_FREEZE_THAW', 'UNBALANCED_ATOMIC', + 'UNSUPPORTED_OPERATION', + 'UPGRADE_REQUIRED', + 'PATH_ERROR', '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 @@ -73,6 +76,9 @@ description. * TAG_TOO_LONG * UNBALANCED_FREEZE_THAW * UNBALANCED_ATOMIC + * UNSUPPORTED_OPERATION + * UPGRADE_REQUIRED + * PATH_ERROR * NOT_INITIALIZED Invoke the class method `notmuch.STATUS.status2str` with a status value as @@ -101,6 +107,9 @@ class NotmuchError(Exception, Python3StringMixIn): STATUS.TAG_TOO_LONG: TagTooLongError, STATUS.UNBALANCED_FREEZE_THAW: UnbalancedFreezeThawError, STATUS.UNBALANCED_ATOMIC: UnbalancedAtomicError, + STATUS.UNSUPPORTED_OPERATION: UnsupportedOperationError, + STATUS.UPGRADE_REQUIRED: UpgradeRequiredError, + STATUS.PATH_ERROR: PathError, STATUS.NOT_INITIALIZED: NotInitializedError, } assert 0 < status <= len(subclasses) @@ -175,6 +184,18 @@ class UnbalancedAtomicError(NotmuchError): status = STATUS.UNBALANCED_ATOMIC +class UnsupportedOperationError(NotmuchError): + status = STATUS.UNSUPPORTED_OPERATION + + +class UpgradeRequiredError(NotmuchError): + status = STATUS.UPGRADE_REQUIRED + + +class PathError(NotmuchError): + status = STATUS.PATH_ERROR + + class NotInitializedError(NotmuchError): """Derived from NotmuchError, this occurs if the underlying data structure (e.g. database is not initialized (yet) or an iterator has