Activation: create associations
Create activation, functional, activate associations during PSU update.
Tested: With dummy psu update service, verify the assocations are
created when the PSU update is completed, and not created
when PSU update fails.
Signed-off-by: Lei YU <mine260309@gmail.com>
Change-Id: I3d457e65b55066b93f7fc9a3311093dcec05d020
diff --git a/src/association_interface.hpp b/src/association_interface.hpp
new file mode 100644
index 0000000..e3d653c
--- /dev/null
+++ b/src/association_interface.hpp
@@ -0,0 +1,29 @@
+#pragma once
+
+#include <string>
+
+class AssociationInterface
+{
+ public:
+ virtual ~AssociationInterface() = default;
+
+ /** @brief Create an active association to the
+ * newly active software image
+ *
+ * @param[in] path - The path to create the association to.
+ */
+ virtual void createActiveAssociation(const std::string& path) = 0;
+
+ /** @brief Add the functional association to the
+ * new "running" PSU images
+ *
+ * @param[in] path - The path to add the association to.
+ */
+ virtual void addFunctionalAssociation(const std::string& path) = 0;
+
+ /** @brief Remove the associations from the provided software image path
+ *
+ * @param[in] path - The path to remove the association from.
+ */
+ virtual void removeAssociation(const std::string& path) = 0;
+};