Improved config loading
This commit is contained in:
@@ -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')
|
||||
|
29
src/modules/boot_log/boot_log_settings.py
Normal file
29
src/modules/boot_log/boot_log_settings.py
Normal 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()}')
|
Reference in New Issue
Block a user