16#include <unordered_map>
17#include <unordered_set>
34 static std::unordered_map<std::string, std::string> latest_events;
35 static std::unordered_map<std::string, std::unordered_set<std::string>> announced_videos;
36 static std::unordered_map<std::string, bool> active_events;
37 static std::mutex active_events_mutex;
38 static std::mutex latest_events_mutex;
41 [[nodiscard]]
static bool insert(
const std::string& key,
const std::string& value)
noexcept;
43 [[nodiscard]]
static bool remove(
const std::string& key)
noexcept;
45 [[nodiscard]]
static bool exists(
const std::string& key,
const std::string& value)
noexcept;
48 const std::string& video_id,
49 const std::string& title)
noexcept;
51 [[nodiscard]]
static bool load()
noexcept;
53 static void set_active(
const std::string& key,
bool active)
noexcept;
55 [[nodiscard]]
static bool is_active(
const std::string& key)
noexcept;
YoutubeClaimResult
Definition LatestEventsRepository.hpp:22
@ Seeded
Definition LatestEventsRepository.hpp:24
@ AlreadyAnnounced
Definition LatestEventsRepository.hpp:23
@ Claimed
Definition LatestEventsRepository.hpp:25
@ Failed
Definition LatestEventsRepository.hpp:26
Definition LatestEventsRepository.hpp:32
static bool insert(const std::string &key, const std::string &value) noexcept
Definition LatestEventsRepository.cpp:104
static bool load() noexcept
Definition LatestEventsRepository.cpp:204
static bool remove(const std::string &key) noexcept
Definition LatestEventsRepository.cpp:131
static YoutubeClaimResult try_claim_video(const std::string &key, const std::string &video_id, const std::string &title) noexcept
Definition LatestEventsRepository.cpp:162
static bool exists(const std::string &key, const std::string &value) noexcept
Definition LatestEventsRepository.cpp:154
static void set_active(const std::string &key, bool active) noexcept
Definition LatestEventsRepository.cpp:96
static bool is_active(const std::string &key) noexcept
Definition LatestEventsRepository.cpp:86