16 lines
562 B
Python
16 lines
562 B
Python
"""Storage exception types — import from here, never redefine elsewhere."""
|
|
from __future__ import annotations
|
|
|
|
|
|
class CloudConnectionError(Exception):
|
|
"""Raised when a cloud provider signals a non-retryable connection problem.
|
|
|
|
Attributes:
|
|
reason: "token_expired" — access token expired.
|
|
"invalid_grant" — refresh token revoked; user must reconnect.
|
|
"""
|
|
|
|
def __init__(self, msg: str = "", *, reason: str = "") -> None:
|
|
super().__init__(msg)
|
|
self.reason = reason # "token_expired" | "invalid_grant"
|