aiteamutils 0.2.19__tar.gz → 0.2.20__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: aiteamutils
3
- Version: 0.2.19
3
+ Version: 0.2.20
4
4
  Summary: AI Team Utilities
5
5
  Project-URL: Homepage, https://github.com/yourusername/aiteamutils
6
6
  Project-URL: Issues, https://github.com/yourusername/aiteamutils/issues
@@ -85,7 +85,7 @@ class DatabaseService:
85
85
  pool_pre_ping=True,
86
86
  poolclass=QueuePool,
87
87
  )
88
- self.async_session = sessionmaker(
88
+ self.session_factory = sessionmaker(
89
89
  bind=self.engine,
90
90
  class_=AsyncSession,
91
91
  expire_on_commit=False
@@ -93,7 +93,11 @@ class DatabaseService:
93
93
  self.db = None
94
94
  elif session:
95
95
  self.engine = session.bind
96
- self.async_session = None
96
+ self.session_factory = sessionmaker(
97
+ bind=self.engine,
98
+ class_=AsyncSession,
99
+ expire_on_commit=False
100
+ )
97
101
  self.db = session
98
102
  else:
99
103
  raise ValueError("Either db_url or session must be provided")
@@ -788,9 +792,13 @@ class DatabaseService:
788
792
  CustomException: 데이터베이스 작업 중 오류 발생 시
789
793
  """
790
794
  try:
791
- async with self.db as session:
792
- result = await session.execute(query)
795
+ if self.db:
796
+ result = await self.db.execute(query)
793
797
  return result
798
+ else:
799
+ async with self.session_factory() as session:
800
+ result = await session.execute(query)
801
+ return result
794
802
  except Exception as e:
795
803
  raise CustomException(
796
804
  ErrorCode.DB_QUERY_ERROR,
@@ -2,6 +2,7 @@ from typing import Type, Dict, Tuple, Any, Callable
2
2
  from fastapi import Depends, status
3
3
  from fastapi.security import OAuth2PasswordBearer
4
4
  from jose import JWTError, jwt
5
+ from sqlalchemy.ext.asyncio import AsyncSession
5
6
 
6
7
  from .database import DatabaseService, get_database_service
7
8
  from .exceptions import CustomException, ErrorCode
@@ -59,7 +60,8 @@ def get_service(name: str):
59
60
  Returns:
60
61
  Callable: 서비스 인스턴스를 반환하는 의존성 함수
61
62
  """
62
- def _get_service(db_service: DatabaseService = Depends(get_database_service)):
63
+ def _get_service(db: AsyncSession = Depends(get_db)):
64
+ db_service = DatabaseService(session=db)
63
65
  repository_class, service_class = service_registry.get(name)
64
66
  repository = repository_class(db_service)
65
67
  return service_class(repository, db_service)
@@ -0,0 +1,2 @@
1
+ """버전 정보"""
2
+ __version__ = "0.2.20"
@@ -1,2 +0,0 @@
1
- """버전 정보"""
2
- __version__ = "0.2.19"
@@ -1,4 +0,0 @@
1
- from aiteamutils.config import get_settings
2
-
3
- # settings를 사용하는 곳에서는 get_settings()를 호출하여 사용
4
- settings = get_settings()
File without changes
File without changes
File without changes