summaryrefslogtreecommitdiff
path: root/subprojects/battleNetApi/src
diff options
context:
space:
mode:
Diffstat (limited to 'subprojects/battleNetApi/src')
-rw-r--r--subprojects/battleNetApi/src/apiUrl.cpp14
-rw-r--r--subprojects/battleNetApi/src/token.cpp4
2 files changed, 11 insertions, 7 deletions
diff --git a/subprojects/battleNetApi/src/apiUrl.cpp b/subprojects/battleNetApi/src/apiUrl.cpp
index 89f7a5f..e08c8c7 100644
--- a/subprojects/battleNetApi/src/apiUrl.cpp
+++ b/subprojects/battleNetApi/src/apiUrl.cpp
@@ -1,11 +1,15 @@
#include "apiUrl.hpp"
#include <format>
-ApiUrl::ApiUrl(const std::string iContentType) : mContentType{iContentType} {}
-void ApiUrl::setLocale(const std::string iLocale) {
- aParameters["locale"] = iLocale; //<! fr_FR
+ApiUrl::ApiUrl(const std::string &iContentType, const std::string &iRegion)
+ : mContentType{iContentType}, mRegion{iRegion} {}
+void ApiUrl::setRegion(const std::string &iRegion) {
+ mRegion = iRegion; //<! eu
}
-void ApiUrl::setGameMode(const std::string iGameMode) {
+void ApiUrl::setLocale(const std::string &iLocale) {
+ aParameters["locale"] = iLocale; //<! fr_FR, ko_KR
+}
+void ApiUrl::setGameMode(const std::string &iGameMode) {
aParameters["gameMode"] = iGameMode; //<! constructed
}
std::string ApiUrl::operator()() {
@@ -17,6 +21,6 @@ std::string ApiUrl::operator()() {
aFormattedParameters[0] = '?';
}
aFormattedParameters =
- std::format("https://eu.api.blizzard.com/hearthstone/{}/{}", mContentType, aFormattedParameters);
+ std::format("https://{}.api.blizzard.com/hearthstone/{}/{}", mRegion, mContentType, aFormattedParameters);
return aFormattedParameters;
}
diff --git a/subprojects/battleNetApi/src/token.cpp b/subprojects/battleNetApi/src/token.cpp
index 6a3ef24..d3b3054 100644
--- a/subprojects/battleNetApi/src/token.cpp
+++ b/subprojects/battleNetApi/src/token.cpp
@@ -68,14 +68,14 @@ std::string Token::getValidTokenWithApi() const {
}
}
- return extractFirstMatchRegex(token_info, "\"access_token\":\"(\\w+)\"");
+ return extractTokenWithRegex(token_info, "\"access_token\":\"(\\w+)\"");
}
std::chrono::seconds Token::getCurrentTime() const {
return std::chrono::duration_cast<std::chrono::seconds>(std::chrono::utc_clock::now().time_since_epoch());
}
-std::string Token::extractFirstMatchRegex(const std::string &iText, const std::string &iRegex) const {
+std::string Token::extractTokenWithRegex(const std::string &iText, const std::string &iRegex) const {
std::regex regex(iRegex);
auto aMatchBegin = std::sregex_iterator(iText.begin(), iText.end(), regex);
auto aMatchEnd = std::sregex_iterator();