blob: 5ebebc656b4ad359dc0795ab66c3d267b1a9c643 [file] [log] [blame]
Saqib Khan5d532672017-08-09 10:44:50 -05001#pragma once
2
3#include <experimental/filesystem>
4#include "config.h"
5
6namespace phosphor
7{
8namespace software
9{
10namespace updater
11{
12
13namespace fs = std::experimental::filesystem;
14
15/** @brief Serialization function - stores activation information to file
16 * @param[in] versionId - The version for which to store information.
17 * @param[in] priority - RedundancyPriority value for that version.
18 **/
19void storeToFile(std::string versionId, uint8_t priority);
20
21/** @brief Serialization function - restores activation information from file
22 * @param[in] versionId - The version for which to retrieve information.
23 * @param[in] priority - RedundancyPriority reference for that version.
Saqib Khan1eef62d2017-08-10 15:29:34 -050024 * @return true if restore was successful, false if not
Saqib Khan5d532672017-08-09 10:44:50 -050025 **/
Saqib Khan1eef62d2017-08-10 15:29:34 -050026bool restoreFromFile(std::string versionId, uint8_t& priority);
Saqib Khan5d532672017-08-09 10:44:50 -050027
28/** @brief Removes the serial file for a given version.
29 * @param[in] versionId - The version for which to remove a file, if it exists.
30 **/
31void removeFile(std::string versionId);
32
Gunnar Millsfa34e022018-09-04 10:05:45 -050033} // namespace updater
Saqib Khan5d532672017-08-09 10:44:50 -050034} // namespace software
Gunnar Millsfa34e022018-09-04 10:05:45 -050035} // namespace phosphor