summaryrefslogtreecommitdiff
path: root/battleNetApi/src/hearthstoneApi.cpp
diff options
context:
space:
mode:
authorAotrix <[email protected]>2026-04-18 22:20:26 +0200
committerAotrix <[email protected]>2026-04-18 22:20:26 +0200
commit8837de4783b25255b6a1799be210c9e580dd2d4f (patch)
tree5073cac386123c6d403714b4a5dcb7cceade7056 /battleNetApi/src/hearthstoneApi.cpp
parent27459497a5ba0eac18a57e0c15b21972ab7e5284 (diff)
Replace operator() with text method
Diffstat (limited to 'battleNetApi/src/hearthstoneApi.cpp')
-rw-r--r--battleNetApi/src/hearthstoneApi.cpp14
1 files changed, 10 insertions, 4 deletions
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());