mirror of
https://github.com/BlackMATov/curly.hpp.git
synced 2025-12-16 14:11:17 +07:00
change timeout resolution to milliseconds
This commit is contained in:
@@ -184,9 +184,9 @@ namespace curly_hpp
|
|||||||
request_builder& verbose(bool v) noexcept;
|
request_builder& verbose(bool v) noexcept;
|
||||||
request_builder& verification(bool v) noexcept;
|
request_builder& verification(bool v) noexcept;
|
||||||
request_builder& redirections(std::uint32_t r) noexcept;
|
request_builder& redirections(std::uint32_t r) noexcept;
|
||||||
request_builder& request_timeout(time_sec_t t) noexcept;
|
request_builder& request_timeout(time_ms_t t) noexcept;
|
||||||
request_builder& response_timeout(time_sec_t t) noexcept;
|
request_builder& response_timeout(time_ms_t t) noexcept;
|
||||||
request_builder& connection_timeout(time_sec_t t) noexcept;
|
request_builder& connection_timeout(time_ms_t t) noexcept;
|
||||||
|
|
||||||
request_builder& content(std::string_view b);
|
request_builder& content(std::string_view b);
|
||||||
request_builder& content(content_t b) noexcept;
|
request_builder& content(content_t b) noexcept;
|
||||||
@@ -201,9 +201,9 @@ namespace curly_hpp
|
|||||||
bool verbose() const noexcept;
|
bool verbose() const noexcept;
|
||||||
bool verification() const noexcept;
|
bool verification() const noexcept;
|
||||||
std::uint32_t redirections() const noexcept;
|
std::uint32_t redirections() const noexcept;
|
||||||
time_sec_t request_timeout() const noexcept;
|
time_ms_t request_timeout() const noexcept;
|
||||||
time_sec_t response_timeout() const noexcept;
|
time_ms_t response_timeout() const noexcept;
|
||||||
time_sec_t connection_timeout() const noexcept;
|
time_ms_t connection_timeout() const noexcept;
|
||||||
|
|
||||||
content_t& content() noexcept;
|
content_t& content() noexcept;
|
||||||
const content_t& content() const noexcept;
|
const content_t& content() const noexcept;
|
||||||
@@ -243,9 +243,9 @@ namespace curly_hpp
|
|||||||
bool verbose_{false};
|
bool verbose_{false};
|
||||||
bool verification_{false};
|
bool verification_{false};
|
||||||
std::uint32_t redirections_{10u};
|
std::uint32_t redirections_{10u};
|
||||||
time_sec_t request_timeout_{~0u};
|
time_ms_t request_timeout_{time_sec_t{~0u}};
|
||||||
time_sec_t response_timeout_{60u};
|
time_ms_t response_timeout_{time_sec_t{60u}};
|
||||||
time_sec_t connection_timeout_{20u};
|
time_ms_t connection_timeout_{time_sec_t{20u}};
|
||||||
private:
|
private:
|
||||||
content_t content_;
|
content_t content_;
|
||||||
callback_t callback_;
|
callback_t callback_;
|
||||||
|
|||||||
@@ -401,14 +401,14 @@ namespace curly_hpp
|
|||||||
curl_easy_setopt(curlh_.get(), CURLOPT_FOLLOWLOCATION, 0l);
|
curl_easy_setopt(curlh_.get(), CURLOPT_FOLLOWLOCATION, 0l);
|
||||||
}
|
}
|
||||||
|
|
||||||
curl_easy_setopt(curlh_.get(), CURLOPT_TIMEOUT,
|
curl_easy_setopt(curlh_.get(), CURLOPT_TIMEOUT_MS,
|
||||||
static_cast<long>(std::max(time_sec_t(1), breq_.request_timeout()).count()));
|
static_cast<long>(std::max(time_ms_t(1), breq_.request_timeout()).count()));
|
||||||
|
|
||||||
curl_easy_setopt(curlh_.get(), CURLOPT_CONNECTTIMEOUT,
|
curl_easy_setopt(curlh_.get(), CURLOPT_CONNECTTIMEOUT_MS,
|
||||||
static_cast<long>(std::max(time_sec_t(1), breq_.connection_timeout()).count()));
|
static_cast<long>(std::max(time_ms_t(1), breq_.connection_timeout()).count()));
|
||||||
|
|
||||||
last_response_ = time_point_t::clock::now();
|
last_response_ = time_point_t::clock::now();
|
||||||
response_timeout_ = std::max(time_sec_t(1), breq_.response_timeout());
|
response_timeout_ = std::max(time_ms_t(1), breq_.response_timeout());
|
||||||
|
|
||||||
if ( CURLM_OK != curl_multi_add_handle(curlm, curlh_.get()) ) {
|
if ( CURLM_OK != curl_multi_add_handle(curlm, curlh_.get()) ) {
|
||||||
throw exception("curly_hpp: failed to curl_multi_add_handle");
|
throw exception("curly_hpp: failed to curl_multi_add_handle");
|
||||||
@@ -636,7 +636,7 @@ namespace curly_hpp
|
|||||||
|
|
||||||
const std::size_t written_bytes = breq_.downloader()->write(src, size);
|
const std::size_t written_bytes = breq_.downloader()->write(src, size);
|
||||||
downloaded_ += written_bytes;
|
downloaded_ += written_bytes;
|
||||||
|
|
||||||
return written_bytes;
|
return written_bytes;
|
||||||
} catch (...) {
|
} catch (...) {
|
||||||
return 0u;
|
return 0u;
|
||||||
@@ -801,17 +801,17 @@ namespace curly_hpp
|
|||||||
return *this;
|
return *this;
|
||||||
}
|
}
|
||||||
|
|
||||||
request_builder& request_builder::request_timeout(time_sec_t t) noexcept {
|
request_builder& request_builder::request_timeout(time_ms_t t) noexcept {
|
||||||
request_timeout_ = t;
|
request_timeout_ = t;
|
||||||
return *this;
|
return *this;
|
||||||
}
|
}
|
||||||
|
|
||||||
request_builder& request_builder::response_timeout(time_sec_t t) noexcept {
|
request_builder& request_builder::response_timeout(time_ms_t t) noexcept {
|
||||||
response_timeout_ = t;
|
response_timeout_ = t;
|
||||||
return *this;
|
return *this;
|
||||||
}
|
}
|
||||||
|
|
||||||
request_builder& request_builder::connection_timeout(time_sec_t t) noexcept {
|
request_builder& request_builder::connection_timeout(time_ms_t t) noexcept {
|
||||||
connection_timeout_ = t;
|
connection_timeout_ = t;
|
||||||
return *this;
|
return *this;
|
||||||
}
|
}
|
||||||
@@ -865,15 +865,15 @@ namespace curly_hpp
|
|||||||
return redirections_;
|
return redirections_;
|
||||||
}
|
}
|
||||||
|
|
||||||
time_sec_t request_builder::request_timeout() const noexcept {
|
time_ms_t request_builder::request_timeout() const noexcept {
|
||||||
return request_timeout_;
|
return request_timeout_;
|
||||||
}
|
}
|
||||||
|
|
||||||
time_sec_t request_builder::response_timeout() const noexcept {
|
time_ms_t request_builder::response_timeout() const noexcept {
|
||||||
return response_timeout_;
|
return response_timeout_;
|
||||||
}
|
}
|
||||||
|
|
||||||
time_sec_t request_builder::connection_timeout() const noexcept {
|
time_ms_t request_builder::connection_timeout() const noexcept {
|
||||||
return connection_timeout_;
|
return connection_timeout_;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user