aiteamutils 0.2.24__py3-none-any.whl → 0.2.26__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.
@@ -52,19 +52,24 @@ class ServiceRegistry:
52
52
  service_registry = ServiceRegistry()
53
53
 
54
54
  def get_service(name: str):
55
- """등록된 서비스를 가져오는 의존성 함수
56
-
57
- Args:
58
- name (str): 서비스 이름
59
-
60
- Returns:
61
- Callable: 서비스 인스턴스를 반환하는 의존성 함수
62
- """
63
- def _get_service(db: AsyncSession = Depends(get_db)):
64
- db_service = DatabaseService(session=db)
55
+ def _get_service():
56
+ # 글로벌 DatabaseService 사용
57
+ db_service = get_database_service()
65
58
  repository_class, service_class = service_registry.get(name)
59
+
60
+ # 이미 생성된 서비스가 있다면 재사용
61
+ if hasattr(service_registry, '_instances') and name in service_registry._instances:
62
+ return service_registry._instances[name]
63
+
66
64
  repository = repository_class(db_service)
67
- return service_class(repository, db_service)
65
+ instance = service_class(repository, db_service)
66
+
67
+ # 생성된 인스턴스 캐싱
68
+ if not hasattr(service_registry, '_instances'):
69
+ service_registry._instances = {}
70
+ service_registry._instances[name] = instance
71
+
72
+ return instance
68
73
  return _get_service
69
74
 
70
75
  oauth2_scheme = OAuth2PasswordBearer(tokenUrl="/users/token")
aiteamutils/security.py CHANGED
@@ -1,6 +1,7 @@
1
1
  """보안 관련 유틸리티."""
2
2
  from datetime import datetime, timedelta, UTC
3
- from typing import Dict, Any, Optional, Literal, Callable, Type, Base
3
+ from typing import Dict, Any, Optional, Literal, Callable, Type
4
+ from sqlalchemy.orm import DeclarativeBase as Base
4
5
  from fastapi import Request, HTTPException, status
5
6
  from functools import wraps
6
7
  from jose import jwt, JWTError
aiteamutils/version.py CHANGED
@@ -1,2 +1,2 @@
1
1
  """버전 정보"""
2
- __version__ = "0.2.24"
2
+ __version__ = "0.2.26"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: aiteamutils
3
- Version: 0.2.24
3
+ Version: 0.2.26
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
@@ -5,12 +5,12 @@ aiteamutils/base_service.py,sha256=E4dHGE0DvhmRyFplh46SwKJOSF_nUL7OAsCkf_ZJF_8,2
5
5
  aiteamutils/cache.py,sha256=tr0Yn8VPYA9QHiKCUzciVlQ2J1RAwNo2K9lGMH4rY3s,1334
6
6
  aiteamutils/config.py,sha256=7pJHBml8RRXC9FpoRBx0emofFkvtxsyk9_Rcur2F9hI,2724
7
7
  aiteamutils/database.py,sha256=raYKRZjEfefM3SnoPYozPu7OUGm62XWOUqZzN4_cayw,33479
8
- aiteamutils/dependencies.py,sha256=e5P-DQi5OMMh7FADaAUqU0kLVBcReE7za55EDNZN950,4008
8
+ aiteamutils/dependencies.py,sha256=VIpy8InbmSd0yOtQYMnn-0rz8yVQwHHbB1xK9Gc7WOw,4275
9
9
  aiteamutils/enums.py,sha256=ipZi6k_QD5-3QV7Yzv7bnL0MjDz-vqfO9I5L77biMKs,632
10
10
  aiteamutils/exceptions.py,sha256=YV-ISya4wQlHk4twvGo16I5r8h22-tXpn9wa-b3WwDM,15231
11
- aiteamutils/security.py,sha256=t1xdvfy2qpggiQGr89AMuRKvWK1UFMxJiJYAE5Lek7o,13453
11
+ aiteamutils/security.py,sha256=jxJsWSjJOMVlNaBFxroIXrAgseJYKl_vQ_kfmHblPIA,13498
12
12
  aiteamutils/validators.py,sha256=3N245cZFjgwtW_KzjESkizx5BBUDaJLbbxfNO4WOFZ0,7764
13
- aiteamutils/version.py,sha256=xu1IgfL2hhBUF2d91PMBax7rAUgopL3RxVIiQol7jAg,44
14
- aiteamutils-0.2.24.dist-info/METADATA,sha256=CX-Mx2vQIjg5tPPaKKMWfwEYZv9Q-4LuVK6AGuqayqs,1718
15
- aiteamutils-0.2.24.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
16
- aiteamutils-0.2.24.dist-info/RECORD,,
13
+ aiteamutils/version.py,sha256=DONfd7rZfDravdoV6c1K4jm76f0bVi7I-IFI_eud86I,44
14
+ aiteamutils-0.2.26.dist-info/METADATA,sha256=SbQLu9hE0u1eE3s9dutbU_SzunjlNr7YYzyGclvOFHA,1718
15
+ aiteamutils-0.2.26.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
16
+ aiteamutils-0.2.26.dist-info/RECORD,,