summaryrefslogtreecommitdiff
path: root/common/src/leap/soledad/common/errors.py
diff options
context:
space:
mode:
Diffstat (limited to 'common/src/leap/soledad/common/errors.py')
-rw-r--r--common/src/leap/soledad/common/errors.py103
1 files changed, 0 insertions, 103 deletions
diff --git a/common/src/leap/soledad/common/errors.py b/common/src/leap/soledad/common/errors.py
deleted file mode 100644
index d543a3de..00000000
--- a/common/src/leap/soledad/common/errors.py
+++ /dev/null
@@ -1,103 +0,0 @@
-# -*- coding: utf-8 -*-
-# errors.py
-# Copyright (C) 2013 LEAP
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or 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 this program. If not, see <http://www.gnu.org/licenses/>.
-
-
-"""
-Soledad errors.
-"""
-
-from .l2db import errors
-from .l2db.remote import http_errors
-
-
-def register_exception(cls):
- """
- A small decorator that registers exceptions in u1db maps.
- """
- # update u1db "wire description to status" and "wire description to
- # exception" maps.
- http_errors.wire_description_to_status.update({
- cls.wire_description: cls.status})
- errors.wire_description_to_exc.update({
- cls.wire_description: cls})
- # do not modify the exception
- return cls
-
-
-class SoledadError(errors.U1DBError):
-
- """
- Base Soledad HTTP errors.
- """
- pass
-
-
-#
-# Authorization errors
-#
-
-
-class DatabaseAccessError(Exception):
- pass
-
-
-@register_exception
-class InvalidAuthTokenError(errors.Unauthorized):
-
- """
- Exception raised when failing to get authorization for some action because
- the provided token either does not exist in the tokens database, has a
- distinct structure from the expected one, or is associated with a user
- with a distinct uuid than the one provided by the client.
- """
-
- wire_descrition = "invalid auth token"
- status = 401
-
-
-#
-# SoledadBackend errors
-# u1db error statuses also have to be updated
-http_errors.ERROR_STATUSES = set(
- http_errors.wire_description_to_status.values())
-
-
-class InvalidURLError(Exception):
- """
- Exception raised when Soledad encounters a malformed URL.
- """
-
-
-class BackendNotReadyError(SoledadError):
- """
- Generic exception raised when the backend is not ready to dispatch a client
- request.
- """
- wire_description = "backend not ready"
- status = 500
-
-
-class WrongCouchSchemaVersionError(SoledadError):
- """
- Raised in case there is a user database with wrong couch schema version.
- """
-
-
-class MissingCouchConfigDocumentError(SoledadError):
- """
- Raised if a database has documents but lacks the couch config document.
- """