31 lines
501 B
Python
31 lines
501 B
Python
from typing import Annotated
|
|
from fastapi import Depends
|
|
import redis
|
|
|
|
from .db.database import SessionLocal
|
|
from .db.redis import create_redis
|
|
|
|
|
|
def get_db():
|
|
db = SessionLocal()
|
|
try:
|
|
yield db
|
|
finally:
|
|
db.close()
|
|
|
|
|
|
async def get_redis():
|
|
r = await create_redis()
|
|
try:
|
|
yield r
|
|
finally:
|
|
r.close()
|
|
|
|
|
|
async def get_pubsub(r: Annotated[redis.Redis, Depends(get_redis)]):
|
|
ps = r.pubsub()
|
|
try:
|
|
yield ps
|
|
finally:
|
|
ps.close()
|