Enable user initiated dump child directory level file watch
Change-Id: I38b1f0a06e96a465526ea1ac497e49dc5f778dd8
Signed-off-by: Jayanth Othayoth <ojayanth@in.ibm.com>
diff --git a/dump_manager.hpp b/dump_manager.hpp
index 4e6715b..003d9e4 100644
--- a/dump_manager.hpp
+++ b/dump_manager.hpp
@@ -33,6 +33,8 @@
namespace fs = std::experimental::filesystem;
+using Watch = phosphor::dump::inotify::Watch;
+
/** @class Manager
* @brief OpenBMC Dump manager implementation.
* @details A concrete implementation for the
@@ -123,6 +125,11 @@
//the sd_event_add_child callback.
return 0;
}
+ /** @brief Remove specified watch object pointer from the
+ * watch map and associated entry from the map.
+ * @param[in] path - unique identifier of the map
+ */
+ void removeWatch(const fs::path& path);
/** @brief sdbusplus DBus bus connection. */
sdbusplus::bus::bus& bus;
@@ -136,8 +143,13 @@
/** @brief Id of the last Dump entry */
uint32_t lastEntryId;
- /** @brief Dump watch object */
- phosphor::dump::inotify::Watch dumpWatch;
+ /** @brief Dump main watch object */
+ Watch dumpWatch;
+
+ /** @brief Child directory path and its associated watch object map
+ * [path:watch object]
+ */
+ std::map<fs::path, std::unique_ptr<Watch>> childWatchMap;
};
} // namespace dump