Files
42_INT_12_webserv/srcs/main.cpp
2022-07-31 16:53:22 +02:00

52 lines
1.1 KiB
C++

#include <iostream>
#include <exception>
#include <stdexcept>
#include "Webserv.hpp"
#include "ConfigParser.hpp"
int main(int ac, char **av)
{
try
{
std::string config = (ac == 2 ? av[1] : "./default.config");
// like this just looks kinda gross, why bother creating an instance
// and not immediately parsing? like it servers no other purpose...
// what if i call parse directly in the constructor?
// oh because the constructor has no return, but still
// is there a better way?
ConfigParser configParser(config.c_str());
configParser._print_content();
// i don't love that servers has to be a pointer...
std::vector<ServerConfig>* servers = configParser.parse();
// use an iterator you moron
for (std::vector<ServerConfig>::iterator it = servers->begin(); it < servers->end(); it++)
{
// std::cout << it->server_name << " ";
it->print_all();
}
// Webserv serv(configParser.parse());
// is this better or worse than using
Webserv serv;
// serv.init_virtual_servers();
serv.init_virtual_servers(servers);
delete servers;
serv.run();
}
catch (std::exception& e)
{
std::cout << e.what() << '\n';
}
return (0);
}