diff options
author | Gunnar Mills <gmills@us.ibm.com> | 2021-11-16 20:37:47 +0300 |
---|---|---|
committer | Gunnar Mills <gmills@us.ibm.com> | 2021-11-16 20:41:01 +0300 |
commit | 9062d478d4dc89598e215e1538ba8fbb8db2cf10 (patch) | |
tree | c989da259e677ed3b471a53a6bf271868a190880 /http/http_response.hpp | |
parent | ccd584f2da1e687ea66d47824a791162458e737b (diff) | |
download | bmcweb-9062d478d4dc89598e215e1538ba8fbb8db2cf10.tar.xz |
Revert "Change the completionhandler to accept Res"
This reverts commit 91995f3272010875e1559397e98ca93354066a0e.
Seeing bumps fail.
https://gerrit.openbmc-project.xyz/c/openbmc/openbmc/+/48864
Please fix, test, and resubmit.
Change-Id: Id539fe66d5a093caf8f22a393f7af7b58ead5247
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
Diffstat (limited to 'http/http_response.hpp')
-rw-r--r-- | http/http_response.hpp | 44 |
1 files changed, 13 insertions, 31 deletions
diff --git a/http/http_response.hpp b/http/http_response.hpp index c99b2c378b..a983d4ae51 100644 --- a/http/http_response.hpp +++ b/http/http_response.hpp @@ -39,8 +39,6 @@ struct Response Response() : stringResponse(response_type{}) {} - Response(Response&& res) = delete; - Response& operator=(const Response& r) = delete; Response& operator=(Response&& r) noexcept @@ -115,53 +113,37 @@ struct Response { if (completed) { - BMCWEB_LOG_ERROR << this << " Response was ended twice"; + BMCWEB_LOG_ERROR << "Response was ended twice"; return; } completed = true; - BMCWEB_LOG_DEBUG << this << " calling completion handler"; + BMCWEB_LOG_DEBUG << "calling completion handler"; if (completeRequestHandler) { - BMCWEB_LOG_DEBUG << this << " completion handler was valid"; - completeRequestHandler(*this); + BMCWEB_LOG_DEBUG << "completion handler was valid"; + completeRequestHandler(); } } - bool isAlive() - { - return isAliveHelper && isAliveHelper(); - } - - void setCompleteRequestHandler(std::function<void(Response&)>&& handler) + void end(std::string_view bodyPart) { - BMCWEB_LOG_DEBUG << this << " setting completion handler"; - completeRequestHandler = std::move(handler); + write(bodyPart); + end(); } - std::function<void(Response&)> releaseCompleteRequestHandler() - { - BMCWEB_LOG_DEBUG << this << " releasing completion handler" - << static_cast<bool>(completeRequestHandler); - std::function<void(Response&)> ret = completeRequestHandler; - completeRequestHandler = nullptr; - return ret; - } - - void setIsAliveHelper(std::function<bool()>&& handler) + bool isAlive() { - isAliveHelper = std::move(handler); + return isAliveHelper && isAliveHelper(); } - std::function<bool()> releaseIsAliveHelper() + void setCompleteRequestHandler(std::function<void()> newHandler) { - std::function<bool()> ret = std::move(isAliveHelper); - isAliveHelper = nullptr; - return ret; + completeRequestHandler = std::move(newHandler); } private: - bool completed = false; - std::function<void(Response&)> completeRequestHandler; + bool completed{}; + std::function<void()> completeRequestHandler; std::function<bool()> isAliveHelper; // In case of a JSON object, set the Content-Type header |