| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- from .request import TeaRequest
- class TeaException(Exception):
- def __init__(self, dic):
- self.code = dic.get("code")
- self.message = dic.get("message")
- self.data = dic.get("data")
- self.description = dic.get("description")
- self.accessDeniedDetail = dic.get("accessDeniedDetail")
- if isinstance(dic.get("data"), dict) and dic.get("data").get("statusCode") is not None:
- self.statusCode = dic.get("data").get("statusCode")
- def __str__(self):
- return f'Error: {self.code} {self.message} Response: {self.data}'
- class ValidateException(Exception):
- pass
- class RequiredArgumentException(ValidateException):
- def __init__(self, arg):
- self.arg = arg
- def __str__(self):
- return f'"{self.arg}" is required.'
- class RetryError(Exception):
- def __init__(self, message):
- self.message = message
- self.data = None
- class UnretryableException(TeaException):
- def __init__(
- self,
- request: TeaRequest,
- ex: Exception
- ):
- self.last_request = request
- self.inner_exception = ex
- if isinstance(ex, TeaException):
- super().__init__({
- 'code': ex.code,
- 'message': ex.message,
- 'data': ex.data
- })
- else:
- super().__init__({
- 'message': repr(ex),
- })
- def __str__(self):
- return str(self.inner_exception)
|