update service: extract addRelatedItem

Deduplicate the logic to add a related item to a fw inventory item.

Tested: next patch in chain

Change-Id: I94455e165900011955de9196db49c7c89807ea3d
Signed-off-by: Alexander Hansen <alexander.hansen@9elements.com>
diff --git a/redfish-core/lib/update_service.hpp b/redfish-core/lib/update_service.hpp
index 28dd77c..8a778f7 100644
--- a/redfish-core/lib/update_service.hpp
+++ b/redfish-core/lib/update_service.hpp
@@ -1195,29 +1195,32 @@
         "/xyz/openbmc_project/software");
 }
 
+inline void addRelatedItem(const std::shared_ptr<bmcweb::AsyncResp>& asyncResp,
+                           const boost::urls::url& url)
+{
+    nlohmann::json& relatedItem = asyncResp->res.jsonValue["RelatedItem"];
+    nlohmann::json::object_t item;
+    item["@odata.id"] = url;
+    relatedItem.emplace_back(std::move(item));
+    asyncResp->res.jsonValue["RelatedItem@odata.count"] = relatedItem.size();
+}
+
 /* Fill related item links (i.e. bmc, bios) in for inventory */
 inline void getRelatedItems(const std::shared_ptr<bmcweb::AsyncResp>& asyncResp,
                             const std::string& purpose)
 {
     if (purpose == sw_util::bmcPurpose)
     {
-        nlohmann::json& relatedItem = asyncResp->res.jsonValue["RelatedItem"];
-        nlohmann::json::object_t item;
-        item["@odata.id"] = boost::urls::format(
-            "/redfish/v1/Managers/{}", BMCWEB_REDFISH_MANAGER_URI_NAME);
-        relatedItem.emplace_back(std::move(item));
-        asyncResp->res.jsonValue["RelatedItem@odata.count"] =
-            relatedItem.size();
+        auto url = boost::urls::format("/redfish/v1/Managers/{}",
+                                       BMCWEB_REDFISH_MANAGER_URI_NAME);
+        addRelatedItem(asyncResp, url);
     }
     else if (purpose == sw_util::biosPurpose)
     {
-        nlohmann::json& relatedItem = asyncResp->res.jsonValue["RelatedItem"];
-        nlohmann::json::object_t item;
-        item["@odata.id"] = std::format("/redfish/v1/Systems/{}/Bios",
-                                        BMCWEB_REDFISH_SYSTEM_URI_NAME);
-        relatedItem.emplace_back(std::move(item));
-        asyncResp->res.jsonValue["RelatedItem@odata.count"] =
-            relatedItem.size();
+        auto url = boost::urls::format("/redfish/v1/Systems/{}/Bios",
+                                       BMCWEB_REDFISH_SYSTEM_URI_NAME);
+
+        addRelatedItem(asyncResp, url);
     }
     else
     {