From 8dee4d8f70b662b480e1871ccc7cecf4e34af5fb Mon Sep 17 00:00:00 2001 From: Sven Heidemann Date: Sat, 15 Apr 2023 11:47:13 +0200 Subject: [PATCH] Fixed config type --- src/cpl_core/__init__.py | 4 ++-- src/cpl_core/application/__init__.py | 4 ++-- src/cpl_core/configuration/__init__.py | 4 ++-- src/cpl_core/configuration/configuration_abc.py | 2 +- src/cpl_core/console/__init__.py | 4 ++-- src/cpl_core/cpl-core.json | 2 +- src/cpl_core/database/__init__.py | 4 ++-- src/cpl_core/database/connection/__init__.py | 4 ++-- src/cpl_core/database/context/__init__.py | 4 ++-- src/cpl_core/dependency_injection/__init__.py | 4 ++-- src/cpl_core/environment/__init__.py | 4 ++-- src/cpl_core/logging/__init__.py | 4 ++-- src/cpl_core/mailing/__init__.py | 4 ++-- src/cpl_core/pipes/__init__.py | 4 ++-- src/cpl_core/time/__init__.py | 4 ++-- src/cpl_core/utils/__init__.py | 4 ++-- tests/custom/general/src/general/application.py | 10 ++++++++++ .../general/src/general/appsettings.edrafts-pc.json | 4 ++++ tests/custom/general/src/general/test_settings.py | 6 ++++++ 19 files changed, 50 insertions(+), 30 deletions(-) create mode 100644 tests/custom/general/src/general/test_settings.py diff --git a/src/cpl_core/__init__.py b/src/cpl_core/__init__.py index 217cdd72..33f82aae 100644 --- a/src/cpl_core/__init__.py +++ b/src/cpl_core/__init__.py @@ -15,7 +15,7 @@ __title__ = "cpl_core" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2020 - 2023 sh-edraft.de" -__version__ = "2023.4.0" +__version__ = "2023.4.0.post1" from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="2023", minor="4", micro="0") +version_info = VersionInfo(major="2023", minor="4", micro="0.post1") diff --git a/src/cpl_core/application/__init__.py b/src/cpl_core/application/__init__.py index b0b3ed12..3a87cd69 100644 --- a/src/cpl_core/application/__init__.py +++ b/src/cpl_core/application/__init__.py @@ -15,7 +15,7 @@ __title__ = "cpl_core.application" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2020 - 2023 sh-edraft.de" -__version__ = "2023.4.0" +__version__ = "2023.4.0.post1" from collections import namedtuple @@ -29,4 +29,4 @@ from .startup_abc import StartupABC from .startup_extension_abc import StartupExtensionABC VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="2023", minor="4", micro="0") +version_info = VersionInfo(major="2023", minor="4", micro="0.post1") diff --git a/src/cpl_core/configuration/__init__.py b/src/cpl_core/configuration/__init__.py index 0d6466ac..1c84582e 100644 --- a/src/cpl_core/configuration/__init__.py +++ b/src/cpl_core/configuration/__init__.py @@ -15,7 +15,7 @@ __title__ = "cpl_core.configuration" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2020 - 2023 sh-edraft.de" -__version__ = "2023.4.0" +__version__ = "2023.4.0.post1" from collections import namedtuple @@ -35,4 +35,4 @@ from .validator_abc import ValidatorABC from .variable_argument import VariableArgument VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="2023", minor="4", micro="0") +version_info = VersionInfo(major="2023", minor="4", micro="0.post1") diff --git a/src/cpl_core/configuration/configuration_abc.py b/src/cpl_core/configuration/configuration_abc.py index 96ae8401..1f4c8e3e 100644 --- a/src/cpl_core/configuration/configuration_abc.py +++ b/src/cpl_core/configuration/configuration_abc.py @@ -124,7 +124,7 @@ class ConfigurationABC(ABC): pass @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 Parameter: diff --git a/src/cpl_core/console/__init__.py b/src/cpl_core/console/__init__.py index 5ce225db..1f85043b 100644 --- a/src/cpl_core/console/__init__.py +++ b/src/cpl_core/console/__init__.py @@ -15,7 +15,7 @@ __title__ = "cpl_core.console" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2020 - 2023 sh-edraft.de" -__version__ = "2023.4.0" +__version__ = "2023.4.0.post1" from collections import namedtuple @@ -28,4 +28,4 @@ from .foreground_color_enum import ForegroundColorEnum from .spinner_thread import SpinnerThread VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="2023", minor="4", micro="0") +version_info = VersionInfo(major="2023", minor="4", micro="0.post1") diff --git a/src/cpl_core/cpl-core.json b/src/cpl_core/cpl-core.json index 137ccad1..eccc2894 100644 --- a/src/cpl_core/cpl-core.json +++ b/src/cpl_core/cpl-core.json @@ -4,7 +4,7 @@ "Version": { "Major": "2023", "Minor": "4", - "Micro": "0" + "Micro": "0.post1" }, "Author": "Sven Heidemann", "AuthorEmail": "sven.heidemann@sh-edraft.de", diff --git a/src/cpl_core/database/__init__.py b/src/cpl_core/database/__init__.py index beecbfd7..2ddbf2ce 100644 --- a/src/cpl_core/database/__init__.py +++ b/src/cpl_core/database/__init__.py @@ -15,7 +15,7 @@ __title__ = "cpl_core.database" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2020 - 2023 sh-edraft.de" -__version__ = "2023.4.0" +__version__ = "2023.4.0.post1" from collections import namedtuple @@ -26,4 +26,4 @@ from .database_settings import DatabaseSettings from .table_abc import TableABC VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="2023", minor="4", micro="0") +version_info = VersionInfo(major="2023", minor="4", micro="0.post1") diff --git a/src/cpl_core/database/connection/__init__.py b/src/cpl_core/database/connection/__init__.py index 1f13709c..5354b745 100644 --- a/src/cpl_core/database/connection/__init__.py +++ b/src/cpl_core/database/connection/__init__.py @@ -15,7 +15,7 @@ __title__ = "cpl_core.database.connection" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2020 - 2023 sh-edraft.de" -__version__ = "2023.4.0" +__version__ = "2023.4.0.post1" from collections import namedtuple @@ -25,4 +25,4 @@ from .database_connection import DatabaseConnection from .database_connection_abc import DatabaseConnectionABC VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="2023", minor="4", micro="0") +version_info = VersionInfo(major="2023", minor="4", micro="0.post1") diff --git a/src/cpl_core/database/context/__init__.py b/src/cpl_core/database/context/__init__.py index dc42a7d5..7b72b757 100644 --- a/src/cpl_core/database/context/__init__.py +++ b/src/cpl_core/database/context/__init__.py @@ -15,7 +15,7 @@ __title__ = "cpl_core.database.context" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2020 - 2023 sh-edraft.de" -__version__ = "2023.4.0" +__version__ = "2023.4.0.post1" from collections import namedtuple @@ -25,4 +25,4 @@ from .database_context import DatabaseContext from .database_context_abc import DatabaseContextABC VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="2023", minor="4", micro="0") +version_info = VersionInfo(major="2023", minor="4", micro="0.post1") diff --git a/src/cpl_core/dependency_injection/__init__.py b/src/cpl_core/dependency_injection/__init__.py index cf2c4ad1..b5474ba1 100644 --- a/src/cpl_core/dependency_injection/__init__.py +++ b/src/cpl_core/dependency_injection/__init__.py @@ -15,7 +15,7 @@ __title__ = "cpl_core.dependency_injection" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2020 - 2023 sh-edraft.de" -__version__ = "2023.4.0" +__version__ = "2023.4.0.post1" from collections import namedtuple @@ -31,4 +31,4 @@ from .service_provider import ServiceProvider from .service_provider_abc import ServiceProviderABC VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="2023", minor="4", micro="0") +version_info = VersionInfo(major="2023", minor="4", micro="0.post1") diff --git a/src/cpl_core/environment/__init__.py b/src/cpl_core/environment/__init__.py index ce175378..2e0a30cb 100644 --- a/src/cpl_core/environment/__init__.py +++ b/src/cpl_core/environment/__init__.py @@ -15,7 +15,7 @@ __title__ = "cpl_core.environment" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2020 - 2023 sh-edraft.de" -__version__ = "2023.4.0" +__version__ = "2023.4.0.post1" from collections import namedtuple @@ -26,4 +26,4 @@ from .environment_name_enum import EnvironmentNameEnum from .application_environment import ApplicationEnvironment VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="2023", minor="4", micro="0") +version_info = VersionInfo(major="2023", minor="4", micro="0.post1") diff --git a/src/cpl_core/logging/__init__.py b/src/cpl_core/logging/__init__.py index ff387229..5c812d5a 100644 --- a/src/cpl_core/logging/__init__.py +++ b/src/cpl_core/logging/__init__.py @@ -15,7 +15,7 @@ __title__ = "cpl_core.logging" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2020 - 2023 sh-edraft.de" -__version__ = "2023.4.0" +__version__ = "2023.4.0.post1" from collections import namedtuple @@ -28,4 +28,4 @@ from .logging_settings import LoggingSettings from .logging_settings_name_enum import LoggingSettingsNameEnum VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="2023", minor="4", micro="0") +version_info = VersionInfo(major="2023", minor="4", micro="0.post1") diff --git a/src/cpl_core/mailing/__init__.py b/src/cpl_core/mailing/__init__.py index 6876693e..2ae416dd 100644 --- a/src/cpl_core/mailing/__init__.py +++ b/src/cpl_core/mailing/__init__.py @@ -15,7 +15,7 @@ __title__ = "cpl_core.mailing" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2020 - 2023 sh-edraft.de" -__version__ = "2023.4.0" +__version__ = "2023.4.0.post1" from collections import namedtuple @@ -28,4 +28,4 @@ from .email_client_settings import EMailClientSettings from .email_client_settings_name_enum import EMailClientSettingsNameEnum VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="2023", minor="4", micro="0") +version_info = VersionInfo(major="2023", minor="4", micro="0.post1") diff --git a/src/cpl_core/pipes/__init__.py b/src/cpl_core/pipes/__init__.py index ed7a54cf..956b2267 100644 --- a/src/cpl_core/pipes/__init__.py +++ b/src/cpl_core/pipes/__init__.py @@ -15,7 +15,7 @@ __title__ = "cpl_core.pipes" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2020 - 2023 sh-edraft.de" -__version__ = "2023.4.0" +__version__ = "2023.4.0.post1" from collections import namedtuple @@ -26,4 +26,4 @@ from .ip_address_pipe import IPAddressPipe from .pipe_abc import PipeABC VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="2023", minor="4", micro="0") +version_info = VersionInfo(major="2023", minor="4", micro="0.post1") diff --git a/src/cpl_core/time/__init__.py b/src/cpl_core/time/__init__.py index 070578f0..100defe5 100644 --- a/src/cpl_core/time/__init__.py +++ b/src/cpl_core/time/__init__.py @@ -15,7 +15,7 @@ __title__ = "cpl_core.time" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2020 - 2023 sh-edraft.de" -__version__ = "2023.4.0" +__version__ = "2023.4.0.post1" from collections import namedtuple @@ -25,4 +25,4 @@ from .time_format_settings import TimeFormatSettings from .time_format_settings_names_enum import TimeFormatSettingsNamesEnum VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="2023", minor="4", micro="0") +version_info = VersionInfo(major="2023", minor="4", micro="0.post1") diff --git a/src/cpl_core/utils/__init__.py b/src/cpl_core/utils/__init__.py index 8dde8c3b..27e32634 100644 --- a/src/cpl_core/utils/__init__.py +++ b/src/cpl_core/utils/__init__.py @@ -15,7 +15,7 @@ __title__ = "cpl_core.utils" __author__ = "Sven Heidemann" __license__ = "MIT" __copyright__ = "Copyright (c) 2020 - 2023 sh-edraft.de" -__version__ = "2023.4.0" +__version__ = "2023.4.0.post1" from collections import namedtuple @@ -26,4 +26,4 @@ from .string import String from .pip import Pip VersionInfo = namedtuple("VersionInfo", "major minor micro") -version_info = VersionInfo(major="2023", minor="4", micro="0") +version_info = VersionInfo(major="2023", minor="4", micro="0.post1") diff --git a/tests/custom/general/src/general/application.py b/tests/custom/general/src/general/application.py index f7f3ff72..2c8f23b8 100644 --- a/tests/custom/general/src/general/application.py +++ b/tests/custom/general/src/general/application.py @@ -8,6 +8,7 @@ from cpl_core.dependency_injection import ServiceProviderABC from cpl_core.logging import LoggerABC from cpl_core.mailing import EMailClientABC, EMail from cpl_core.pipes import IPAddressPipe +from general.test_settings import TestSettings from test_service import TestService @@ -57,4 +58,13 @@ class Application(ApplicationABC): Console.write_line("scope", scope) with self._services.create_scope() as 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() diff --git a/tests/custom/general/src/general/appsettings.edrafts-pc.json b/tests/custom/general/src/general/appsettings.edrafts-pc.json index 5d40a040..996cbe72 100644 --- a/tests/custom/general/src/general/appsettings.edrafts-pc.json +++ b/tests/custom/general/src/general/appsettings.edrafts-pc.json @@ -29,5 +29,9 @@ "UseUnicode": "true", "Buffered": "true", "AuthPlugin": "mysql_native_password" + }, + + "TestSettings": { + "Value": 20 } } \ No newline at end of file diff --git a/tests/custom/general/src/general/test_settings.py b/tests/custom/general/src/general/test_settings.py new file mode 100644 index 00000000..a4090edd --- /dev/null +++ b/tests/custom/general/src/general/test_settings.py @@ -0,0 +1,6 @@ +from cpl_core.configuration import ConfigurationModelABC + + +class TestSettings(ConfigurationModelABC): + def __init__(self, value: int = None): + self.value = value