Files
BloomPatched/src/DebugServer/Gdb/GdbDebugServerConfig.cpp

35 lines
1.3 KiB
C++
Raw Normal View History

#include "GdbDebugServerConfig.hpp"
#include "src/Helpers/YamlUtilities.hpp"
#include "src/Logger/Logger.hpp"
namespace Bloom::DebugServer::Gdb
{
GdbDebugServerConfig::GdbDebugServerConfig(const DebugServerConfig& debugServerConfig)
: DebugServerConfig(debugServerConfig)
{
if (debugServerConfig.debugServerNode["ipAddress"]) {
if (!YamlUtilities::isType<std::string>(debugServerConfig.debugServerNode["ipAddress"])) {
Logger::error(
"Invalid GDB debug server config parameter ('ipAddress') provided - must be a string. The "
"parameter will be ignored."
);
}
this->listeningAddress = debugServerConfig.debugServerNode["ipAddress"].as<std::string>();
}
if (debugServerConfig.debugServerNode["port"]) {
2022-09-17 00:06:02 +01:00
if (YamlUtilities::isType<std::uint16_t>(debugServerConfig.debugServerNode["port"])) {
this->listeningPortNumber = debugServerConfig.debugServerNode["port"].as<std::uint16_t>();
} else {
Logger::error(
"Invalid GDB debug server config parameter ('port') provided - value must be castable to a 16-bit "
"unsigned integer. The parameter will be ignored."
);
}
}
}
}