Init project
This commit is contained in:
26
birthday_pool_bot/service.py
Normal file
26
birthday_pool_bot/service.py
Normal file
@@ -0,0 +1,26 @@
|
||||
import facet
|
||||
|
||||
from .notifications import NotificationsService
|
||||
from .repositories import RepositoriesContainer
|
||||
from .telegram_bot import get_telegram_bot_service
|
||||
from .settings import Settings
|
||||
|
||||
|
||||
class BirthdayPoolBotService(facet.AsyncioServiceMixin):
|
||||
def __init__(self, settings: Settings):
|
||||
self._repositories_container = RepositoriesContainer(settings=settings.repository)
|
||||
self._telegram_bot = get_telegram_bot_service(
|
||||
settings=settings.telegram_bot,
|
||||
repositories_container=self._repositories_container,
|
||||
)
|
||||
self._notifications_service = NotificationsService(
|
||||
settings=settings.notifications,
|
||||
repositories_container=self._repositories_container,
|
||||
)
|
||||
|
||||
@property
|
||||
def dependencies(self) -> list[facet.AsyncioServiceMixin]:
|
||||
return [
|
||||
self._telegram_bot,
|
||||
self._notifications_service,
|
||||
]
|
||||
Reference in New Issue
Block a user