aiteamutils 0.2.45__py3-none-any.whl → 0.2.47__py3-none-any.whl
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.
- aiteamutils/database.py +4 -1
- aiteamutils/dependencies.py +14 -2
- aiteamutils/security.py +2 -2
- aiteamutils/version.py +1 -1
- {aiteamutils-0.2.45.dist-info → aiteamutils-0.2.47.dist-info}/METADATA +1 -1
- {aiteamutils-0.2.45.dist-info → aiteamutils-0.2.47.dist-info}/RECORD +7 -7
- {aiteamutils-0.2.45.dist-info → aiteamutils-0.2.47.dist-info}/WHEEL +0 -0
aiteamutils/database.py
CHANGED
@@ -1020,6 +1020,7 @@ async def get_db() -> AsyncGenerator[AsyncSession, None]:
|
|
1020
1020
|
source_function="get_db"
|
1021
1021
|
)
|
1022
1022
|
|
1023
|
+
session = None
|
1023
1024
|
try:
|
1024
1025
|
async with db_service.get_session() as session:
|
1025
1026
|
if session is None:
|
@@ -1042,6 +1043,8 @@ async def get_db() -> AsyncGenerator[AsyncSession, None]:
|
|
1042
1043
|
|
1043
1044
|
yield session
|
1044
1045
|
except Exception as e:
|
1046
|
+
if isinstance(e, CustomException):
|
1047
|
+
raise e
|
1045
1048
|
raise CustomException(
|
1046
1049
|
ErrorCode.DB_CONNECTION_ERROR,
|
1047
1050
|
detail=f"Failed to get database session: {str(e)}",
|
@@ -1049,7 +1052,7 @@ async def get_db() -> AsyncGenerator[AsyncSession, None]:
|
|
1049
1052
|
original_error=e
|
1050
1053
|
)
|
1051
1054
|
finally:
|
1052
|
-
if
|
1055
|
+
if session:
|
1053
1056
|
await session.close()
|
1054
1057
|
|
1055
1058
|
async def get_database_service() -> DatabaseService:
|
aiteamutils/dependencies.py
CHANGED
@@ -60,7 +60,19 @@ def get_service(name: str):
|
|
60
60
|
try:
|
61
61
|
repository_class, service_class = service_registry.get(name)
|
62
62
|
repository = repository_class(db_service)
|
63
|
-
|
63
|
+
service = service_class(repository, db_service)
|
64
|
+
|
65
|
+
# 세션 생성 및 설정
|
66
|
+
async with db_service.get_session() as session:
|
67
|
+
if session is None:
|
68
|
+
raise CustomException(
|
69
|
+
ErrorCode.DB_CONNECTION_ERROR,
|
70
|
+
detail="Failed to create database session",
|
71
|
+
source_function="dependencies.get_service"
|
72
|
+
)
|
73
|
+
service.session = session
|
74
|
+
return service
|
75
|
+
|
64
76
|
except CustomException as e:
|
65
77
|
raise e
|
66
78
|
except Exception as e:
|
@@ -95,7 +107,7 @@ async def get_current_user(
|
|
95
107
|
token,
|
96
108
|
settings.JWT_SECRET,
|
97
109
|
algorithms=[settings.JWT_ALGORITHM],
|
98
|
-
audience=
|
110
|
+
audience=settings.TOKEN_AUDIENCE
|
99
111
|
)
|
100
112
|
user_ulid = payload.get("sub")
|
101
113
|
if not user_ulid:
|
aiteamutils/security.py
CHANGED
@@ -351,7 +351,7 @@ async def create_jwt_token(
|
|
351
351
|
token_data = {
|
352
352
|
# 등록 클레임
|
353
353
|
"iss": settings.TOKEN_ISSUER,
|
354
|
-
"sub": user_data["
|
354
|
+
"sub": user_data["ulid"],
|
355
355
|
"aud": settings.TOKEN_AUDIENCE,
|
356
356
|
"exp": expires_at,
|
357
357
|
|
@@ -376,7 +376,7 @@ async def create_jwt_token(
|
|
376
376
|
expires_at = datetime.now(UTC) + timedelta(days=14)
|
377
377
|
token_data = {
|
378
378
|
"iss": settings.TOKEN_ISSUER,
|
379
|
-
"sub": user_data["
|
379
|
+
"sub": user_data["ulid"],
|
380
380
|
"exp": expires_at,
|
381
381
|
"token_type": token_type,
|
382
382
|
"user_ulid": user_data["ulid"]
|
aiteamutils/version.py
CHANGED
@@ -1,2 +1,2 @@
|
|
1
1
|
"""버전 정보"""
|
2
|
-
__version__ = "0.2.
|
2
|
+
__version__ = "0.2.47"
|
@@ -4,13 +4,13 @@ aiteamutils/base_repository.py,sha256=qdwQ7Sj2fUqxpDg6cWM48n_QbwPK_VUlG9zTSem8iC
|
|
4
4
|
aiteamutils/base_service.py,sha256=E4dHGE0DvhmRyFplh46SwKJOSF_nUL7OAsCkf_ZJF_8,24733
|
5
5
|
aiteamutils/cache.py,sha256=07xBGlgAwOTAdY5mnMOQJ5EBxVwe8glVD7DkGEkxCtw,1373
|
6
6
|
aiteamutils/config.py,sha256=OM_b7g8sqZ3zY_DSF9ry-zn5wn4dlXdx5OhjfTGr0TE,2876
|
7
|
-
aiteamutils/database.py,sha256=
|
8
|
-
aiteamutils/dependencies.py,sha256=
|
7
|
+
aiteamutils/database.py,sha256=xUvxSRG49AY5DIWkucKMsaMMtfg5GumgJRwwwiUXm5w,40173
|
8
|
+
aiteamutils/dependencies.py,sha256=UC19hLf5LHM4fdqVQHo7fHxytD47lkXuiSQvU2Vd4s0,4827
|
9
9
|
aiteamutils/enums.py,sha256=ipZi6k_QD5-3QV7Yzv7bnL0MjDz-vqfO9I5L77biMKs,632
|
10
10
|
aiteamutils/exceptions.py,sha256=_lKWXq_ujNj41xN6LDE149PwsecAP7lgYWbOBbLOntg,15368
|
11
|
-
aiteamutils/security.py,sha256=
|
11
|
+
aiteamutils/security.py,sha256=KSZf3WJAlW0UXVM1GEHwuGy2x27UHwtMr8aq-GuIXZk,16016
|
12
12
|
aiteamutils/validators.py,sha256=3N245cZFjgwtW_KzjESkizx5BBUDaJLbbxfNO4WOFZ0,7764
|
13
|
-
aiteamutils/version.py,sha256=
|
14
|
-
aiteamutils-0.2.
|
15
|
-
aiteamutils-0.2.
|
16
|
-
aiteamutils-0.2.
|
13
|
+
aiteamutils/version.py,sha256=o2IXukuF7KexqFBwlqOtUGuZABgd7WMZRzbAfk0_sdU,42
|
14
|
+
aiteamutils-0.2.47.dist-info/METADATA,sha256=BqLPd9L224PbbrWL3Z4zcblCVV3oRcarMpS3o2Iipb8,1718
|
15
|
+
aiteamutils-0.2.47.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
16
|
+
aiteamutils-0.2.47.dist-info/RECORD,,
|
File without changes
|