Removed application host

This commit is contained in:
2021-03-19 14:15:53 +01:00
parent 132d2805ee
commit e2e763a424
46 changed files with 210 additions and 281 deletions

View File

@@ -2,7 +2,10 @@ import time
from typing import Optional
from cpl.application.application_abc import ApplicationABC
from cpl.application.application_runtime_abc import ApplicationRuntimeABC
from cpl.configuration.configuration_abc import ConfigurationABC
from cpl.console.console import Console
from cpl.dependency_injection.service_provider_abc import ServiceProviderABC
from cpl.logging.logger_abc import LoggerABC
from cpl.mailing.email import EMail
from cpl.mailing.email_client_abc import EMailClientABC
@@ -10,8 +13,8 @@ from cpl.mailing.email_client_abc import EMailClientABC
class Application(ApplicationABC):
def __init__(self):
ApplicationABC.__init__(self)
def __init__(self, config: ConfigurationABC, runtime: ApplicationRuntimeABC, services: ServiceProviderABC):
ApplicationABC.__init__(self, config, runtime, services)
self._logger: Optional[LoggerABC] = None
self._mailer: Optional[EMailClientABC] = None

View File

@@ -1,12 +1,12 @@
from cpl.application.application_builder import ApplicationBuilder
from tests.custom.general.application import Application
from tests.custom.general.startup import Startup
def main():
app = Application()
app.use_startup(Startup)
app.build()
app.run()
app_builder = ApplicationBuilder(Application)
app_builder.use_startup(Startup)
app_builder.build().run()
if __name__ == '__main__':

View File

@@ -1,7 +1,4 @@
from typing import Optional
from cpl.application.application_host import ApplicationHost
from cpl.application.application_host_abc import ApplicationHostABC
from cpl.application.application_runtime_abc import ApplicationRuntimeABC
from cpl.application.startup_abc import StartupABC
from cpl.configuration.configuration_abc import ConfigurationABC
from cpl.database.context.database_context import DatabaseContext
@@ -16,20 +13,10 @@ from cpl.utils.credential_manager import CredentialManager
class Startup(StartupABC):
def __init__(self):
StartupABC.__init__(self)
def __init__(self, config: ConfigurationABC, runtime: ApplicationRuntimeABC, services: ServiceProviderABC):
StartupABC.__init__(self, config, runtime, services)
self._app_host: Optional[ApplicationHostABC] = None
self._configuration: Optional[ConfigurationABC] = None
self._services: Optional[ServiceProviderABC] = None
def create_application_host(self) -> ApplicationHostABC:
self._app_host = ApplicationHost()
self._configuration = self._app_host.configuration
self._services = self._app_host.services
return self._app_host
def create_configuration(self) -> ConfigurationABC:
def configure_configuration(self) -> ConfigurationABC:
self._configuration.add_environment_variables('PYTHON_')
self._configuration.add_environment_variables('CPL_')
self._configuration.add_console_arguments()
@@ -39,7 +26,7 @@ class Startup(StartupABC):
return self._configuration
def create_services(self) -> ServiceProviderABC:
def configure_services(self) -> ServiceProviderABC:
# Create and connect to database
db_settings: DatabaseSettings = self._configuration.get_configuration(DatabaseSettings)
self._services.add_db_context(DatabaseContext)