Files
dify/api/controllers/common/resource_access_token_errors.py
T
50f66b43c8 chore(api): bump minimum supported Python to 3.13 (#43022)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Asuka Minato <i@asukaminato.eu.org>
Co-authored-by: Stephen Zhou <38493346+hyoban@users.noreply.github.com>
2026-10-09 10:47:03 +00:00

28 lines
954 B
Python

"""Translate machine credential application failures at HTTP transport boundaries."""
from collections.abc import Generator
from contextlib import contextmanager
from werkzeug.exceptions import BadRequest, Forbidden, NotFound, Unauthorized
from services.auth.resource_access_token_contracts import (
ResourceAccessTokenForbiddenError,
ResourceAccessTokenInputError,
ResourceAccessTokenInvalidError,
ResourceAccessTokenNotFoundError,
)
@contextmanager
def resource_access_token_errors() -> Generator[None]:
try:
yield
except ResourceAccessTokenInputError as error:
raise BadRequest(str(error)) from error
except ResourceAccessTokenForbiddenError as error:
raise Forbidden(str(error)) from error
except ResourceAccessTokenNotFoundError as error:
raise NotFound(str(error)) from error
except ResourceAccessTokenInvalidError as error:
raise Unauthorized(str(error)) from error