ForcePilot/backend/package/yuxi/channel/extensions/jd/errors.py

21 lines
613 B
Python
Raw Normal View History

from enum import StrEnum
class JDErrorCode(StrEnum):
TOKEN_INVALID = "JD_TOKEN_INVALID"
TOKEN_EXPIRED = "JD_TOKEN_EXPIRED"
JOS_API_ERROR = "JD_JOS_API_ERROR"
NETWORK_ERROR = "JD_NETWORK_ERROR"
SIGNATURE_ERROR = "JD_SIGNATURE_ERROR"
DECRYPT_ERROR = "JD_DECRYPT_ERROR"
WEBHOOK_REJECTED = "JD_WEBHOOK_REJECTED"
RATE_LIMITED = "JD_RATE_LIMITED"
class JDError(Exception):
def __init__(self, code: JDErrorCode, message: str, detail: dict | None = None):
self.code = code
self.message = message
self.detail = detail or {}
super().__init__(message)