2025-05-24 07:15:07 +02:00

39 lines
1.5 KiB
Python

import logging
from src.core.config import settings
logger = logging.getLogger(__name__)
# Determine which repository implementation to use
# Default to Firestore for now
REPOSITORY_TYPE = "firestore"
def init_repositories():
"""Initialize the repository implementations based on configuration."""
global REPOSITORY_TYPE
logger.info(f"Initializing repositories with type: {REPOSITORY_TYPE}")
if REPOSITORY_TYPE == "firestore":
# Import and initialize Firestore repositories
from src.db.repositories.firestore_team_repository import firestore_team_repository
from src.db.providers.firestore_provider import firestore_db
# Make sure Firestore client is initialized
if not firestore_db.client:
firestore_db.connect()
# Replace the default repositories with Firestore implementations
from src.db.repositories.team_repository import team_repository as default_team_repo
# Dynamically update the module to use Firestore repositories
import sys
sys.modules["src.db.repositories.team_repository"].team_repository = firestore_team_repository
logger.info("Firestore repositories initialized")
else:
# Default MongoDB repositories are already imported
logger.info("Using default MongoDB repositories")
# Initialize repositories at module import time
init_repositories()