Fixed config type
This commit is contained in:
parent
315b8e631a
commit
aa9e265dbe
@ -124,7 +124,7 @@ class ConfigurationABC(ABC):
|
|||||||
pass
|
pass
|
||||||
|
|
||||||
@abstractmethod
|
@abstractmethod
|
||||||
def get_configuration(self, search_type: T) -> Optional[T]:
|
def get_configuration(self, search_type: Type[T]) -> Optional[T]:
|
||||||
r"""Returns value from configuration by given type
|
r"""Returns value from configuration by given type
|
||||||
|
|
||||||
Parameter:
|
Parameter:
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
"Version": {
|
"Version": {
|
||||||
"Major": "2023",
|
"Major": "2023",
|
||||||
"Minor": "4",
|
"Minor": "4",
|
||||||
"Micro": "0"
|
"Micro": "0.post1"
|
||||||
},
|
},
|
||||||
"Author": "Sven Heidemann",
|
"Author": "Sven Heidemann",
|
||||||
"AuthorEmail": "sven.heidemann@sh-edraft.de",
|
"AuthorEmail": "sven.heidemann@sh-edraft.de",
|
||||||
|
@ -8,6 +8,7 @@ from cpl_core.dependency_injection import ServiceProviderABC
|
|||||||
from cpl_core.logging import LoggerABC
|
from cpl_core.logging import LoggerABC
|
||||||
from cpl_core.mailing import EMailClientABC, EMail
|
from cpl_core.mailing import EMailClientABC, EMail
|
||||||
from cpl_core.pipes import IPAddressPipe
|
from cpl_core.pipes import IPAddressPipe
|
||||||
|
from general.test_settings import TestSettings
|
||||||
from test_service import TestService
|
from test_service import TestService
|
||||||
|
|
||||||
|
|
||||||
@ -57,4 +58,13 @@ class Application(ApplicationABC):
|
|||||||
Console.write_line("scope", scope)
|
Console.write_line("scope", scope)
|
||||||
with self._services.create_scope() as s:
|
with self._services.create_scope() as s:
|
||||||
Console.write_line("with scope", s)
|
Console.write_line("with scope", s)
|
||||||
|
|
||||||
|
test_settings = self._configuration.get_configuration(TestSettings)
|
||||||
|
Console.write_line(test_settings.value)
|
||||||
|
Console.write_line("reload config")
|
||||||
|
self._configuration.add_json_file(f"appsettings.json")
|
||||||
|
self._configuration.add_json_file(f"appsettings.{self._environment.environment_name}.json")
|
||||||
|
self._configuration.add_json_file(f"appsettings.{self._environment.host_name}.json", optional=True)
|
||||||
|
test_settings1 = self._configuration.get_configuration(TestSettings)
|
||||||
|
Console.write_line(test_settings1.value)
|
||||||
# self.test_send_mail()
|
# self.test_send_mail()
|
||||||
|
@ -29,5 +29,9 @@
|
|||||||
"UseUnicode": "true",
|
"UseUnicode": "true",
|
||||||
"Buffered": "true",
|
"Buffered": "true",
|
||||||
"AuthPlugin": "mysql_native_password"
|
"AuthPlugin": "mysql_native_password"
|
||||||
|
},
|
||||||
|
|
||||||
|
"TestSettings": {
|
||||||
|
"Value": 20
|
||||||
}
|
}
|
||||||
}
|
}
|
6
tests/custom/general/src/general/test_settings.py
Normal file
6
tests/custom/general/src/general/test_settings.py
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
from cpl_core.configuration import ConfigurationModelABC
|
||||||
|
|
||||||
|
|
||||||
|
class TestSettings(ConfigurationModelABC):
|
||||||
|
def __init__(self, value: int = None):
|
||||||
|
self.value = value
|
Loading…
Reference in New Issue
Block a user