summaryrefslogtreecommitdiff
path: root/subprojects/battleNetApi/src/apiUrl.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'subprojects/battleNetApi/src/apiUrl.cpp')
-rw-r--r--subprojects/battleNetApi/src/apiUrl.cpp40
1 files changed, 0 insertions, 40 deletions
diff --git a/subprojects/battleNetApi/src/apiUrl.cpp b/subprojects/battleNetApi/src/apiUrl.cpp
deleted file mode 100644
index 3de13cd..0000000
--- a/subprojects/battleNetApi/src/apiUrl.cpp
+++ /dev/null
@@ -1,40 +0,0 @@
-#include "apiUrl.hpp"
-#include <format>
-
-ApiUrl::ApiUrl(const std::string &iContentType, const std::string &iRegion)
- : mContentType{iContentType}, mRegion{iRegion} {}
-void ApiUrl::setRegion(const std::string &iRegion) {
- if (not iRegion.empty()) {
- mRegion = iRegion; //!< The region of the data to receive, e.g. "eu"
- }
-}
-void ApiUrl::setLocale(const std::string &iLocale) {
- if (not iLocale.empty()) {
- aParameters["locale"] = iLocale; //!< The locale to reflect in localized data, e.g. "fr_FR" or "ko_KR"
- //!< If you do not supply a value, all translations are returned.
- }
-}
-void ApiUrl::setGameMode(const std::string &iGameMode) {
- if (not iGameMode.empty()) {
- aParameters["gameMode"] =
- iGameMode; //!< A recognized game mode, e.g. "constructed"
- //!< @see https://community.developer.battle.net/documentation/hearthstone/guides/game-modes
- }
-}
-void ApiUrl::setPageSize(const std::string &iPageSize) {
- if (not iPageSize.empty()) {
- aParameters["pageSize"] = iPageSize; //!< The number of results to choose per page, e.g. "40"
- }
-}
-std::string ApiUrl::operator()() const {
- std::string aFormattedParameters;
- for (const auto &[key, value] : aParameters) {
- aFormattedParameters += std::format("&{}={}", key, value);
- }
- if (not aFormattedParameters.empty()) {
- aFormattedParameters[0] = '?';
- }
- aFormattedParameters =
- std::format("https://{}.api.blizzard.com/hearthstone/{}/{}", mRegion, mContentType, aFormattedParameters);
- return aFormattedParameters;
-}