diff options
author | Ed Tanous <edtanous@google.com> | 2023-04-25 01:28:50 +0300 |
---|---|---|
committer | Ed Tanous <ed@tanous.net> | 2023-05-16 19:05:33 +0300 |
commit | ef4c65b741724d724452a3a0efe8dff0d450514a (patch) | |
tree | 9667bdff1dd9d2dbeac94bc8bd46efd83177512b /redfish-core/lib/fabric_adapters.hpp | |
parent | a87c4180fd7f2127960fbc4c89c31b7659f0cfb8 (diff) | |
download | bmcweb-ef4c65b741724d724452a3a0efe8dff0d450514a.tar.xz |
Boost::urls::format
Boost 1.82 dropped a lovely new toy, boost::urls::format, which is a lot
like our urlFromPieces method, but better in that it makes the resulting
uris more readable, and allows doing things like fragments in a single
line instead of multiple. We should prefer it in some cases.
Tested:
Redfish service validator passes.
Spot checks of URLs work as expected.
Unit tests pass.
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: Ia7b38f0a95771c862507e7d5b4aa68aa1c98403c
Diffstat (limited to 'redfish-core/lib/fabric_adapters.hpp')
-rw-r--r-- | redfish-core/lib/fabric_adapters.hpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/redfish-core/lib/fabric_adapters.hpp b/redfish-core/lib/fabric_adapters.hpp index be89fbc3c2..16174bf4bd 100644 --- a/redfish-core/lib/fabric_adapters.hpp +++ b/redfish-core/lib/fabric_adapters.hpp @@ -9,6 +9,7 @@ #include "utils/json_utils.hpp" #include <boost/system/error_code.hpp> +#include <boost/url/format.hpp> #include <sdbusplus/asio/property.hpp> #include <sdbusplus/unpack_properties.hpp> @@ -184,8 +185,8 @@ inline void doAdapterGet(const std::shared_ptr<bmcweb::AsyncResp>& aResp, aResp->res.jsonValue["@odata.type"] = "#FabricAdapter.v1_4_0.FabricAdapter"; aResp->res.jsonValue["Name"] = "Fabric Adapter"; aResp->res.jsonValue["Id"] = adapterId; - aResp->res.jsonValue["@odata.id"] = crow::utility::urlFromPieces( - "redfish", "v1", "Systems", systemName, "FabricAdapters", adapterId); + aResp->res.jsonValue["@odata.id"] = boost::urls::format( + "/redfish/v1/Systems/{}/FabricAdapters/{}", systemName, adapterId); aResp->res.jsonValue["Status"]["State"] = "Enabled"; aResp->res.jsonValue["Status"]["Health"] = "OK"; @@ -283,8 +284,8 @@ inline void handleFabricAdapterCollectionGet( aResp->res.jsonValue["@odata.type"] = "#FabricAdapterCollection.FabricAdapterCollection"; aResp->res.jsonValue["Name"] = "Fabric Adapter Collection"; - aResp->res.jsonValue["@odata.id"] = crow::utility::urlFromPieces( - "redfish", "v1", "Systems", systemName, "FabricAdapters"); + aResp->res.jsonValue["@odata.id"] = boost::urls::format( + "/redfish/v1/Systems/{}/FabricAdapters", systemName); constexpr std::array<std::string_view, 1> interfaces{ "xyz.openbmc_project.Inventory.Item.FabricAdapter"}; |