Prepare for boost::url upgrade
The new boost URL now interops properly with std::string_view, which is
great, and cleans up a bunch of mediocre code to convert one to another.
It has also been pulled into boost-proper, so we no longer need a
boost-url dependency that's separate.
Unfortunately, boost url makes these improvements by changing
boost::string_view for boost::urls::const_string, which causes us to
have some compile errors on the missing type.
The bulk of these changes fall into a couple categories, and have to be
executed in one commit.
string() is replaced with buffer() on the url and url_view types
boost::string_view is replaced by std::string_view for many times, in
many cases removing a temporary that we had in the code previously.
Tested: Code compiles with boost 1.81.0 beta.
Redfish service validator passes.
Pretty good unit test coverage for URL-specific use cases.
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: I8d3dc89b53d1cc390887fe53605d4867f75f76fd
diff --git a/http/http_request.hpp b/http/http_request.hpp
index deaba31..d203077 100644
--- a/http/http_request.hpp
+++ b/http/http_request.hpp
@@ -116,16 +116,14 @@
private:
bool setUrlInfo()
{
- auto result = boost::urls::parse_relative_ref(
- boost::urls::string_view(target().data(), target().size()));
+ auto result = boost::urls::parse_relative_ref(target());
if (!result)
{
return false;
}
urlView = *result;
- url = std::string_view(urlView.encoded_path().data(),
- urlView.encoded_path().size());
+ url = urlView.encoded_path();
return true;
}
};