diff options
Diffstat (limited to 'common/src')
| -rw-r--r-- | common/src/leap/soledad/common/errors.py | 14 | 
1 files changed, 13 insertions, 1 deletions
| diff --git a/common/src/leap/soledad/common/errors.py b/common/src/leap/soledad/common/errors.py index 7c2d7296..62de19f8 100644 --- a/common/src/leap/soledad/common/errors.py +++ b/common/src/leap/soledad/common/errors.py @@ -57,14 +57,26 @@ class AlreadyLockedError(errors.U1DBError):      wire_description = "lock is locked"      status = 403 + +class LockTimedOutError(errors.U1DBError): +    """ +    Exception raised when timing out while trying to lock the shared database. +    """ + +    wire_description = "lock timed out" +    status = 408 + +  # update u1db "wire description to status" and "wire description to exception"  # maps. -for e in [InvalidTokenError, NotLockedError, AlreadyLockedError]: +for e in [InvalidTokenError, NotLockedError, AlreadyLockedError, +        LockTimedOutError]:      http_errors.wire_description_to_status.update({          e.wire_description: e.status})      errors.wire_description_to_exc.update({          e.wire_description: e}) +  # u1db error statuses also have to be updated  http_errors.ERROR_STATUSES = set(      http_errors.wire_description_to_status.values()) | 
