171230efdSCarol Wang #include <cstdlib>
271230efdSCarol Wang #include <exception>
371230efdSCarol Wang #include <sdbusplus/bus.hpp>
471230efdSCarol Wang #include "config.h"
571230efdSCarol Wang #include "scheduled_host_transition.hpp"
671230efdSCarol Wang 
771230efdSCarol Wang int main()
871230efdSCarol Wang {
9*6a5db3d3SCarol Wang     // Get a default event loop
10*6a5db3d3SCarol Wang     auto event = sdeventplus::Event::get_default();
11*6a5db3d3SCarol Wang 
12*6a5db3d3SCarol Wang     // Get a handle to system dbus
1371230efdSCarol Wang     auto bus = sdbusplus::bus::new_default();
1471230efdSCarol Wang 
1571230efdSCarol Wang     // For now, we only have one instance of the host
1671230efdSCarol Wang     auto objPathInst = std::string{HOST_OBJPATH} + '0';
1771230efdSCarol Wang 
1871230efdSCarol Wang     // Add sdbusplus ObjectManager.
1971230efdSCarol Wang     sdbusplus::server::manager::manager objManager(bus, objPathInst.c_str());
2071230efdSCarol Wang 
2171230efdSCarol Wang     phosphor::state::manager::ScheduledHostTransition manager(
22*6a5db3d3SCarol Wang         bus, objPathInst.c_str(), event);
2371230efdSCarol Wang 
2471230efdSCarol Wang     bus.request_name(SCHEDULED_HOST_TRANSITION_BUSNAME);
2571230efdSCarol Wang 
26*6a5db3d3SCarol Wang     // Attach the bus to sd_event to service user requests
27*6a5db3d3SCarol Wang     bus.attach_event(event.get(), SD_EVENT_PRIORITY_NORMAL);
28*6a5db3d3SCarol Wang     event.loop();
29*6a5db3d3SCarol Wang 
3071230efdSCarol Wang     return 0;
3171230efdSCarol Wang }
32