19 lines
549 B
Python
19 lines
549 B
Python
class ProviderError(Exception):
|
|
"""Base provider exception."""
|
|
|
|
|
|
class ProviderTransientError(ProviderError):
|
|
"""Temporary provider failure that can be retried."""
|
|
|
|
|
|
class ProviderRateLimitError(ProviderTransientError):
|
|
"""Raised when provider rate limit is hit."""
|
|
|
|
def __init__(self, message: str, retry_after_seconds: int = 30):
|
|
super().__init__(message)
|
|
self.retry_after_seconds = retry_after_seconds
|
|
|
|
|
|
class ProviderNotFoundError(ProviderError):
|
|
"""Raised when an unknown provider namespace is requested."""
|