From af68c44193dcf94d6c400569a5b92ce401430d40 Mon Sep 17 00:00:00 2001 From: Robert Date: Wed, 28 Feb 2024 18:09:30 +0700 Subject: [PATCH] dependencies --- .../progress_action_service_factory.py | 13 +++++++++++ .../dependencies/progress_chain_repository.py | 16 +++++++++++++ .../progress_chain_runner_service.py | 23 +++++++++++++++++++ 3 files changed, 52 insertions(+) create mode 100644 chain_service/dependencies/progress_action_service_factory.py create mode 100644 chain_service/dependencies/progress_chain_repository.py create mode 100644 chain_service/dependencies/progress_chain_runner_service.py diff --git a/chain_service/dependencies/progress_action_service_factory.py b/chain_service/dependencies/progress_action_service_factory.py new file mode 100644 index 0000000..1432f6d --- /dev/null +++ b/chain_service/dependencies/progress_action_service_factory.py @@ -0,0 +1,13 @@ +from chain_service.services.progress_action.factory import ProgressActionServiceFactory + +from fastapi import Depends +from typing import Annotated + + +def get_progress_action_service_factory() -> ProgressActionServiceFactory: + return ProgressActionServiceFactory() + + +ProgressActionServiceFactoryDependency = Annotated[ + ProgressActionServiceFactory, Depends(get_progress_action_service_factory) +] diff --git a/chain_service/dependencies/progress_chain_repository.py b/chain_service/dependencies/progress_chain_repository.py new file mode 100644 index 0000000..c98b72a --- /dev/null +++ b/chain_service/dependencies/progress_chain_repository.py @@ -0,0 +1,16 @@ +from .database import DatabaseDependency +from chain_service.repositories.progress_chain import ProgressChainRepository + +from fastapi import Depends +from typing import Annotated + + +def get_progress_chain_repository( + database: DatabaseDependency, +) -> ProgressChainRepository: + return ProgressChainRepository(database=database) + + +ProgressChainRepositoryDependency = Annotated[ + ProgressChainRepository, Depends(get_progress_chain_repository) +] diff --git a/chain_service/dependencies/progress_chain_runner_service.py b/chain_service/dependencies/progress_chain_runner_service.py new file mode 100644 index 0000000..6e23217 --- /dev/null +++ b/chain_service/dependencies/progress_chain_runner_service.py @@ -0,0 +1,23 @@ +from chain_service.services.progress_chain_runner import ProgressChainRunnerService + +from .progress_chain_repository import ProgressChainRepositoryDependency +from .progress_action_service_factory import ProgressActionServiceFactoryDependency + + +from fastapi import Depends +from typing import Annotated + + +def get_progress_chain_runner_service( + progress_chain_repository: ProgressChainRepositoryDependency, + progress_action_service_factory: ProgressActionServiceFactoryDependency, +) -> ProgressChainRunnerService: + return ProgressChainRunnerService( + progress_chain_repository=progress_chain_repository, + progress_action_service_factory=progress_action_service_factory, + ) + + +ProgressChainRunnerServiceDependency = Annotated[ + ProgressChainRunnerService, Depends(get_progress_chain_runner_service) +]