Files
admins 702d080a1e New Addon
Google BK
2023-04-23 18:17:03 +07:00

25 lines
676 B
Python

from injector import inject, singleton
from typing import List
from .config import Startable, Config, Setting
from .logger import getLogger
logger = getLogger(__name__)
@singleton
class Starter(Startable):
@inject
def __init__(self, config: Config, startables: List[Startable]):
self.startables = startables
self.config = config
async def start(self):
logger.overrideLevel(self.config.get(Setting.CONSOLE_LOG_LEVEL), self.config.get(Setting.LOG_LEVEL))
for startable in self.startables:
await startable.start()
async def stop(self):
for startable in self.startables:
await startable.stop()