From c31befb4c2870bc0e615ab09645ace281906cea5 Mon Sep 17 00:00:00 2001 From: Geert Bosch Date: Tue, 28 Mar 2017 17:30:05 -0400 Subject: SERVER-28532 Implement UUID::appendToBuilder --- src/mongo/util/uuid.h | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'src/mongo/util/uuid.h') diff --git a/src/mongo/util/uuid.h b/src/mongo/util/uuid.h index 5127932dd6a..22adb92ba01 100644 --- a/src/mongo/util/uuid.h +++ b/src/mongo/util/uuid.h @@ -44,13 +44,15 @@ namespace mongo { * a secure random number generator. */ class UUID { + using UUIDStorage = std::array; + public: UUID() = delete; /** * The number of bytes contained in a UUID. */ - static const int kNumBytes; + static constexpr int kNumBytes = sizeof(UUIDStorage); /** * Generate a new random v4 UUID per RFC 4122. @@ -74,6 +76,11 @@ public: */ static bool isUUIDString(const std::string& s); + /** + * Append to builder as BinData(4, "...") element with the given name. + */ + void appendToBuilder(BSONObjBuilder* builder, StringData name) const; + /** * Return a BSON object of the form { uuid: BinData(4, "...") }. */ @@ -109,7 +116,6 @@ public: }; private: - using UUIDStorage = std::array; UUID(const UUIDStorage& uuid) : _uuid(uuid) {} UUIDStorage _uuid; // UUID in network byte order -- cgit v1.2.1