aboutsummaryrefslogtreecommitdiff
path: root/src/zenhttp/httpclient.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/zenhttp/httpclient.cpp')
-rw-r--r--src/zenhttp/httpclient.cpp22
1 files changed, 21 insertions, 1 deletions
diff --git a/src/zenhttp/httpclient.cpp b/src/zenhttp/httpclient.cpp
index 3da9f91fc..c5c808c23 100644
--- a/src/zenhttp/httpclient.cpp
+++ b/src/zenhttp/httpclient.cpp
@@ -39,7 +39,14 @@ HttpClientBase::HttpClientBase(std::string_view BaseUri, const HttpClientSetting
, m_BaseUri(BaseUri)
, m_ConnectionSettings(ConnectionSettings)
{
- m_SessionId = GetSessionIdString();
+ if (ConnectionSettings.SessionId == Oid::Zero)
+ {
+ m_SessionId = GetSessionIdString();
+ }
+ else
+ {
+ m_SessionId = ConnectionSettings.SessionId.ToString();
+ }
}
HttpClientBase::~HttpClientBase()
@@ -207,6 +214,19 @@ HttpClient::~HttpClient()
delete m_Inner;
}
+void
+HttpClient::SetSessionId(const Oid& SessionId)
+{
+ if (SessionId == Oid::Zero)
+ {
+ m_SessionId = GetSessionIdString();
+ }
+ else
+ {
+ m_SessionId = SessionId.ToString();
+ }
+}
+
HttpClient::Response
HttpClient::Put(std::string_view Url, const IoBuffer& Payload, const HttpClient::KeyValueMap& AdditionalHeader)
{