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

@@ -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.console_argument import ConsoleArgument
from cpl.configuration.configuration_abc import ConfigurationABC
@@ -25,28 +22,17 @@ from cpl_cli.publish.publisher_abc import PublisherABC
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
self._application_runtime.set_runtime_directory(__file__)
def create_application_host(self) -> ApplicationHostABC:
self._app_host = ApplicationHost()
def configure_configuration(self) -> ConfigurationABC:
self._configuration.argument_error_function = Error.error
self._app_host.application_runtime.set_runtime_directory(__file__)
self._app_host.console_argument_error_function(Error.error)
self._configuration = self._app_host.configuration
self._services = self._app_host.services
return self._app_host
def create_configuration(self) -> ConfigurationABC:
self._configuration.add_environment_variables('PYTHON_')
self._configuration.add_environment_variables('CPL_')
self._configuration.add_json_file('appsettings.json', path=self._app_host.application_runtime.runtime_directory,
self._configuration.add_json_file('appsettings.json', path=self._application_runtime.runtime_directory,
optional=False, output=False)
self._configuration.add_console_argument(ConsoleArgument('', 'build', ['b', 'B'], ''))
self._configuration.add_console_argument(ConsoleArgument('', 'generate', ['g', 'G'], '', console_arguments=[
@@ -73,7 +59,7 @@ class Startup(StartupABC):
return self._configuration
def create_services(self) -> ServiceProviderABC:
def configure_services(self) -> ServiceProviderABC:
self._services.add_singleton(CommandHandler)
self._services.add_transient(PublisherABC, PublisherService)