summaryrefslogtreecommitdiffstats
path: root/low-can-binding/utils
diff options
context:
space:
mode:
authorRomain Forlot <romain.forlot@iot.bzh>2019-11-20 15:31:14 +0100
committerRomain Forlot <romain.forlot@iot.bzh>2020-01-09 15:55:03 +0100
commit04b7efcdd1a8dfdf461c78d083aabee5445e54bd (patch)
treeccb146ebee3324b2e220430d476b1d9addaa451c /low-can-binding/utils
parent47322aceac11e3142af4339260a74ccfba675e17 (diff)
can-bus: Use configuration from JSON file
Use configuration from JSON file instead of the old INI file. Now all configuration files lies within the binding tree. Bug-AGL: SPEC-2988 Change-Id: Id986d19751db958ad5cf3b7f2b2c5443d4ceb062 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Diffstat (limited to 'low-can-binding/utils')
-rw-r--r--low-can-binding/utils/config-parser.cpp67
-rw-r--r--low-can-binding/utils/config-parser.hpp44
2 files changed, 0 insertions, 111 deletions
diff --git a/low-can-binding/utils/config-parser.cpp b/low-can-binding/utils/config-parser.cpp
deleted file mode 100644
index 820c6d9b..00000000
--- a/low-can-binding/utils/config-parser.cpp
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * Copyright (C) 2015, 2016 , 2017, 2018, 2019 "IoT\.bzh"
- * Author "Romain Forlot" <romain.forlot@iot.bzh>
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include "config-parser.hpp"
-
-#include "../binding/low-can-hat.hpp"
-
-namespace utils
-{
- /// @brief constructor using path to file
- config_parser_t::config_parser_t(std::string conf_file)
- : filepath_{conf_file}, config_content_{}
- {
- config_content_.read_file(conf_file);
- }
-
- const std::string& config_parser_t::filepath() const
- {
- return filepath_;
- }
-
- /// @brief read the conf_file_ and parse it into an INIReader object
- /// to search into later.
- bool config_parser_t::check_conf()
- {
- if (config_content_.size() <= 0)
- {
- AFB_ERROR("Can't load the INI config file: /etc/dev-mapping.conf.");
- return false;
- }
- AFB_DEBUG("Configuration file parsed");
- return true;
- }
-
- /// @brief Public method to access devices_name_ vector. If vector size equal 0
- /// then it will parses the configuration file content to fill it. It could be empty even
- /// after parsing if content file just don't have a correct "canbus" directive so you
- /// have to test the returned value.
- ///
- /// @return A const vector with string of linux CAN devices.
- const std::vector<std::pair<std::string, std::string> > config_parser_t::get_devices_name()
- {
- std::vector<std::pair<std::string, std::string> > devices_name;
-
- std::map<std::string, std::string> bus_mapping = config_content_.get_keys("CANbus-mapping");
- for(const auto& busIt : bus_mapping )
- {
- devices_name.push_back(std::make_pair(busIt.first, busIt.second));
- }
-
- return devices_name;
- }
-}
diff --git a/low-can-binding/utils/config-parser.hpp b/low-can-binding/utils/config-parser.hpp
deleted file mode 100644
index 4553be2d..00000000
--- a/low-can-binding/utils/config-parser.hpp
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright (C) 2015, 2016 , 2017, 2018, 2019 "IoT\.bzh"
- * Author "Romain Forlot" <romain.forlot@iot.bzh>
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#pragma once
-
-#include <string>
-#include <vector>
-#include <utility>
-#include "ini-config.hpp"
-
-namespace utils
-{
- /// @brief A configuration file parser that handle INI configuration
- /// file format.
- class config_parser_t
- {
- private:
- const std::string filepath_; /*!< filepath_ - Path to the config file*/
- ini_config config_content_; /*!< config_content_ - Parsed content of INI file.*/
-
- public:
- config_parser_t(config_parser_t&&) = default;
- config_parser_t(const config_parser_t&) = default;
- explicit config_parser_t(std::string conf_file);
-
- const std::string& filepath() const;
- bool check_conf();
- const std::vector<std::pair<std::string, std::string> > get_devices_name();
- };
-}