Add storeGroups/restoreGroups method to LED Manager
Use CEREAL to storeGroup/restoreGroups the current state of
asserted groups.
Call storeGroups() when the request comes to add to(remove from)
asserted group.
Call restoreGroups() as part of starting LED Manager daemon.
Tested: Manually set the Asserted property of each group to true,
after rebooting, all property values tested with the busctl command
are still true.
Signed-off-by: George Liu <liuxiwei@inspur.com>
Change-Id: Ibeb1de5f51e3d67e98eeea34764e9efc6d6d8b35
diff --git a/group.cpp b/group.cpp
index 0d4fa10..fc2cef6 100644
--- a/group.cpp
+++ b/group.cpp
@@ -1,3 +1,5 @@
+#include "config.h"
+
#include "group.hpp"
#include <sdbusplus/message.hpp>
@@ -18,6 +20,9 @@
// validation.
auto result = manager.setGroupState(path, value, ledsAssert, ledsDeAssert);
+ // Store asserted state
+ serialize.storeGroups(path, result);
+
// If something does not go right here, then there should be an sdbusplus
// exception thrown.
manager.driveLEDs(ledsAssert, ledsDeAssert);