1 #include "report_factory.hpp" 2 3 #include "report.hpp" 4 5 ReportFactory::ReportFactory( 6 boost::asio::io_context& ioc, 7 const std::shared_ptr<sdbusplus::asio::object_server>& objServer) : 8 ioc(ioc), 9 objServer(objServer) 10 {} 11 12 std::unique_ptr<interfaces::Report> ReportFactory::make( 13 const std::string& name, const std::string& reportingType, 14 bool emitsReadingsSignal, bool logToMetricReportsCollection, 15 std::chrono::milliseconds period, const ReadingParameters& metricParams, 16 interfaces::ReportManager& reportManager) const 17 { 18 std::vector<std::shared_ptr<interfaces::Metric>> metrics; 19 20 return std::make_unique<Report>( 21 ioc, objServer, name, reportingType, emitsReadingsSignal, 22 logToMetricReportsCollection, period, metricParams, reportManager, 23 std::move(metrics)); 24 } 25