diff --git a/utils/rest_server/rest_server.cpp b/utils/rest_server/rest_server.cpp index f244370..08ad452 100644 --- a/utils/rest_server/rest_server.cpp +++ b/utils/rest_server/rest_server.cpp @@ -13,16 +13,17 @@ #include struct Options { - Pistache::IP listenAddress = Pistache::Ipv4::any(); + std::string listenIP = "localhost"; + fs::path logFile = "daggy.log"; uint16_t listenPort = 2503; size_t webThreads = 50; size_t dagThreads = 20; - - std::unique_ptr executor; - std::unique_ptr logger; + size_t taskThreads = 20; }; int main(int argc, char **argv) { + Options options; + argparse::ArgumentParser args("Daggy"); args.add_argument("-v", "--verbose"); @@ -34,7 +35,12 @@ int main(int argc, char **argv) { .help("Port to listen to") .action([](const std::string &value) { return std::stoi(value); }); - // Set some defaults + std::ofstream logFile(options.logFile, std::ios::app); + daggy::loggers::dag_run::OStreamLogger logger(logFile); + daggy::executors::task::ForkingTaskExecutor executor(options.taskThreads); + Pistache::Address listenSpec(options.listenIP, options.listenPort); - // daggy::Server endpoint(10); + daggy::Server server(listenSpec, logger, executor, options.dagThreads); + server.init(options.webThreads); + server.start(); } \ No newline at end of file