31 lines
662 B
Python
31 lines
662 B
Python
"""
|
|
errors and exceptions
|
|
"""
|
|
|
|
from __future__ import annotations
|
|
|
|
|
|
class ConfigurationError(Exception):
|
|
"""
|
|
Error raised when a configuration problem is encountered
|
|
"""
|
|
|
|
|
|
class ConcurrentUpdateError(Exception):
|
|
"""
|
|
Error raised when an update to limit fails due to concurrent
|
|
updates
|
|
"""
|
|
|
|
def __init__(self, key: str, attempts: int) -> None:
|
|
super().__init__(f"Unable to update {key} after {attempts} retries")
|
|
|
|
|
|
class StorageError(Exception):
|
|
"""
|
|
Error raised when an error is encountered in a storage
|
|
"""
|
|
|
|
def __init__(self, storage_error: Exception) -> None:
|
|
self.storage_error = storage_error
|