PEL: Set critical association to object paths

Create critical association to inventory d-bus objects.
This is being done for the items in callouts that need
their service indicators turned on in its code, and
that the other association endpoint is the chasis so
it can be used for health rollup.

The associations property on the
xyz.openbmc_project.Association.Definitions interface
will have following entry added to called out object path:
["health_rollup", "critical",
"/xyz/openbmc_project/inventory/system/chassis"]

Signed-off-by: Sumit Kumar <sumit_kumar@in.ibm.com>
Change-Id: I50dfe4807ac9c19f54c49dfa2b9ec7119aaffb96
diff --git a/extensions/openpower-pels/data_interface.hpp b/extensions/openpower-pels/data_interface.hpp
index 7a203ae..89b09ed 100644
--- a/extensions/openpower-pels/data_interface.hpp
+++ b/extensions/openpower-pels/data_interface.hpp
@@ -296,6 +296,14 @@
                                bool functional) const = 0;
 
     /**
+     * @brief Sets the critical association on the D-Bus object.
+     *
+     * @param[in] objectPath - The D-Bus object path
+     */
+    virtual void
+        setCriticalAssociation(const std::string& objectPath) const = 0;
+
+    /**
      * @brief Returns the manufacturing QuiesceOnError property
      *
      * @return bool - Manufacturing QuiesceOnError property
@@ -579,6 +587,13 @@
                        bool functional) const override;
 
     /**
+     * @brief Sets the critical association on the D-Bus object.
+     *
+     * @param[in] objectPath - The D-Bus object path
+     */
+    void setCriticalAssociation(const std::string& objectPath) const override;
+
+    /**
      * @brief Returns the manufacturing QuiesceOnError property
      *
      * @return bool - Manufacturing QuiesceOnError property