~aleteoryx/muditaos

ref: 65b4e9ad0f50feecdd3330be09cc95d44485d9e6 muditaos/module-db/queries/calendar/QueryEventsGetAllLimited.hpp -rw-r--r-- 971 bytes
65b4e9ad — Tomas Rogala [EGD-3469] PR changes 5 years ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#pragma once

#include <module-db/Interface/EventsRecord.hpp>
#include <Common/Query.hpp>
#include <string>

namespace db::query::events
{
    class GetAllLimited : public Query
    {
      public:
        GetAllLimited(const uint32_t &offset, const uint32_t &limit);
        [[nodiscard]] auto debugInfo() const -> std::string override;

        uint32_t offset = 0;
        uint32_t limit  = 0;
    };

    class GetAllLimitedResult : public QueryResult
    {
        std::unique_ptr<std::vector<EventsRecord>> records;
        std::unique_ptr<uint32_t> recordsCount;

      public:
        GetAllLimitedResult(std::unique_ptr<std::vector<EventsRecord>> records, std::unique_ptr<uint32_t> count);
        [[nodiscard]] auto getResult() -> std::unique_ptr<std::vector<EventsRecord>>;
        [[nodiscard]] auto getCountResult() -> std::unique_ptr<uint32_t>;

        [[nodiscard]] auto debugInfo() const -> std::string override;
    };

} // namespace db::query::events