Files
UpAndDown/src/DAO/MySQLUserDAO.h
T

28 lines
638 B
C++

#include <mysqlx/xdevapi.h>
#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<User> GetByUUID(std::string uuid) override;
std::optional<User> GetByLogin(std::string login) override;
std::pair<bool, std::vector<User>> GetAll(size_t limit, size_t offset) override;
bool Update(const User& u) override;
bool Delete(std::string uuid) override;
private:
std::optional<User> GetSingleUserBySQLResult(mysqlx::SqlResult&& sql_result);
};
}