droplet 1.3.0
A multipurpose Discord bot with the hacker in mind
Loading...
Searching...
No Matches
UserRepository.hpp
Go to the documentation of this file.
1/*
2 * (c) Copyright erarnitox.de - All rights reserved
3 * Author: Erarnitox <david@erarnitox.de>
4 *
5 * License: MIT License
6 *
7 * Description:
8 *
9 * Documentation: https://droplet.erarnitox.de/doxygen/html/
10 */
11
12#pragma once
13
14#include <IRepository.hpp>
15
16#include "UserDTO.hpp"
17
19
20//-----------------------------------------------------
21//
22//-----------------------------------------------------
23class UserRepository : public IRepository<UserDTO> {
24 public:
26 explicit UserRepository(DatabaseExecutor& executor);
27
28 [[nodiscard]] bool create(const UserDTO& object) noexcept override;
29
30 [[nodiscard]] bool remove(size_t user_id) noexcept override;
31
32 [[nodiscard]] UserDTO get(size_t user_id) const noexcept override;
33
34 [[nodiscard]] bool update(const UserDTO& object) noexcept override;
35
36 [[nodiscard]] std::vector<UserDTO> getTopTen() const noexcept;
37
38 private:
39 DatabaseExecutor& executor_;
40};
Definition DatabaseExecutor.hpp:21
Definition IRepository.hpp:36
Definition UserDTO.hpp:20
bool create(const UserDTO &object) noexcept override
Definition UserRepository.cpp:31
std::vector< UserDTO > getTopTen() const noexcept
Definition UserRepository.cpp:101
UserRepository()
Definition UserRepository.cpp:22
UserDTO get(size_t user_id) const noexcept override
Definition UserRepository.cpp:83
bool update(const UserDTO &object) noexcept override
Definition UserRepository.cpp:63
bool remove(size_t user_id) noexcept override
Definition UserRepository.cpp:51