class Common(Exception): def __init__(self, status_string='', message=''): if isinstance(status_string, Exception): self.status_string = '' return super(Common, self).__init__(*status_string) self.status_string = status_string self.msg = message def __getitem__(self, val): return (self.status_string, self.msg)[val] def __repr__(self): return self.__str__() def __str__(self): return '{} - {}'.format(self.status_string, self.msg) class BadRequest(Common): pass class Conflict(Common): pass class Duplicate(Common): pass class Forbidden(Common): pass class InternalServerError(Common): pass class BadGateway(Common): pass class LicenseExceeded(Common): pass class LicenseInvalid(Common): pass class MethodNotAllowed(Common): pass class NoContent(Common): message = '' class NotFound(Common): pass class PaymentRequired(Common): pass class Unauthorized(Common): pass class Unknown(Common): pass class WaitUntilTimeout(Common): pass class UnexpectedAWXState(Common): pass class IsMigrating(Common): pass