#include #include "IUserDAO.h" namespace uad { class MySQLUserDAO : public IUserDAO { mysqlx::Session& session_; public: explicit MySQLUserDAO(mysqlx::Session& session); std::string Create(const User& created_user) override; std::optional GetByUUID(std::string uuid) override; std::optional GetByLogin(std::string login) override; std::pair> GetAll(size_t limit, size_t offset) override; bool Update(const User& u) override; bool Delete(std::string uuid) override; private: std::optional GetSingleUserBySQLResult(mysqlx::SqlResult&& sql_result); }; }