M module-services/service-desktop/ServiceDesktop.cpp => module-services/service-desktop/ServiceDesktop.cpp +5 -0
@@ 52,6 52,11 @@ auto ServiceDesktop::getSerialNumber() const -> std::string
return settings->getValue(std::string("factory_data/serial"), settings::SettingsScope::Global);
}
+auto ServiceDesktop::getCaseColour() const -> std::string
+{
+ return settings->getValue(std::string("factory_data/case_colour"), settings::SettingsScope::Global);
+}
+
auto ServiceDesktop::requestLogsFlush() -> void
{
int response = 0;
M module-services/service-desktop/endpoints/deviceInfo/DeviceInfoEndpoint.cpp => module-services/service-desktop/endpoints/deviceInfo/DeviceInfoEndpoint.cpp +7 -1
@@ 38,6 38,11 @@ namespace sdesktop::endpoints
return dynamic_cast<ServiceDesktop *>(ownerServicePtr)->getSerialNumber();
}
+ auto DeviceInfoEndpoint::getCaseColour() -> std::string
+ {
+ return static_cast<ServiceDesktop *>(ownerServicePtr)->getCaseColour();
+ }
+
auto DeviceInfoEndpoint::getDeviceInfo(Context &context) -> bool
{
if (ownerServicePtr == nullptr) {
@@ 70,7 75,8 @@ namespace sdesktop::endpoints
{json::gitBranch, (std::string)GIT_BRANCH},
{json::currentRTCTime, std::to_string(static_cast<uint32_t>(std::time(nullptr)))},
{json::version, std::string(VERSION)},
- {json::serialNumber, getSerialNumber()}}));
+ {json::serialNumber, getSerialNumber()},
+ {json::caseColour, getCaseColour()}}));
sender::putToSendQueue(context.createSimpleResponse());
return true;
M module-services/service-desktop/endpoints/include/endpoints/JsonKeyNames.hpp => module-services/service-desktop/endpoints/include/endpoints/JsonKeyNames.hpp +1 -0
@@ 45,6 45,7 @@ namespace sdesktop::endpoints::json
inline constexpr auto location = "location";
inline constexpr auto reason = "reason";
inline constexpr auto serialNumber = "serialNumber";
+ inline constexpr auto caseColour = "caseColour";
namespace filesystem
{
M module-services/service-desktop/endpoints/include/endpoints/deviceInfo/DeviceInfoEndpoint.hpp => module-services/service-desktop/endpoints/include/endpoints/deviceInfo/DeviceInfoEndpoint.hpp +1 -0
@@ 15,6 15,7 @@ namespace sdesktop::endpoints
class DeviceInfoEndpoint : public Endpoint
{
auto getSerialNumber() -> std::string;
+ auto getCaseColour() -> std::string;
public:
explicit DeviceInfoEndpoint(sys::Service *ownerServicePtr) : Endpoint(ownerServicePtr)
M module-services/service-desktop/include/service-desktop/ServiceDesktop.hpp => module-services/service-desktop/include/service-desktop/ServiceDesktop.hpp +1 -0
@@ 114,6 114,7 @@ class ServiceDesktop : public sys::Service
auto requestLogsFlush() -> void;
auto getSerialNumber() const -> std::string;
+ auto getCaseColour() const -> std::string;
private:
std::unique_ptr<sdesktop::USBSecurityModel> usbSecurityModel;
M test/pytest/service-desktop/test_device_info.py => test/pytest/service-desktop/test_device_info.py +1 -0
@@ 29,4 29,5 @@ def test_device_info(harness):
assert ret["body"]["currentRTCTime"] is not None
assert ret["body"]["version"] is not None
assert ret["body"]["serialNumber"] is not None
+ assert ret["body"]["caseColour"] is not None