Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
ApiHistoryLoggerQueryParamsBuilder.hpp
Go to the documentation of this file.
1#ifndef APIHISTORYLOGGERQUERYPARAMSBUILDER_HPP
2#define APIHISTORYLOGGERQUERYPARAMSBUILDER_HPP
3
6#include "core/defines.hpp"
7
8#include <optional>
9#include <set>
10
12{
13
15{
16public:
18
19 [[nodiscard]] std::optional<std::string> getChannelId() const override
20 {
21 return std::nullopt;
22 };
23 [[nodiscard]] std::unordered_map<std::string_view, std::string> build() const override;
24
25 ApiHistoryLoggerQueryParamsBuilder &setChannelTags(const std::set<iv::types::channelId> &channelTags);
30
31private:
32 std::optional<std::set<iv::types::channelId>> m_channelTags;
33 std::optional<iv::types::timestamp> m_startTimestamp;
34 std::optional<iv::types::timestamp> m_endTimestamp;
35 std::optional<uint32_t> m_paginationLimit;
36 std::optional<uint32_t> m_paginationOffset;
37
38 struct Request
39 {
40 static constexpr std::string_view channelTags {"channel_tags"};
41 static constexpr std::string_view startTimestamp {"startTimestamp"};
42 static constexpr std::string_view endTimestamp {"endTimestamp"};
45 };
46};
47
48}// namespace iv::comms::api::historyLogger
49
50#endif//APIHISTORYLOGGERQUERYPARAMSBUILDER_HPP
Definition IApiQueryParamsBuilder.hpp:13
Definition ApiHistoryLoggerQueryParamsBuilder.hpp:15
std::optional< iv::types::timestamp > m_startTimestamp
Definition ApiHistoryLoggerQueryParamsBuilder.hpp:33
ApiHistoryLoggerQueryParamsBuilder & setPaginationLimit(uint32_t paginationLimit)
Definition ApiHistoryLoggerQueryParamsBuilder.cpp:61
std::optional< uint32_t > m_paginationLimit
Definition ApiHistoryLoggerQueryParamsBuilder.hpp:35
ApiHistoryLoggerQueryParamsBuilder & setStartTimestamp(iv::types::timestamp startTimestamp)
Definition ApiHistoryLoggerQueryParamsBuilder.cpp:48
ApiHistoryLoggerQueryParamsBuilder & setPaginationOffset(uint32_t paginationOffset)
Definition ApiHistoryLoggerQueryParamsBuilder.cpp:67
std::optional< uint32_t > m_paginationOffset
Definition ApiHistoryLoggerQueryParamsBuilder.hpp:36
std::optional< std::string > getChannelId() const override
Definition ApiHistoryLoggerQueryParamsBuilder.hpp:19
std::optional< iv::types::timestamp > m_endTimestamp
Definition ApiHistoryLoggerQueryParamsBuilder.hpp:34
ApiHistoryLoggerQueryParamsBuilder & setChannelTags(const std::set< iv::types::channelId > &channelTags)
Definition ApiHistoryLoggerQueryParamsBuilder.cpp:41
ApiHistoryLoggerQueryParamsBuilder & setEndTimestamp(iv::types::timestamp endTimestamp)
Definition ApiHistoryLoggerQueryParamsBuilder.cpp:55
std::optional< std::set< iv::types::channelId > > m_channelTags
Definition ApiHistoryLoggerQueryParamsBuilder.hpp:32
std::unordered_map< std::string_view, std::string > build() const override
Definition ApiHistoryLoggerQueryParamsBuilder.cpp:8
constexpr std::string_view ResponseOffset
Definition defines.hpp:25
constexpr std::string_view ResponseLimit
Definition defines.hpp:24
Definition ApiHistoryLoggerCommunicationProtocol.cpp:8
uint64_t timestamp
Definition types.hpp:21
Definition ApiHistoryLoggerQueryParamsBuilder.hpp:39
static constexpr std::string_view channelTags
Definition ApiHistoryLoggerQueryParamsBuilder.hpp:40
static constexpr std::string_view endTimestamp
Definition ApiHistoryLoggerQueryParamsBuilder.hpp:42
static constexpr std::string_view paginationOffset
Definition ApiHistoryLoggerQueryParamsBuilder.hpp:44
static constexpr std::string_view startTimestamp
Definition ApiHistoryLoggerQueryParamsBuilder.hpp:41
static constexpr std::string_view paginationLimit
Definition ApiHistoryLoggerQueryParamsBuilder.hpp:43