from abc import ABC


class General(Exception, ABC):
    pass


class SecurityException(General, ABC):
    """Base exception for security issues"""


class AuthException(SecurityException):
    """Raised on auth attempt fail"""


class IntegrityError(General):
    """Raised if internal integrity was violated"""


class ConnectivityError(General):
    """Raised if connection to resource could not be established"""


class ROSServiceError(General):
    """Raised if ROS service fails"""
