Source code for src.utils.errors
"""Custom exception hierarchy for Share of Search analysis."""
[docs]
class ShareOfSearchError(Exception):
"""Base exception for all Share of Search errors."""
pass
[docs]
class ConfigurationError(ShareOfSearchError):
"""Configuration-related errors."""
pass
[docs]
class InvalidConfigError(ConfigurationError):
"""Invalid configuration provided."""
pass
[docs]
class MissingAPIKeyError(ConfigurationError):
"""Required API key not found."""
pass
[docs]
class DataError(ShareOfSearchError):
"""Data fetching/processing errors."""
pass
[docs]
class APIError(DataError):
"""API request failed."""
pass
[docs]
class RateLimitError(APIError):
"""API rate limit exceeded."""
pass
[docs]
class InvalidResponseError(APIError):
"""API returned invalid/unexpected response."""
pass
[docs]
class ProcessingError(ShareOfSearchError):
"""Data processing errors."""
pass
[docs]
class CalculationError(ProcessingError):
"""Metric calculation failed."""
pass
[docs]
class VisualizationError(ShareOfSearchError):
"""Visualization generation errors."""
pass
[docs]
class ReportError(ShareOfSearchError):
"""Report generation errors."""
pass