Improved application

This commit is contained in:
2021-03-04 07:15:48 +01:00
parent aa4931fd18
commit 226123a81f
2 changed files with 17 additions and 16 deletions

View File

@@ -2,6 +2,7 @@ from abc import ABC, abstractmethod
from typing import Type, Optional
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.console.console import Console
@@ -14,8 +15,9 @@ class ApplicationABC(ABC):
def __init__(self):
self._startup: Optional[StartupABC] = None
self._app_host: Optional[ApplicationHostABC] = None
self._services: Optional[ServiceProviderABC] = None
self._configuration: Optional[ConfigurationABC] = None
self._runtime: Optional[ApplicationRuntimeABC] = None
self._services: Optional[ServiceProviderABC] = None
def use_startup(self, startup: Type[StartupABC]):
self._startup = startup()
@@ -23,6 +25,7 @@ class ApplicationABC(ABC):
def build(self):
if self._startup is not None:
self._app_host = self._startup.create_application_host()
self._runtime = self._app_host.application_runtime
self._configuration = self._startup.create_configuration()
self._services = self._startup.create_services()