diff options
Diffstat (limited to 'src/mongo/db/auth/user_document_parser.h')
-rw-r--r-- | src/mongo/db/auth/user_document_parser.h | 58 |
1 files changed, 30 insertions, 28 deletions
diff --git a/src/mongo/db/auth/user_document_parser.h b/src/mongo/db/auth/user_document_parser.h index 28b93ee5673..502a3f349ea 100644 --- a/src/mongo/db/auth/user_document_parser.h +++ b/src/mongo/db/auth/user_document_parser.h @@ -36,41 +36,43 @@ namespace mongo { - class V1UserDocumentParser { - MONGO_DISALLOW_COPYING(V1UserDocumentParser); - public: - V1UserDocumentParser() {} - std::string extractUserNameFromUserDocument(const BSONObj& doc) const; +class V1UserDocumentParser { + MONGO_DISALLOW_COPYING(V1UserDocumentParser); - Status initializeUserCredentialsFromUserDocument(User* user, - const BSONObj& privDoc) const; +public: + V1UserDocumentParser() {} + std::string extractUserNameFromUserDocument(const BSONObj& doc) const; - Status initializeUserRolesFromUserDocument( - User* user, const BSONObj& privDoc, StringData dbname) const; - }; + Status initializeUserCredentialsFromUserDocument(User* user, const BSONObj& privDoc) const; - class V2UserDocumentParser { - MONGO_DISALLOW_COPYING(V2UserDocumentParser); - public: - V2UserDocumentParser() {} - Status checkValidUserDocument(const BSONObj& doc) const; + Status initializeUserRolesFromUserDocument(User* user, + const BSONObj& privDoc, + StringData dbname) const; +}; - /** - * Returns Status::OK() iff the given BSONObj describes a valid element from a roles array. - */ - static Status checkValidRoleObject(const BSONObj& roleObject); +class V2UserDocumentParser { + MONGO_DISALLOW_COPYING(V2UserDocumentParser); - static Status parseRoleName(const BSONObj& roleObject, RoleName* result); +public: + V2UserDocumentParser() {} + Status checkValidUserDocument(const BSONObj& doc) const; - static Status parseRoleVector(const BSONArray& rolesArray, std::vector<RoleName>* result); + /** + * Returns Status::OK() iff the given BSONObj describes a valid element from a roles array. + */ + static Status checkValidRoleObject(const BSONObj& roleObject); - std::string extractUserNameFromUserDocument(const BSONObj& doc) const; + static Status parseRoleName(const BSONObj& roleObject, RoleName* result); - Status initializeUserCredentialsFromUserDocument(User* user, const BSONObj& privDoc) const; + static Status parseRoleVector(const BSONArray& rolesArray, std::vector<RoleName>* result); - Status initializeUserRolesFromUserDocument(const BSONObj& doc, User* user) const; - Status initializeUserIndirectRolesFromUserDocument(const BSONObj& doc, User* user) const; - Status initializeUserPrivilegesFromUserDocument(const BSONObj& doc, User* user) const; - }; + std::string extractUserNameFromUserDocument(const BSONObj& doc) const; -} // namespace mongo + Status initializeUserCredentialsFromUserDocument(User* user, const BSONObj& privDoc) const; + + Status initializeUserRolesFromUserDocument(const BSONObj& doc, User* user) const; + Status initializeUserIndirectRolesFromUserDocument(const BSONObj& doc, User* user) const; + Status initializeUserPrivilegesFromUserDocument(const BSONObj& doc, User* user) const; +}; + +} // namespace mongo |