A-0.1 - Modularer Aufbau #13

Merged
edraft merged 118 commits from 0.1 into Alpha 2021-11-25 21:02:12 +01:00
2 changed files with 140 additions and 49 deletions
Showing only changes of commit d6b65c42cc - Show all commits

4
.gitignore vendored
View File

@ -138,6 +138,6 @@ dmypy.json
# Cython debug symbols
cython_debug/
# gismo
g-env/
# custom vs code
.vscode/PythonImportHelper-v2-Completion.json

View File

@ -335,6 +335,14 @@
"detail": "cpl_core.console",
"documentation": {}
},
{
"label": "Console",
"importPath": "cpl_core.console",
"description": "cpl_core.console",
"isExtraImport": true,
"detail": "cpl_core.console",
"documentation": {}
},
{
"label": "ServiceProviderABC",
"importPath": "cpl_core.dependency_injection",
@ -704,6 +712,38 @@
"detail": "gismo_core.service.bot_service",
"documentation": {}
},
{
"label": "Optional",
"importPath": "typing",
"description": "typing",
"isExtraImport": true,
"detail": "typing",
"documentation": {}
},
{
"label": "Optional",
"importPath": "typing",
"description": "typing",
"isExtraImport": true,
"detail": "typing",
"documentation": {}
},
{
"label": "Union",
"importPath": "typing",
"description": "typing",
"isExtraImport": true,
"detail": "typing",
"documentation": {}
},
{
"label": "Union",
"importPath": "typing",
"description": "typing",
"isExtraImport": true,
"detail": "typing",
"documentation": {}
},
{
"label": "BootLogExtension",
"importPath": "modules.boot_log.boot_log_extension",
@ -736,30 +776,6 @@
"detail": "datetime",
"documentation": {}
},
{
"label": "Optional",
"importPath": "typing",
"description": "typing",
"isExtraImport": true,
"detail": "typing",
"documentation": {}
},
{
"label": "Union",
"importPath": "typing",
"description": "typing",
"isExtraImport": true,
"detail": "typing",
"documentation": {}
},
{
"label": "Union",
"importPath": "typing",
"description": "typing",
"isExtraImport": true,
"detail": "typing",
"documentation": {}
},
{
"label": "MessageServiceABC",
"importPath": "gismo_core.abc.message_service_abc",
@ -936,6 +952,38 @@
"detail": "abc",
"documentation": {}
},
{
"label": "ABC",
"importPath": "abc",
"description": "abc",
"isExtraImport": true,
"detail": "abc",
"documentation": {}
},
{
"label": "abstractmethod",
"importPath": "abc",
"description": "abc",
"isExtraImport": true,
"detail": "abc",
"documentation": {}
},
{
"label": "ABC",
"importPath": "abc",
"description": "abc",
"isExtraImport": true,
"detail": "abc",
"documentation": {}
},
{
"label": "abstractmethod",
"importPath": "abc",
"description": "abc",
"isExtraImport": true,
"detail": "abc",
"documentation": {}
},
{
"label": "discord",
"kind": 6,
@ -1009,14 +1057,6 @@
"detail": "cpl_query.extension",
"documentation": {}
},
{
"label": "List",
"importPath": "cpl_query.extension",
"description": "cpl_query.extension",
"isExtraImport": true,
"detail": "cpl_query.extension",
"documentation": {}
},
{
"label": "Context",
"importPath": "discord.ext.commands",
@ -1106,6 +1146,38 @@
"detail": "cpl_core.configuration.configuration_abc",
"documentation": {}
},
{
"label": "asyncio",
"importPath": "async_timeout",
"description": "async_timeout",
"isExtraImport": true,
"detail": "async_timeout",
"documentation": {}
},
{
"label": "asyncio",
"importPath": "async_timeout",
"description": "async_timeout",
"isExtraImport": true,
"detail": "async_timeout",
"documentation": {}
},
{
"label": "OnReadyABC",
"importPath": "modules_core.abc.on_ready_abc",
"description": "modules_core.abc.on_ready_abc",
"isExtraImport": true,
"detail": "modules_core.abc.on_ready_abc",
"documentation": {}
},
{
"label": "OnReadyABC",
"importPath": "modules_core.abc.on_ready_abc",
"description": "modules_core.abc.on_ready_abc",
"isExtraImport": true,
"detail": "modules_core.abc.on_ready_abc",
"documentation": {}
},
{
"label": "ApplicationExtensionABC",
"importPath": "cpl_core.application.application_extension_abc",
@ -1115,19 +1187,11 @@
"documentation": {}
},
{
"label": "EventsEnum",
"importPath": "modules_core.events_enum",
"description": "modules_core.events_enum",
"label": "OnMessageABC",
"importPath": "modules_core.abc.on_message_abc",
"description": "modules_core.abc.on_message_abc",
"isExtraImport": true,
"detail": "modules_core.events_enum",
"documentation": {}
},
{
"label": "EventsEnum",
"importPath": "modules_core.events_enum",
"description": "modules_core.events_enum",
"isExtraImport": true,
"detail": "modules_core.events_enum",
"detail": "modules_core.abc.on_message_abc",
"documentation": {}
},
{
@ -1233,6 +1297,15 @@
"detail": "src.gismo.application",
"documentation": {}
},
{
"label": "Main",
"kind": 6,
"importPath": "src.gismo.main",
"description": "src.gismo.main",
"peekOfCode": "class Main:\n def __init__(self):\n self._app: Optional[ApplicationABC] = None\n async def main(self):\n app_builder = ApplicationBuilder(Application)\n app_builder.use_extension(BootLogExtension)\n app_builder.use_startup(Startup)\n self._app: ApplicationABC = await app_builder.build_async()\n await self._app.run_async()\n async def stop(self):",
"detail": "src.gismo.main",
"documentation": {}
},
{
"label": "Startup",
"kind": 6,
@ -1328,7 +1401,7 @@
"kind": 6,
"importPath": "src.modules.boot_log.boot_log",
"description": "src.modules.boot_log.boot_log",
"peekOfCode": "class BootLog(ModuleABC):\n def __init__(\n self,\n config: ConfigurationABC,\n logging_st: LoggingSettings,\n logger: LoggerABC,\n bot: BotServiceABC,\n message_service: MessageServiceABC\n ):\n self._config = config",
"peekOfCode": "class BootLog(ModuleABC, OnReadyABC):\n def __init__(\n self,\n config: ConfigurationABC,\n logging_st: LoggingSettings,\n logger: LoggerABC,\n bot: BotServiceABC,\n message_service: MessageServiceABC\n ):\n self._config = config",
"detail": "src.modules.boot_log.boot_log",
"documentation": {}
},
@ -1346,7 +1419,7 @@
"kind": 6,
"importPath": "src.modules_core.abc.module_abc",
"description": "src.modules_core.abc.module_abc",
"peekOfCode": "class ModuleABC(ABC):\n @abstractmethod\n def __init__(self): pass\n # @property\n # @abstractmethod\n # def events(self) -> List[EventsEnum]: pass",
"peekOfCode": "class ModuleABC(ABC):\n @abstractmethod\n def __init__(self): pass",
"detail": "src.modules_core.abc.module_abc",
"documentation": {}
},
@ -1359,12 +1432,30 @@
"detail": "src.modules_core.abc.module_service_abc",
"documentation": {}
},
{
"label": "OnMessageABC",
"kind": 6,
"importPath": "src.modules_core.abc.on_message_abc",
"description": "src.modules_core.abc.on_message_abc",
"peekOfCode": "class OnMessageABC(ABC):\n @abstractmethod\n def __init__(self): pass\n @abstractmethod\n async def on_message(self, message: discord.Message): pass",
"detail": "src.modules_core.abc.on_message_abc",
"documentation": {}
},
{
"label": "OnReadyABC",
"kind": 6,
"importPath": "src.modules_core.abc.on_ready_abc",
"description": "src.modules_core.abc.on_ready_abc",
"peekOfCode": "class OnReadyABC(ABC):\n @abstractmethod\n def __init__(self): pass\n @abstractmethod\n async def on_ready(self): pass",
"detail": "src.modules_core.abc.on_ready_abc",
"documentation": {}
},
{
"label": "ModuleService",
"kind": 6,
"importPath": "src.modules_core.service.module_service",
"description": "src.modules_core.service.module_service",
"peekOfCode": "class ModuleService(ModuleServiceABC):\n def __init__(self, logger: LoggerABC, services: ServiceProviderABC, env: ApplicationEnvironmentABC):\n self._logger = logger\n self._services = services\n self._env = env\n self._modules: List[ModuleABC] = List()\n self._modules.extend(ModuleABC.__subclasses__())\n async def on_ready(self):\n self._logger.debug(__name__, 'Start on_ready modules')\n modules = self._modules.where(lambda m: hasattr(m, EventsEnum.on_ready.value) and callable(m.on_ready))",
"peekOfCode": "class ModuleService(ModuleServiceABC):\n def __init__(self, logger: LoggerABC, services: ServiceProviderABC, env: ApplicationEnvironmentABC):\n self._logger = logger\n self._services = services\n self._env = env\n self._modules: List[ModuleABC] = List()\n self._modules.extend(ModuleABC.__subclasses__())\n async def on_ready(self):\n self._logger.debug(__name__, 'Start on_ready modules')\n modules = self._modules.where(lambda m: issubclass(m, OnReadyABC))",
"detail": "src.modules_core.service.module_service",
"documentation": {}
},