| #include "bmc/daemon_context_bmc.h" |
| |
| #include <cstdint> |
| |
| #include "bmc/persistent_storage_bmc.h" |
| #include "bmc/scheduler_bmc.h" |
| #include "daemon_context.h" |
| #include "persistent_storage.h" |
| #include "scheduler_interface.h" |
| #include "absl/time/time.h" |
| #include "boost/asio/io_context.hpp" // NOLINT(readability/boost) |
| |
| namespace safepower_agent { |
| |
| using boost::asio::io_context; |
| |
| DaemonContextBMC::DaemonContextBMC() |
| : io_context_(1), // concurrency_hint 1 |
| scheduler_(io_context_), |
| persistent_storage_manager_() { |
| epoch_ms_ = absl::ToUnixMillis(now()); |
| } |
| |
| DaemonContextBMC& DaemonContextBMC::Get() { |
| return static_cast<DaemonContextBMC&>(DaemonContext::Get()); |
| } |
| |
| SchedulerInterface& DaemonContextBMC::scheduler() { return scheduler_; } |
| |
| PersistentStorageManager& DaemonContextBMC::persistent_storage_manager() { |
| return persistent_storage_manager_; |
| } |
| |
| io_context& DaemonContextBMC::get_io_context() { return io_context_; } |
| |
| uint64_t DaemonContextBMC::epoch_ms() { return epoch_ms_; } |
| |
| } // namespace safepower_agent |