fooder-api/fooder/context.py
2026-04-02 21:03:44 +02:00

31 lines
663 B
Python

from sqlalchemy.ext.asyncio import AsyncSession
from fastapi import Depends
from .db import get_db_session
from .repository import Repository
class Context:
"""
Main API context, aggregating dependencies
"""
def __init__(self, repo: Repository) -> None:
self.repo = Repository
class ContextDependency:
"""
Configurable context dependecy. Allows for shared interface configuring
method required dependencies
"""
def __init__(
self,
) -> None:
pass
def __call__(
self,
session: AsyncSession = Depends(get_db_session),
):
return Context(repo=Repository(session))