From 94dd4a752eadc8143ca33094a2ba507d67945e09 Mon Sep 17 00:00:00 2001 From: agatha Date: Sat, 14 Mar 2026 15:47:22 -0400 Subject: [PATCH] feat: add dependency providers --- src/proxy_pool/common/dependencies.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 src/proxy_pool/common/dependencies.py diff --git a/src/proxy_pool/common/dependencies.py b/src/proxy_pool/common/dependencies.py new file mode 100644 index 0000000..813acee --- /dev/null +++ b/src/proxy_pool/common/dependencies.py @@ -0,0 +1,21 @@ +from collections.abc import AsyncGenerator + +from fastapi import Request +from redis.asyncio import Redis +from sqlalchemy.ext.asyncio import AsyncSession + +from proxy_pool.plugins.registry import PluginRegistry + + +async def get_db(request: Request) -> AsyncGenerator[AsyncSession, None]: + session_factory = request.app.state.session_factory + async with session_factory() as session: + yield session + + +def get_redis(request: Request) -> Redis: + return request.app.state.redis + + +def get_registry(request: Request) -> PluginRegistry: + return request.app.state.registry