Viewing file: exceptions.py (1.26 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
# -*- coding: utf-8 -*-
# Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2021 All Rights Reserved # # Licensed under CLOUD LINUX LICENSE AGREEMENT # http://cloudlinux.com/docs/LICENSE.TXT
""" This module contains custom exception classes """ import json
class SSAError(Exception): """ SSA internal exception class. Adds an 'error' status and stores information about occurred exception. Provides JSON encoded info about occurred exception. """
def __init__(self, message: str, *, flag: str = 'error', extra: dict = None): super().__init__(message) self.status = 'error' self.reason = message self.extra_data = extra self.type_flag = flag
def __str__(self) -> 'json str': if self.type_flag == 'warning': msg = { 'result': 'success', 'warning': self.reason } else: msg = { 'result': self.reason } return json.dumps(msg)
class SSAAgentError(SSAError): """ SSA Agent exception class """
class SSAManagerError(SSAError): """ SSA Manager exception class """
class SSAMailerError(SSAError): """ SSA Mailer exception class """
|