summaryrefslogtreecommitdiff
path: root/implementation/configuration/src/configuration_plugin_impl.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'implementation/configuration/src/configuration_plugin_impl.cpp')
-rw-r--r--implementation/configuration/src/configuration_plugin_impl.cpp38
1 files changed, 18 insertions, 20 deletions
diff --git a/implementation/configuration/src/configuration_plugin_impl.cpp b/implementation/configuration/src/configuration_plugin_impl.cpp
index df175f3..2293c09 100644
--- a/implementation/configuration/src/configuration_plugin_impl.cpp
+++ b/implementation/configuration/src/configuration_plugin_impl.cpp
@@ -1,4 +1,4 @@
-// Copyright (C) 2019 Bayerische Motoren Werke Aktiengesellschaft (BMW AG)
+// Copyright (C) 2019-2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG)
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
@@ -22,31 +22,29 @@ configuration_plugin_impl::~configuration_plugin_impl() {
}
std::shared_ptr<configuration>
-configuration_plugin_impl::get_configuration(const std::string &_name) {
+configuration_plugin_impl::get_configuration(const std::string &_name,
+ const std::string &_path) {
+
std::lock_guard<std::mutex> its_lock(mutex_);
if (!default_) {
- default_ = std::make_shared<cfg::configuration_impl>();
+ default_ = std::make_shared<cfg::configuration_impl>(_path);
default_->load(_name);
}
+ return default_;
-#ifdef VSOMEIP_ENABLE_CONFIGURATION_OVERLAYS
- auto its_configuration(default_);
- if (its_configuration->has_overlay(_name)) {
- VSOMEIP_INFO << "Loading configuration overlay for \"" << _name << "\"";
- auto its_iterator = configurations_.find(_name);
- if (its_iterator != configurations_.end()) {
- its_configuration = its_iterator->second;
- } else {
- its_configuration = std::make_shared<cfg::configuration_impl>(
- *(its_configuration.get()));
- its_configuration->load_overlay(_name);
- configurations_[_name] = its_configuration;
- }
+#if 0
+ std::shared_ptr<cfg::configuration_impl> its_configuration;
+ auto its_iterator = configurations_.find(_name);
+ if (its_iterator != configurations_.end()) {
+ its_configuration = its_iterator->second;
+ } else {
+ its_configuration = std::make_shared<cfg::configuration_impl>(_path);
+ its_configuration->load(_name);
+ configurations_[_name] = its_configuration;
}
- return its_configuration;
-#else
- return default_;
-#endif // VSOMEIP_ENABLE_CONFIGURATION_OVERLAYS
+
+ return (its_configuration);
+#endif
}
} // namespace vsomeip_v3