diff options
| author | Aotrix <[email protected]> | 2026-04-18 22:20:26 +0200 |
|---|---|---|
| committer | Aotrix <[email protected]> | 2026-04-18 22:20:26 +0200 |
| commit | 8837de4783b25255b6a1799be210c9e580dd2d4f (patch) | |
| tree | 5073cac386123c6d403714b4a5dcb7cceade7056 /battleNetApi/src | |
| parent | 27459497a5ba0eac18a57e0c15b21972ab7e5284 (diff) | |
Replace operator() with text method
Diffstat (limited to 'battleNetApi/src')
| -rw-r--r-- | battleNetApi/src/apiUrl.cpp | 2 | ||||
| -rw-r--r-- | battleNetApi/src/hearthstoneApi.cpp | 14 |
2 files changed, 11 insertions, 5 deletions
diff --git a/battleNetApi/src/apiUrl.cpp b/battleNetApi/src/apiUrl.cpp index 5435fd9..ac8171b 100644 --- a/battleNetApi/src/apiUrl.cpp +++ b/battleNetApi/src/apiUrl.cpp @@ -41,7 +41,7 @@ void ApiUrl::setPageSize(const std::string &iPageSize) { void ApiUrl::setValue(const std::string &iKey, const std::string &iValue) { aParameters[iKey] = iValue; } -std::string ApiUrl::operator()() const { +std::string ApiUrl::text() const { std::string aFormattedParameters; for (const auto &[key, value] : aParameters) { aFormattedParameters += std::format("&{}={}", key, value); diff --git a/battleNetApi/src/hearthstoneApi.cpp b/battleNetApi/src/hearthstoneApi.cpp index 32c3164..d6becc1 100644 --- a/battleNetApi/src/hearthstoneApi.cpp +++ b/battleNetApi/src/hearthstoneApi.cpp @@ -21,11 +21,11 @@ size_t HearthstoneApi::curlCallbackStringOutput(void *iContent, size_t iSize, si return kNewLength; } -json HearthstoneApi::makeApiRequest(const std::string &iUrl, const std::string &iTokenText) { +json HearthstoneApi::makeApiRequest(const ApiUrl &iApiUrl, const std::string &iTokenText) { CURL *curl = curl_easy_init(); std::string aRequestOutput; if (curl) { - curl_easy_setopt(curl, CURLOPT_URL, iUrl.c_str()); + curl_easy_setopt(curl, CURLOPT_URL, iApiUrl.text().c_str()); curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L); curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L); curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, curlCallbackStringOutput); @@ -40,6 +40,12 @@ json HearthstoneApi::makeApiRequest(const std::string &iUrl, const std::string & return aOutputJson; } +std::vector<json> HearthstoneApi::makeApiRequest(const std::vector<ApiUrl> &iApiUrls, const std::string &iTokenText) { + std::vector<std::string> aApiUrls(iApiUrls.size()); + std::ranges::transform(iApiUrls, aApiUrls.begin(), [](const ApiUrl &iApiUrl) { return iApiUrl.text(); }); + return makeApiRequest(aApiUrls, iTokenText); +} + std::vector<json> HearthstoneApi::makeApiRequest(const std::vector<std::string> &iUrls, const std::string &iTokenText) { std::vector<std::string> aResponses(iUrls.size()); CURLM *curlm = curl_multi_init(); @@ -101,12 +107,12 @@ std::vector<json> HearthstoneApi::makeApiRequest(const std::vector<std::string> json HearthstoneApi::downloadCards(ApiUrl &iApiUrl, Token &iToken) { iApiUrl.setPage("1"); std::vector<std::string> aRequests; - json aFirstPageJson = makeApiRequest(iApiUrl(), iToken.text()); + json aFirstPageJson = makeApiRequest(iApiUrl, iToken.text()); int kNumberOfPages{aFirstPageJson["pageCount"]}; for (int i{1}; i < kNumberOfPages; ++i) { iApiUrl.setPage(std::to_string(i + 1)); - aRequests.push_back(iApiUrl()); + aRequests.push_back(iApiUrl.text()); } json::reference &aOutputJson = aFirstPageJson["cards"]; std::vector<json> kApiResponses = makeApiRequest(aRequests, iToken.text()); |
