blob: 3a0dc09dd8ca2ddbe9640133a07a1ff077ebf564 [file] [log] [blame]
#pragma once
#include "boot_manager.hpp"
#include "dbus_handler.hpp"
#include "utils.hpp"
#include <sdbusplus/asio/connection.hpp>
#include <sdbusplus/bus.hpp>
#include <memory>
#include <string_view>
namespace boot_time_monitor
{
class BMCMonitorApp
{
public:
constexpr static std::string_view kNodeName = "bmc";
constexpr static std::string_view kObjPath =
"/xyz/openbmc_project/time/boot/bmc";
BMCMonitorApp(sdbusplus::bus::bus& bus,
std::shared_ptr<sdbusplus::asio::connection> conn);
private:
sdbusplus::server::manager::manager objManager;
std::shared_ptr<Util> util;
std::shared_ptr<FileUtil> cpCSV;
std::shared_ptr<FileUtil> durCSV;
std::shared_ptr<BootManager> bootManager;
std::shared_ptr<DbusHandler> dbusHandler;
};
} // namespace boot_time_monitor