Package coprs :: Module exceptions
[hide private]
[frames] | no frames]

Source Code for Module coprs.exceptions

1 -class CoprHttpException(Exception):
2 3 _default = "Generic copr exception" 4 _code = 500 5
6 - def __init__(self, message=None, code=None, **kwargs):
7 self.message = str(message) if message else None 8 self.code = code or self._code 9 self.kwargs = kwargs
10
11 - def __unicode__(self):
12 return self.message or self._default
13
14 - def __str__(self):
15 return self.__unicode__()
16 17
18 -class ObjectNotFound(CoprHttpException):
19 20 _default = "Requested object was not found" 21 _code = 404
22 23
24 -class AccessRestricted(CoprHttpException):
25 26 _default = "You don't have required permission" 27 _code = 403
28 29
30 -class BadRequest(CoprHttpException):
31 32 _default = "Bad request to the server" 33 _code = 400
34 35
36 -class ConflictingRequest(CoprHttpException):
37 """ Generic DB conflict """ 38 _default = "Conflicting request" 39 _code = 409
40 41
42 -class ApiError(CoprHttpException):
43 44 _default = "API error" 45 _code = 500
46 47
48 -class LegacyApiError(CoprHttpException):
49 50 _default = "API error" 51 _code = 500
52 53
54 -class InsufficientStorage(CoprHttpException):
55 """When there is not enough space left on the server for the src rpm.""" 56 _default = "Not enough space left" 57 _code = 500
58 59
60 -class MalformedArgumentException(ValueError):
61 pass
62 63
64 -class NotFoundException(ObjectNotFound):
65 pass
66 67
68 -class DuplicateException(BadRequest):
69 pass
70 71
72 -class NonAdminCannotCreatePersistentProject(CoprHttpException):
73 _default = "Non-admin cannot create persistent project." 74 _code = 403
75 76
77 -class NonAdminCannotDisableAutoPrunning(CoprHttpException):
78 _default = "Non-admin cannot disable auto-prunning." 79 _code = 403
80 81 InsufficientRightsException = AccessRestricted 82 83
84 -class ActionInProgressException(CoprHttpException):
85
86 - def __init__(self, msg, action):
87 super(ActionInProgressException, self).__init__(message=msg) 88 self.msg = msg 89 self.action = action
90
91 - def __unicode__(self):
92 return self.formatted_msg()
93
94 - def __str__(self):
95 return self.__unicode__()
96
97 - def formatted_msg(self):
98 return self.msg.format(action=self.action)
99 100
101 -class UnknownSourceTypeException(Exception):
102 pass
103 104
105 -class NoPackageSourceException(Exception):
106 pass
107 108
109 -class UnrepeatableBuildException(Exception):
110 pass
111