27 lines
641 B
Python
27 lines
641 B
Python
from dependency_injector import containers, providers
|
|
from repositories.user_repository import UserRepository
|
|
from services import UserService, AuthService
|
|
from controllers import AuthController
|
|
from flask_pymongo import PyMongo
|
|
|
|
|
|
class Container(containers.DeclarativeContainer):
|
|
"""Dependency Injection Container"""
|
|
|
|
mongo = providers.Dependency()
|
|
|
|
user_repository = providers.Factory(
|
|
UserRepository,
|
|
mongo.provided.db,
|
|
)
|
|
|
|
auth_service = providers.Factory(
|
|
AuthService,
|
|
user_repository,
|
|
)
|
|
|
|
auth_controller = providers.Factory(
|
|
AuthController,
|
|
AuthService,
|
|
)
|