#include #include class Token { public: Token(const std::string &iTokenFilePath); std::string toString() const; private: const std::string mFilePath; //!< Path to the token file const std::string mToken; //!< Token value std::string getValidToken() const; void refreshToken() const; void writeNewTokenToFile() const; void writeTokenToFile(const std::string &iToken) const; std::string getValidTokenWithApi(const std::string &iUser, const std::string &iPassword) const; std::chrono::seconds getCurrentTime() const; std::string extractFirstMatchRegex(const std::string &t_str, const std::string &t_regex) const; static size_t curlCallbackStringOutput(void *t_contents, size_t t_size, size_t t_nmemb, std::string *t_s); friend class TokenTests; };