summaryrefslogtreecommitdiff
path: root/src/main.cpp
diff options
context:
space:
mode:
authorCzarnowski, Przemyslaw <przemyslaw.hawrylewicz.czarnowski@intel.com>2019-12-20 15:44:20 +0300
committerCzarnowski, Przemyslaw <przemyslaw.hawrylewicz.czarnowski@intel.com>2020-01-17 11:47:38 +0300
commitc8127eabdbc3ba26ae107709e424d62f88c8c566 (patch)
tree2279e83778294e603821936b1ddd9a43e0106737 /src/main.cpp
parente556db15fd8342baac084f82377a875970f9c108 (diff)
downloadvirtual-media-c8127eabdbc3ba26ae107709e424d62f88c8c566.tar.xz
Add Process and DeviceMonitor class with dependencies
Added DeviceMonitor which watches for ndb device changes. Contains: - Udev library wrappers. - NBDevice object to manage nbd devices in errorless manner. - Process library, which manages process spawning. Change-Id: Iaf3caec56cd6084f1c17ccc5657b9b14c8e82d33 Signed-off-by: Rapkiewicz, Pawel <pawel.rapkiewicz@intel.com> Signed-off-by: Czarnowski, Przemyslaw <przemyslaw.hawrylewicz.czarnowski@intel.com>
Diffstat (limited to 'src/main.cpp')
-rw-r--r--src/main.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/main.cpp b/src/main.cpp
index 7caae14..666c3a6 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -1,4 +1,5 @@
#include "logger.hpp"
+#include "system.hpp"
#include <sys/mount.h>
@@ -19,7 +20,8 @@
class App
{
public:
- App(boost::asio::io_context& ioc, sd_bus* custom_bus = nullptr) : ioc(ioc)
+ App(boost::asio::io_context& ioc, sd_bus* custom_bus = nullptr) :
+ ioc(ioc), devMonitor(ioc)
{
if (!custom_bus)
{
@@ -34,6 +36,10 @@ class App
bus->request_name("xyz.openbmc_project.VirtualMedia");
objManager = std::make_shared<sdbusplus::server::manager::manager>(
*bus, "/xyz/openbmc_project/VirtualMedia");
+
+ devMonitor.run([](const NBDDevice& device, StateChange change) {
+ // placeholder for some future actions
+ });
}
private:
@@ -41,6 +47,7 @@ class App
std::shared_ptr<sdbusplus::asio::connection> bus;
std::shared_ptr<sdbusplus::asio::object_server> objServer;
std::shared_ptr<sdbusplus::server::manager::manager> objManager;
+ DeviceMonitor devMonitor;
};
int main()