Loading Bridge/AllJoynAbout.cpp +2 −2 Original line number Diff line number Diff line Loading @@ -3,7 +3,7 @@ namespace { common::Guid const kDefaultAppGuid = common::Guid::FromString("DA9C7763-C3E0-4B3B-B190-5BEF8DF96E4D"); common::Guid const kDefaultAppGuid = common::Guid::Parse("DA9C7763-C3E0-4B3B-B190-5BEF8DF96E4D"); char const* kDefaultLanguageForAbout = "en"; char const* kUnknownAdapter = "Unknown Device"; char const* kUnknownManufacturer = "Unknown"; Loading Loading @@ -108,7 +108,7 @@ AllJoynAbout::ReadDeviceId(std::string&) QStatus AllJoynAbout::CreateAndSaveDeviceId(std::string& deviceId) { common::Guid guid = common::Guid::Create(); common::Guid guid = common::Guid::NewGuid(); deviceId = guid.ToString(); // TODO: need to persist this configuration Loading Common/Guid.cpp 0 → 100644 +74 −0 Original line number Diff line number Diff line #include <Common/Guid.h> #include <string.h> common::Guid::Guid() { memset(m_uuid, 0, sizeof(uuid_t)); } common::Guid::Guid(uuid_t id) { memcpy(m_uuid, id, sizeof(uuid_t)); } common::Guid common::Guid::NewGuid() { #ifdef __linux__ char id[17]; memset(id, 0, sizeof(id)); #else uuid_string_t id; #endif uuid_t uuid; uuid_generate_random(uuid); return Guid(uuid); } common::Guid common::Guid::Parse(char const* s) { if (s == NULL) return Guid::Null(); uuid_t id; if (uuid_parse(s, id) == 0) return Guid(id); else return Guid::Null(); } common::Guid const& common::Guid::Null() { static Guid zeroGuid = Guid(); return zeroGuid; } std::string common::Guid::ToString() const { char buff[64]; memset(buff, 0, sizeof(buff)); uuid_unparse_lower(m_uuid, buff); return std::string(buff); } bool common::Guid::operator < (Guid const& rhs) const { return uuid_compare(m_uuid, rhs.m_uuid) < 0; } bool common::Guid::operator == (Guid const& rhs) const { return uuid_compare(m_uuid, rhs.m_uuid) == 0; } bool common::Guid::operator != (Guid const& rhs) const { return uuid_compare(m_uuid, rhs.m_uuid) != 0; } Common/Guid.h +11 −24 Original line number Diff line number Diff line #pragma once #include <string> #include <uuid/uuid.h> #include <string> namespace common { class Guid { public: static Guid Create() { uuid_t uuid; uuid_generate_random(uuid); static Guid const& Null(); #ifdef __linux__ char s[37]; #else uuid_string_t s; #endif static Guid NewGuid(); static Guid Parse(char const* s); uuid_unparse(uuid, s); std::string ToString() const; return Guid(std::string(s)); } static Guid FromString(char const* s) { return Guid(s); } std::string ToString() const { return m_uuid; } bool operator < (Guid const& rhs) const; bool operator == (Guid const& rhs) const; bool operator != (Guid const& rhs) const; private: Guid(std::string const& uuid) : m_uuid(uuid) { } Guid(); Guid(uuid_t id); private: std::string m_uuid; uuid_t m_uuid; }; } Makefile +1 −0 Original line number Diff line number Diff line Loading @@ -12,6 +12,7 @@ SRCS=DeviceProviders/AllJoynProvider.cpp \ Bridge/DeviceSignal.cpp \ Common/Log.cpp \ Common/Variant.cpp \ Common/Guid.cpp \ Adapters/MockAdapter/MockAdapter.cpp \ Adapters/MockAdapter/MockDevices.cpp \ Adapters/MockAdapter/MockAdapterDevice.cpp \ Loading Loading
Bridge/AllJoynAbout.cpp +2 −2 Original line number Diff line number Diff line Loading @@ -3,7 +3,7 @@ namespace { common::Guid const kDefaultAppGuid = common::Guid::FromString("DA9C7763-C3E0-4B3B-B190-5BEF8DF96E4D"); common::Guid const kDefaultAppGuid = common::Guid::Parse("DA9C7763-C3E0-4B3B-B190-5BEF8DF96E4D"); char const* kDefaultLanguageForAbout = "en"; char const* kUnknownAdapter = "Unknown Device"; char const* kUnknownManufacturer = "Unknown"; Loading Loading @@ -108,7 +108,7 @@ AllJoynAbout::ReadDeviceId(std::string&) QStatus AllJoynAbout::CreateAndSaveDeviceId(std::string& deviceId) { common::Guid guid = common::Guid::Create(); common::Guid guid = common::Guid::NewGuid(); deviceId = guid.ToString(); // TODO: need to persist this configuration Loading
Common/Guid.cpp 0 → 100644 +74 −0 Original line number Diff line number Diff line #include <Common/Guid.h> #include <string.h> common::Guid::Guid() { memset(m_uuid, 0, sizeof(uuid_t)); } common::Guid::Guid(uuid_t id) { memcpy(m_uuid, id, sizeof(uuid_t)); } common::Guid common::Guid::NewGuid() { #ifdef __linux__ char id[17]; memset(id, 0, sizeof(id)); #else uuid_string_t id; #endif uuid_t uuid; uuid_generate_random(uuid); return Guid(uuid); } common::Guid common::Guid::Parse(char const* s) { if (s == NULL) return Guid::Null(); uuid_t id; if (uuid_parse(s, id) == 0) return Guid(id); else return Guid::Null(); } common::Guid const& common::Guid::Null() { static Guid zeroGuid = Guid(); return zeroGuid; } std::string common::Guid::ToString() const { char buff[64]; memset(buff, 0, sizeof(buff)); uuid_unparse_lower(m_uuid, buff); return std::string(buff); } bool common::Guid::operator < (Guid const& rhs) const { return uuid_compare(m_uuid, rhs.m_uuid) < 0; } bool common::Guid::operator == (Guid const& rhs) const { return uuid_compare(m_uuid, rhs.m_uuid) == 0; } bool common::Guid::operator != (Guid const& rhs) const { return uuid_compare(m_uuid, rhs.m_uuid) != 0; }
Common/Guid.h +11 −24 Original line number Diff line number Diff line #pragma once #include <string> #include <uuid/uuid.h> #include <string> namespace common { class Guid { public: static Guid Create() { uuid_t uuid; uuid_generate_random(uuid); static Guid const& Null(); #ifdef __linux__ char s[37]; #else uuid_string_t s; #endif static Guid NewGuid(); static Guid Parse(char const* s); uuid_unparse(uuid, s); std::string ToString() const; return Guid(std::string(s)); } static Guid FromString(char const* s) { return Guid(s); } std::string ToString() const { return m_uuid; } bool operator < (Guid const& rhs) const; bool operator == (Guid const& rhs) const; bool operator != (Guid const& rhs) const; private: Guid(std::string const& uuid) : m_uuid(uuid) { } Guid(); Guid(uuid_t id); private: std::string m_uuid; uuid_t m_uuid; }; }
Makefile +1 −0 Original line number Diff line number Diff line Loading @@ -12,6 +12,7 @@ SRCS=DeviceProviders/AllJoynProvider.cpp \ Bridge/DeviceSignal.cpp \ Common/Log.cpp \ Common/Variant.cpp \ Common/Guid.cpp \ Adapters/MockAdapter/MockAdapter.cpp \ Adapters/MockAdapter/MockDevices.cpp \ Adapters/MockAdapter/MockAdapterDevice.cpp \ Loading