From 0f1f00362c5575454bd72c07decbddb323ff270a Mon Sep 17 00:00:00 2001 From: Ian Roddis Date: Fri, 20 Aug 2021 11:18:26 -0300 Subject: [PATCH] - rest_server is now a complete binary, just needs more config options boilerplate. --- utils/rest_server/rest_server.cpp | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) 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