Improved config loading

This commit is contained in:
2021-12-27 19:32:12 +01:00
parent 40419c9a0b
commit 4db97248ca
11 changed files with 87 additions and 54 deletions

View File

@@ -8,6 +8,7 @@ from discord import guild
from gismo_core.abc.bot_service_abc import BotServiceABC
from gismo_core.abc.message_service_abc import MessageServiceABC
from gismo_core.configuration.server_settings import ServerSettings
from modules.boot_log.boot_log_settings import BootLogSettings
from modules_core.abc.events.on_ready_abc import OnReadyABC
from modules_core.abc.module_abc import ModuleABC
@@ -26,11 +27,16 @@ class BootLog(ModuleABC, OnReadyABC):
self._logger = logger
self._bot = bot
self._message_service = message_service
ModuleABC.__init__(self)
self._priorities[OnReadyABC] = 10
ModuleABC.__init__(
self,
{
OnReadyABC: 10
},
BootLogSettings
)
self._logger.trace(__name__, f'Module {type(self)} loaded')
async def on_ready(self):
self._logger.debug(__name__, f'Module {type(self)} started')
try:
@@ -69,4 +75,4 @@ class BootLog(ModuleABC, OnReadyABC):
server_settings.login_message.format(init_time)
)
self._logger.trace(__name__, f'Module {type(self)} stopped')
self._logger.trace(__name__, f'Module {type(self)} stopped')

View File

@@ -0,0 +1,29 @@
import traceback
from cpl_core.configuration.configuration_model_abc import ConfigurationModelABC
from cpl_core.console import Console
class BootLogSettings(ConfigurationModelABC):
def __init__(self):
ConfigurationModelABC.__init__(self)
self._login_message_channel_id: int = 0
self._login_message: str = ''
@property
def login_message_channel_id(self) -> int:
return self._login_message_channel_id
@property
def login_message(self) -> str:
return self._login_message
def from_dict(self, settings: dict):
try:
self._login_message_channel_id = int(settings['LoginMessageChannelId'])
self._login_message = settings['LoginMessage']
except Exception as e:
Console.error(f'[ ERROR ] [ {__name__} ]: Reading error in {__name__} settings')
Console.error(f'[ EXCEPTION ] [ {__name__} ]: {e} -> {traceback.format_exc()}')