diff options
author | Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com> | 2017-10-18 01:41:51 -0500 |
---|---|---|
committer | Brad Bishop <bradleyb@fuzziesquirrel.com> | 2018-04-11 05:05:20 +0000 |
commit | 6524b9d8385919276d21471bec4352b00146c2d0 (patch) | |
tree | 6e6097c7c798ef96cd03b2864a8de908606925ca /src/event_serialize.hpp | |
parent | 06fdaff4bbfadf84123d5275433318e82643807a (diff) | |
download | phosphor-dbus-monitor-6524b9d8385919276d21471bec4352b00146c2d0.tar.gz phosphor-dbus-monitor-6524b9d8385919276d21471bec4352b00146c2d0.zip |
Add persistency for events
Persist event D-bus objects using cereal
Resolves openbmc/openbmc#2319
Change-Id: Ifa15d944fe1d1026761f65eeb647dcbdf6afdba0
Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>
Diffstat (limited to 'src/event_serialize.hpp')
-rw-r--r-- | src/event_serialize.hpp | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/event_serialize.hpp b/src/event_serialize.hpp new file mode 100644 index 0000000..f052845 --- /dev/null +++ b/src/event_serialize.hpp @@ -0,0 +1,30 @@ +#pragma once + +#include <experimental/filesystem> +#include "event_entry.hpp" +#include "config.h" + +namespace phosphor +{ +namespace events +{ + +namespace fs = std::experimental::filesystem; + +/** @brief Serialize and persist event d-bus object + * @param[in] event - const reference to event entry. + * @param[in] eventName - Name of the event. + * @return fs::path - pathname of persisted events file + */ +fs::path serialize(const Entry& event, const std::string& eventName); + +/** @brief Deserialze a persisted event into a d-bus object + * @param[in] path - pathname of persisted event file + * @param[in] event - reference to event object which is the target of + * deserialization. + * @return bool - true if the deserialization was successful, false otherwise. + */ +bool deserialize(const fs::path& path, Entry& event); + +} // namespace events +} // namespace phosphor |