Improved service providing and app hosting

This commit is contained in:
2020-11-26 18:58:08 +01:00
parent cd7c12bba4
commit c6d1dce577
11 changed files with 118 additions and 79 deletions

View File

@@ -1,11 +1,12 @@
import sys
from datetime import datetime
from sh_edraft.hosting.hosting_environment import HostingEnvironment
from sh_edraft.configuration.configuration import Configuration
from sh_edraft.configuration.base.configuration_base import ConfigurationBase
from sh_edraft.hosting.application_runtime import ApplicationRuntime
from sh_edraft.hosting.base.application_host_base import ApplicationHostBase
from sh_edraft.hosting.base.environment_base import EnvironmentBase
from sh_edraft.service.base import ServiceProviderBase
from sh_edraft.service.service_provider import ServiceProvider
from sh_edraft.service.base.service_provider_base import ServiceProviderBase
class ApplicationHost(ApplicationHostBase):
@@ -13,41 +14,25 @@ class ApplicationHost(ApplicationHostBase):
def __init__(self, name: str):
ApplicationHostBase.__init__(self)
self._name: str = name
self._environment = HostingEnvironment()
self._args: list[str] = sys.argv
self._services = ServiceProvider(self)
self._config = Configuration()
self._app_runtime = ApplicationRuntime(self._config)
self._services = ServiceProvider(self._app_runtime)
self._start_time: datetime = datetime.now()
self._end_time: datetime = datetime.now()
@property
def name(self) -> str:
return self._name
@property
def environment(self) -> EnvironmentBase:
return self._environment
@property
def end_time(self) -> datetime:
return self._end_time
def configuration(self) -> ConfigurationBase:
return self._config
@end_time.setter
def end_time(self, end_time: datetime):
self._end_time = end_time
@property
def start_time(self) -> datetime:
return self._start_time
@start_time.setter
def start_time(self, start_time: datetime):
self._start_time = start_time
@property
def date_time_now(self) -> datetime:
return datetime.now()
@property
def services(self) -> ServiceProviderBase:
return self._services
def create(self): pass