diff --git a/src/translator/deepl/deepl.cpp b/src/translator/deepl/deepl.cpp index 794c259..fb67b2c 100644 --- a/src/translator/deepl/deepl.cpp +++ b/src/translator/deepl/deepl.cpp @@ -18,7 +18,6 @@ #include #include -#include "../../core/http_request.h" #include "deepl.h" using namespace bot::http; using namespace bot::translator; @@ -43,9 +42,8 @@ const std::vector deepl::get_languages() } try { - http_request request; - http_response response = request.get(http_request::legacy_url(m_hostname, 443, "/v2/languages?type=target", true), - {{"Authorization", "DeepL-Auth-Key " + m_apiKey}}); + http_response response = m_http.get(http_request::legacy_url(m_hostname, 443, "/v2/languages?type=target", true), + {{"Authorization", "DeepL-Auth-Key " + m_apiKey}}); if (response.status == 200) { const dpp::json json_response = dpp::json::parse(response.content); if (json_response.is_array()) { @@ -92,9 +90,8 @@ const std::string deepl::translate(const std::string &text, const std::string &s json_body["source_lang"] = source; try { - http_request request; - http_response response = request.post(http_request::legacy_url(m_hostname, 443, "/v2/translate", true), json_body.dump(), - {{"Authorization", "DeepL-Auth-Key " + m_apiKey}, {"Content-Type", "application/json"}}); + http_response response = m_http.post(http_request::legacy_url(m_hostname, 443, "/v2/translate", true), json_body.dump(), + {{"Authorization", "DeepL-Auth-Key " + m_apiKey}, {"Content-Type", "application/json"}}); if (response.status == 200) { const dpp::json json_response = dpp::json::parse(response.content); if (json_response.is_object()) { diff --git a/src/translator/deepl/deepl.h b/src/translator/deepl/deepl.h index 99ed5f8..0e07aa6 100644 --- a/src/translator/deepl/deepl.h +++ b/src/translator/deepl/deepl.h @@ -19,6 +19,7 @@ #ifndef TRANSLATOR_DEEPL_H #define TRANSLATOR_DEEPL_H +#include "../../core/http_request.h" #include "../../core/translator.h" namespace bot { @@ -33,6 +34,7 @@ namespace bot { private: std::string m_apiKey; std::string m_hostname; + bot::http::http_request m_http; supported_languages m_languages; }; } diff --git a/src/translator/libretranslate/libretranslate.cpp b/src/translator/libretranslate/libretranslate.cpp index 0647a92..8cc6926 100644 --- a/src/translator/libretranslate/libretranslate.cpp +++ b/src/translator/libretranslate/libretranslate.cpp @@ -18,7 +18,6 @@ #include #include -#include "../../core/http_request.h" #include "libretranslate.h" using namespace bot::http; using namespace bot::translator; @@ -43,8 +42,7 @@ const std::vector libretranslate::get_languages() } try { - http_request request; - http_response response = request.get(http_request::legacy_url(m_hostname, m_port, m_url + "languages", m_tls)); + http_response response = m_http.get(http_request::legacy_url(m_hostname, m_port, m_url + "languages", m_tls)); if (response.status == 200) { const dpp::json json_response = dpp::json::parse(response.content); if (json_response.is_array()) { @@ -89,9 +87,8 @@ const std::string libretranslate::translate(const std::string &text, const std:: json_body["apiKey"] = m_apiKey; try { - http_request request; - http_response response = request.post(http_request::legacy_url(m_hostname, m_port, m_url + "translate", m_tls), json_body.dump(), - {{"Content-Type", "application/json"}}); + http_response response = m_http.post(http_request::legacy_url(m_hostname, m_port, m_url + "translate", m_tls), json_body.dump(), + {{"Content-Type", "application/json"}}); if (response.status == 200) { const dpp::json json_response = dpp::json::parse(response.content); if (json_response.is_object()) { diff --git a/src/translator/libretranslate/libretranslate.h b/src/translator/libretranslate/libretranslate.h index 1af2f97..d0237ec 100644 --- a/src/translator/libretranslate/libretranslate.h +++ b/src/translator/libretranslate/libretranslate.h @@ -20,6 +20,7 @@ #define TRANSLATOR_LIBRETRANSLATE_H #include +#include "../../core/http_request.h" #include "../../core/translator.h" namespace bot { @@ -35,6 +36,7 @@ namespace bot { private: std::string m_apiKey; std::string m_hostname; + bot::http::http_request m_http; supported_languages m_languages; uint16_t m_port; std::string m_url; diff --git a/src/translator/lingvatranslate/lingvatranslate.cpp b/src/translator/lingvatranslate/lingvatranslate.cpp index 74c84eb..e9eaad1 100644 --- a/src/translator/lingvatranslate/lingvatranslate.cpp +++ b/src/translator/lingvatranslate/lingvatranslate.cpp @@ -19,7 +19,6 @@ #include #include #include -#include "../../core/http_request.h" #include "lingvatranslate.h" using namespace bot::http; using namespace bot::translator; @@ -44,8 +43,7 @@ const std::vector lingvatranslate::get_languages() } try { - http_request request; - http_response response = request.get(http_request::legacy_url(m_hostname, m_port, m_url + "api/v1/languages/target", m_tls)); + http_response response = m_http.get(http_request::legacy_url(m_hostname, m_port, m_url + "api/v1/languages/target", m_tls)); if (response.status == 200) { const dpp::json json_response = dpp::json::parse(response.content); if (json_response.is_object()) { @@ -83,8 +81,7 @@ const std::vector lingvatranslate::get_languages() const std::string lingvatranslate::translate(const std::string &text, const std::string &source, const std::string &target) { try { - http_request request; - http_response response = request.get(http_request::legacy_url(m_hostname, m_port, m_url + "api/v1/" + (source.empty() ? "auto" : source) + "/" + target + "/" + dpp::utility::url_encode(text), m_tls)); + http_response response = m_http.get(http_request::legacy_url(m_hostname, m_port, m_url + "api/v1/" + (source.empty() ? "auto" : source) + "/" + target + "/" + dpp::utility::url_encode(text), m_tls)); if (response.status == 200) { const dpp::json json_response = dpp::json::parse(response.content); if (json_response.is_object()) { diff --git a/src/translator/lingvatranslate/lingvatranslate.h b/src/translator/lingvatranslate/lingvatranslate.h index 37cf604..c18b67b 100644 --- a/src/translator/lingvatranslate/lingvatranslate.h +++ b/src/translator/lingvatranslate/lingvatranslate.h @@ -20,6 +20,7 @@ #define TRANSLATOR_LINGVATRANSLATE_H #include +#include "../../core/http_request.h" #include "../../core/translator.h" namespace bot { @@ -34,6 +35,7 @@ namespace bot { private: std::string m_hostname; + bot::http::http_request m_http; supported_languages m_languages; uint16_t m_port; std::string m_url; diff --git a/src/translator/mozhi/mozhi.cpp b/src/translator/mozhi/mozhi.cpp index 2a3e1fb..5231113 100644 --- a/src/translator/mozhi/mozhi.cpp +++ b/src/translator/mozhi/mozhi.cpp @@ -19,7 +19,6 @@ #include #include #include -#include "../../core/http_request.h" #include "mozhi.h" using namespace bot::http; using namespace bot::translator; @@ -47,8 +46,7 @@ const std::vector mozhi::get_languages() const std::string parameters = dpp::utility::make_url_parameters({ {"engine", m_engine} }); - http_request request; - http_response response = request.get(http_request::legacy_url(m_hostname, m_port, m_url + "api/target_languages", m_tls)); + http_response response = m_http.get(http_request::legacy_url(m_hostname, m_port, m_url + "api/target_languages", m_tls)); if (response.status == 200) { const dpp::json json_response = dpp::json::parse(response.content); if (json_response.is_array()) { @@ -89,8 +87,7 @@ const std::string mozhi::translate(const std::string &text, const std::string &s {"to", target}, {"text", text} }); - http_request request; - http_response response = request.get(http_request::legacy_url(m_hostname, m_port, m_url + "api/translate" + parameters, m_tls)); + http_response response = m_http.get(http_request::legacy_url(m_hostname, m_port, m_url + "api/translate" + parameters, m_tls)); if (response.status == 200) { const dpp::json json_response = dpp::json::parse(response.content); if (json_response.is_object()) { diff --git a/src/translator/mozhi/mozhi.h b/src/translator/mozhi/mozhi.h index ac3aba6..fb40aa4 100644 --- a/src/translator/mozhi/mozhi.h +++ b/src/translator/mozhi/mozhi.h @@ -20,6 +20,7 @@ #define TRANSLATOR_MOZHI_H #include +#include "../../core/http_request.h" #include "../../core/translator.h" namespace bot { @@ -35,6 +36,7 @@ namespace bot { private: std::string m_engine; std::string m_hostname; + bot::http::http_request m_http; supported_languages m_languages; uint16_t m_port; std::string m_url;