Moved String helper functions to service class
This commit is contained in:
@@ -8,10 +8,10 @@ target_sources(
|
|||||||
${CMAKE_CURRENT_SOURCE_DIR}/Services/TargetControllerService.cpp
|
${CMAKE_CURRENT_SOURCE_DIR}/Services/TargetControllerService.cpp
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/Services/PathService.cpp
|
${CMAKE_CURRENT_SOURCE_DIR}/Services/PathService.cpp
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/Services/ProcessService.cpp
|
${CMAKE_CURRENT_SOURCE_DIR}/Services/ProcessService.cpp
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/Services/StringService.cpp
|
||||||
|
|
||||||
# Helpers & other
|
# Helpers & other
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/Logger/Logger.cpp
|
${CMAKE_CURRENT_SOURCE_DIR}/Logger/Logger.cpp
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/Helpers/String.cpp
|
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/Helpers/EpollInstance.cpp
|
${CMAKE_CURRENT_SOURCE_DIR}/Helpers/EpollInstance.cpp
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/Helpers/EventFdNotifier.cpp
|
${CMAKE_CURRENT_SOURCE_DIR}/Helpers/EventFdNotifier.cpp
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/Helpers/ConditionVariableNotifier.cpp
|
${CMAKE_CURRENT_SOURCE_DIR}/Helpers/ConditionVariableNotifier.cpp
|
||||||
|
|||||||
@@ -1,11 +1,13 @@
|
|||||||
#include "ProjectConfig.hpp"
|
#include "ProjectConfig.hpp"
|
||||||
|
|
||||||
#include "src/Helpers/String.hpp"
|
#include "src/Services/StringService.hpp"
|
||||||
#include "src/Logger/Logger.hpp"
|
#include "src/Logger/Logger.hpp"
|
||||||
#include "src/Exceptions/InvalidConfig.hpp"
|
#include "src/Exceptions/InvalidConfig.hpp"
|
||||||
|
|
||||||
namespace Bloom
|
namespace Bloom
|
||||||
{
|
{
|
||||||
|
using Services::StringService;
|
||||||
|
|
||||||
ProjectConfig::ProjectConfig(const YAML::Node& configNode) {
|
ProjectConfig::ProjectConfig(const YAML::Node& configNode) {
|
||||||
if (!configNode["environments"]) {
|
if (!configNode["environments"]) {
|
||||||
throw Exceptions::InvalidConfig(
|
throw Exceptions::InvalidConfig(
|
||||||
@@ -28,7 +30,7 @@ namespace Bloom
|
|||||||
try {
|
try {
|
||||||
environmentName = environmentIt->first.as<std::string>();
|
environmentName = environmentIt->first.as<std::string>();
|
||||||
|
|
||||||
if (!String::isAscii(environmentName.value())) {
|
if (!StringService::isAscii(environmentName.value())) {
|
||||||
throw Exceptions::InvalidConfig(
|
throw Exceptions::InvalidConfig(
|
||||||
"Environment name ('" + environmentName.value() + "') is not in ASCII form."
|
"Environment name ('" + environmentName.value() + "') is not in ASCII form."
|
||||||
);
|
);
|
||||||
@@ -132,10 +134,10 @@ namespace Bloom
|
|||||||
throw Exceptions::InvalidConfig("No target name found.");
|
throw Exceptions::InvalidConfig("No target name found.");
|
||||||
}
|
}
|
||||||
|
|
||||||
this->name = String::asciiToLower(targetNode["name"].as<std::string>());
|
this->name = StringService::asciiToLower(targetNode["name"].as<std::string>());
|
||||||
|
|
||||||
if (targetNode["variantName"]) {
|
if (targetNode["variantName"]) {
|
||||||
this->variantName = String::asciiToLower(targetNode["variantName"].as<std::string>());
|
this->variantName = StringService::asciiToLower(targetNode["variantName"].as<std::string>());
|
||||||
}
|
}
|
||||||
|
|
||||||
this->targetNode = targetNode;
|
this->targetNode = targetNode;
|
||||||
@@ -146,7 +148,7 @@ namespace Bloom
|
|||||||
throw Exceptions::InvalidConfig("No debug tool name found.");
|
throw Exceptions::InvalidConfig("No debug tool name found.");
|
||||||
}
|
}
|
||||||
|
|
||||||
this->name = String::asciiToLower(debugToolNode["name"].as<std::string>());
|
this->name = StringService::asciiToLower(debugToolNode["name"].as<std::string>());
|
||||||
|
|
||||||
if (debugToolNode["releasePostDebugSession"]) {
|
if (debugToolNode["releasePostDebugSession"]) {
|
||||||
this->releasePostDebugSession = debugToolNode["releasePostDebugSession"].as<bool>(
|
this->releasePostDebugSession = debugToolNode["releasePostDebugSession"].as<bool>(
|
||||||
@@ -162,7 +164,7 @@ namespace Bloom
|
|||||||
throw Exceptions::InvalidConfig("No debug server name found.");
|
throw Exceptions::InvalidConfig("No debug server name found.");
|
||||||
}
|
}
|
||||||
|
|
||||||
this->name = String::asciiToLower(debugServerNode["name"].as<std::string>());
|
this->name = StringService::asciiToLower(debugServerNode["name"].as<std::string>());
|
||||||
this->debugServerNode = debugServerNode;
|
this->debugServerNode = debugServerNode;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
#include "String.hpp"
|
#include "StringService.hpp"
|
||||||
|
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
#include <cctype>
|
#include <cctype>
|
||||||
#include <sstream>
|
#include <sstream>
|
||||||
#include <iomanip>
|
#include <iomanip>
|
||||||
|
|
||||||
namespace Bloom
|
namespace Bloom::Services
|
||||||
{
|
{
|
||||||
std::string String::asciiToLower(std::string str) {
|
std::string StringService::asciiToLower(std::string str) {
|
||||||
std::transform(str.begin(), str.end(), str.begin(), [] (unsigned char character) {
|
std::transform(str.begin(), str.end(), str.begin(), [] (unsigned char character) {
|
||||||
return std::tolower(character);
|
return std::tolower(character);
|
||||||
});
|
});
|
||||||
@@ -15,7 +15,7 @@ namespace Bloom
|
|||||||
return str;
|
return str;
|
||||||
}
|
}
|
||||||
|
|
||||||
std::string String::asciiToUpper(std::string str) {
|
std::string StringService::asciiToUpper(std::string str) {
|
||||||
std::transform(str.begin(), str.end(), str.begin(), [] (unsigned char character) {
|
std::transform(str.begin(), str.end(), str.begin(), [] (unsigned char character) {
|
||||||
return std::toupper(character);
|
return std::toupper(character);
|
||||||
});
|
});
|
||||||
@@ -23,7 +23,7 @@ namespace Bloom
|
|||||||
return str;
|
return str;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool String::isAscii(const std::string& str) {
|
bool StringService::isAscii(const std::string& str) {
|
||||||
return !std::any_of(str.begin(), str.end(), [] (unsigned char character) {
|
return !std::any_of(str.begin(), str.end(), [] (unsigned char character) {
|
||||||
return character > 127;
|
return character > 127;
|
||||||
});
|
});
|
||||||
@@ -3,9 +3,9 @@
|
|||||||
#include <string>
|
#include <string>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
namespace Bloom
|
namespace Bloom::Services
|
||||||
{
|
{
|
||||||
class String
|
class StringService
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
static std::string asciiToLower(std::string str);
|
static std::string asciiToLower(std::string str);
|
||||||
@@ -1,7 +1,8 @@
|
|||||||
#include "Avr8TargetConfig.hpp"
|
#include "Avr8TargetConfig.hpp"
|
||||||
|
|
||||||
#include "src/Helpers/String.hpp"
|
|
||||||
#include "src/Services/PathService.hpp"
|
#include "src/Services/PathService.hpp"
|
||||||
|
#include "src/Services/StringService.hpp"
|
||||||
|
|
||||||
#include "src/Exceptions/InvalidConfig.hpp"
|
#include "src/Exceptions/InvalidConfig.hpp"
|
||||||
|
|
||||||
namespace Bloom::Targets::Microchip::Avr::Avr8Bit
|
namespace Bloom::Targets::Microchip::Avr::Avr8Bit
|
||||||
@@ -17,7 +18,7 @@ namespace Bloom::Targets::Microchip::Avr::Avr8Bit
|
|||||||
throw InvalidConfig("Missing physical interface config parameter for AVR8 target.");
|
throw InvalidConfig("Missing physical interface config parameter for AVR8 target.");
|
||||||
}
|
}
|
||||||
|
|
||||||
const auto physicalInterfaceName = String::asciiToLower(targetNode["physicalInterface"].as<std::string>());
|
const auto physicalInterfaceName = Services::StringService::asciiToLower(targetNode["physicalInterface"].as<std::string>());
|
||||||
const auto physicalInterfaceIt = Avr8TargetConfig::debugPhysicalInterfacesByConfigName.find(
|
const auto physicalInterfaceIt = Avr8TargetConfig::debugPhysicalInterfacesByConfigName.find(
|
||||||
physicalInterfaceName
|
physicalInterfaceName
|
||||||
);
|
);
|
||||||
|
|||||||
Reference in New Issue
Block a user