Update CollectionStatus property for all sub FRUs

On VPD collection failure, CollectionStatus Dbus property is updated
only for the base FRU, this results in the mismatch of collection
status with the remaining sub FRUs.

This commit updates the CollectionStatus as failed for all FRUs
present under the EEPROM, if there is any VPD collection failure for
any reason.

Output:
```
root@p10bmc:~# busctl get-property xyz.openbmc_project.Inventory.Manager /xyz/openbmc_project/inventory/system/chassis/motherboard/dimm8 com.ibm.VPD.Collection CollectionStatus
s "com.ibm.VPD.Collection.Status.Failure"

root@p10bmc:~# busctl get-property xyz.openbmc_project.Inventory.Manager /xyz/openbmc_project/inventory/system/chassis/motherboard/dimm8/unit0 com.ibm.VPD.Collection CollectionStatus

root@p10bmc:~# busctl get-property xyz.openbmc_project.Inventory.Manager /xyz/openbmc_project/inventory/system/chassis/motherboard/dimm8/unit1 com.ibm.VPD.Collection CollectionStatus
s "com.ibm.VPD.Collection.Status.Failure"

root@p10bmc:~# busctl get-property xyz.openbmc_project.Inventory.Manager /xyz/openbmc_project/inventory/system/chassis/motherboard/dimm8/unit2 com.ibm.VPD.Collection CollectionStatus
s "com.ibm.VPD.Collection.Status.Failure"

root@p10bmc:~# busctl get-property xyz.openbmc_project.Inventory.Manager /xyz/openbmc_project/inventory/system/chassis/motherboard/dimm8/unit3 com.ibm.VPD.Collection CollectionStatus
s "com.ibm.VPD.Collection.Status.Failure"

```

Change-Id: I900590d9a5c89e02dc791722d5a2fc5c5983e158
Signed-off-by: Anupama B R <anupama.b.r1@ibm.com>
diff --git a/vpd-manager/include/worker.hpp b/vpd-manager/include/worker.hpp
index b560162..0080696 100644
--- a/vpd-manager/include/worker.hpp
+++ b/vpd-manager/include/worker.hpp
@@ -531,6 +531,18 @@
                i_fru.value("handlePresence", true);
     }
 
+    /**
+     * @brief API to set CollectionStatus property.
+     *
+     * This API updates the CollectionStatus property of the given FRU with the
+     * given value.
+     *
+     * @param[in] i_vpdPath - EEPROM or inventory path.
+     * @param[in] i_value - Value to be set.
+     */
+    void setCollectionStatusProperty(const std::string& i_fruPath,
+                                     const std::string& i_value) const noexcept;
+
     // Parsed JSON file.
     nlohmann::json m_parsedJson{};