diff options
Diffstat (limited to 'battleNetApi/include')
| -rw-r--r-- | battleNetApi/include/hearthstoneApi.hpp | 11 | ||||
| -rw-r--r-- | battleNetApi/include/tokenPool.hpp | 16 |
2 files changed, 20 insertions, 7 deletions
diff --git a/battleNetApi/include/hearthstoneApi.hpp b/battleNetApi/include/hearthstoneApi.hpp index c3fbfac..ecf785a 100644 --- a/battleNetApi/include/hearthstoneApi.hpp +++ b/battleNetApi/include/hearthstoneApi.hpp @@ -8,17 +8,14 @@ using json = nlohmann::json; class HearthstoneApi { public: - HearthstoneApi(const Token &iToken); - HearthstoneApi(Token &&iToken); - json makeApiRequest(const std::string &iUrl) const; - std::vector<json> makeApiRequest(const std::vector<std::string> &iUrls) const; - void downloadAllCards(ApiUrl &iApiUrl, const std::string &iOutputJsonPath) const; + static json makeApiRequest(const std::string &iUrl, const std::string &iTokenText); + static std::vector<json> makeApiRequest(const std::vector<std::string> &iUrls, const std::string &iTokenText); + static json downloadCards(ApiUrl &iApiUrl, Token &iToken); private: - std::string authorizationHeader() const; + static std::string authorizationHeader(const std::string &iTokenText); static size_t curlCallbackStringOutput(void *iContent, size_t iSize, size_t iNmemb, std::string *iS); - Token mToken; std::string mAuthorizationHeader; //<! Bearer authorization string for OAuth 2.0 header friend class HearthstoneApiMock; diff --git a/battleNetApi/include/tokenPool.hpp b/battleNetApi/include/tokenPool.hpp new file mode 100644 index 0000000..6aa2b15 --- /dev/null +++ b/battleNetApi/include/tokenPool.hpp @@ -0,0 +1,16 @@ +#include <queue> +#include <token.hpp> + +class TokenPool { + private: + TokenPool() = default; + TokenPool(const TokenPool &) = delete; + TokenPool(TokenPool &&) = delete; + TokenPool &operator=(const TokenPool &) = delete; + TokenPool &operator=(TokenPool &&) = delete; + static std::queue<Token> mTokenContainer; + + public: + static void fillTokenSource(const std::string &iJsonPath); + static std::optional<std::string> unusedToken(); +}; |
