from .logger import logger
[docs]
class livef1Exception(Exception):
pass
[docs]
class LiveF1Error(Exception):
"""Base class for all LiveF1 module exceptions."""
def __init__(self, message):
"""
Initializes the exception and logs the message.
Parameters
----------
message : str
The error message for the exception.
"""
super().__init__(message)
logger.error(str(self.__class__.__name__) + " - " + message)
pass
[docs]
class RealF1Error(LiveF1Error):
"""Exception for RealF1Client related errors"""
pass
[docs]
class ArgumentError(LiveF1Error):
"""Exception for arguments of methods related errors"""
pass
[docs]
class MissingFunctionError(LiveF1Error):
"""Raised when ETL functions does not include a function"""
pass
[docs]
class AdapterError(LiveF1Error):
"""Base exception for adapter-related issues."""
pass
[docs]
class InvalidResponseError(AdapterError):
"""Exception for invalid API responses."""
pass
[docs]
class InvalidEndpointError(AdapterError):
"""Raised when an invalid endpoint is accessed."""
pass
# class AuthenticationError(AdapterError):
# """Raised when authentication fails."""
# pass
# class TimeoutError(AdapterError):
# """Raised when a request times out."""
# pass
# class ConnectionError(AdapterError):
# """Raised when there is a connection issue."""
# pass
[docs]
class DataDecodingError(AdapterError):
"""Raised when decoding the response fails."""
pass
[docs]
class DataProcessingError(LiveF1Error):
"""Raised when data processing / parsing related error occurs."""
pass
[docs]
class ParsingError(DataProcessingError):
"""Raised when parsing the data fails."""
pass
[docs]
class ETLError(DataProcessingError):
"""Exception for ETL-specific issues."""
pass
# class DataValidationError(DataProcessingError):
# """Exception for invalid data during processing."""
# pass
[docs]
class SubscriptionError(AdapterError):
"""Exception for subscription errors."""
pass