Remove unused server configuration output and clean up event loop placeholder

This commit is contained in:
Quinten Mennen 2025-09-18 17:41:55 +02:00
parent 8bc624a080
commit ce815d18c6
3 changed files with 1 additions and 219 deletions

View File

@ -15,18 +15,6 @@ int main(int argc, char **argv)
return 1; return 1;
} }
ConfigManager::getInstance().init(argv[1]); // NOLINT ConfigManager::getInstance().init(argv[1]); // NOLINT
const auto &serverConfigs = ConfigManager::getInstance().getServerConfigs();
for (const auto &serverConfig : serverConfigs)
{
std::cout << "Server " << serverConfig.getHost() << " listening on port: " << serverConfig.getPort() << '\n';
for (const auto &path : serverConfig.getLocationPaths())
{
std::cout << " Location: " << path << '\n';
}
}
Server server(ConfigManager::getInstance()); Server server(ConfigManager::getInstance());
server.start(); server.start();

View File

@ -160,7 +160,6 @@ void Server::responseReady(int client_fd) const
void Server::eventLoop() void Server::eventLoop()
{ {
// Placeholder for the event loop logic
std::cout << "Entering event loop...\n"; std::cout << "Entering event loop...\n";
const int MAX_EVENTS = 10; const int MAX_EVENTS = 10;
struct epoll_event events[MAX_EVENTS]; // NOLINT struct epoll_event events[MAX_EVENTS]; // NOLINT
@ -204,208 +203,3 @@ void Server::eventLoop()
} }
} }
} }
// Server::Server(const ConfigManager &configManager) : _epoll_fd(-1), _configManager(configManager)
// {
// const auto &serverConfigs = configManager.getServerConfigs();
// if (serverConfigs.empty())
// {
// throw std::runtime_error("No server configurations available.");
// }
// }
// int createServerSocket(const std::string &host, int port)
// {
// int server_fd = socket(AF_INET, SOCK_STREAM, 0);
// if (server_fd == -1)
// {
// perror("Socket creation failed");
// exit(EXIT_FAILURE);
// }
// int opt = 1;
// if (setsockopt(server_fd, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(opt)) < 0)
// {
// perror("setsockopt");
// close(server_fd);
// exit(EXIT_FAILURE);
// }
// struct sockaddr_in address{};
// address.sin_family = AF_INET;
// address.sin_addr.s_addr = inet_addr(host.c_str());
// address.sin_port = htons(port);
// if (bind(server_fd, (struct sockaddr *)&address, sizeof(address)) < 0) // NOLINT
// {
// perror("Bind failed");
// close(server_fd);
// exit(EXIT_FAILURE);
// }
// if (listen(server_fd, SOMAXCONN) < 0)
// {
// perror("Listen failed");
// close(server_fd);
// exit(EXIT_FAILURE);
// }
// fcntl(server_fd, F_SETFL, O_NONBLOCK);
// std::cout << "Server listening on " << host << ":" << port << "...\n";
// return server_fd;
// }
// void Server::start()
// {
// std::cout << "Starting servers...\n";
// // 1. Load server configurations
// for (const auto &config : _configManager.get().getServerConfigs())
// {
// int server_fd = createServerSocket(config.getHost(), config.getPort());
// _fdToConfig.insert({server_fd, std::cref(config)});
// }
// if (_fdToConfig.empty())
// {
// throw std::runtime_error("No server sockets created.");
// }
// // 5. Set up epoll
// int epoll_fd = epoll_create1(0);
// if (epoll_fd == -1)
// {
// perror("epoll_create1 failed");
// // TODO: Close all server FDs
// // for (int server_fd : _server_fds)
// // {
// // close(server_fd);
// // }
// }
// for (const auto &pair : _fdToConfig)
// {
// int server_fd = pair.first;
// struct epoll_event event{};
// event.events = EPOLLIN; // Interested in read events
// event.data.fd = server_fd;
// if (epoll_ctl(epoll_fd, EPOLL_CTL_ADD, server_fd, &event) == -1)
// {
// perror("epoll_ctl failed");
// // TODO close fds
// close(epoll_fd);
// // throw exception
// }
// // _server_fds.push_back(server_fd);
// }
// _epoll_fd = epoll_fd;
// eventLoop();
// }
// void Server::eventLoop()
// {
// // Placeholder for the event loop logic
// std::cout << "Entering event loop...\n";
// const int MAX_EVENTS = 10;
// struct epoll_event events[MAX_EVENTS]; // NOLINT
// while (true)
// {
// int nfds = epoll_wait(_epoll_fd, events, MAX_EVENTS, -1); // NOLINT
// if (nfds == -1)
// {
// perror("epoll_wait failed");
// break;
// }
// for (int i = 0; i < nfds; ++i)
// {
// epoll_event &event = events[i];
// if ((event.events & EPOLLERR) > 0 || (event.events & EPOLLHUP) > 0)
// {
// std::cerr << "Epoll error on fd " << event.data.fd << '\n';
// close(event.data.fd);
// }
// else if (_fdToConfig.contains(event.data.fd))
// {
// handleConnection(_epoll_fd, &event);
// }
// else if ((event.events & EPOLLIN) > 0)
// {
// handleRequest(_epoll_fd, &event);
// }
// else if ((event.events & EPOLLOUT) > 0)
// {
// std::cout << "Attempting to send data to fd: " << event.data.fd << '\n';
// std::string response = clients.at(event.data.fd).getResponse();
// const char *httpResponse = response.c_str();
// ssize_t bytesSent = send(event.data.fd, httpResponse, strlen(httpResponse), 0);
// if (bytesSent < 0)
// {
// perror("Send error");
// }
// clients.erase(event.data.fd);
// close(event.data.fd); // Close after sending response
// }
// }
// }
// }
// void Server::handleRequest(int epoll_fd, struct epoll_event *event)
// {
// std::cout << "Handling request...\n";
// int client_fd = event->data.fd;
// std::cout << "client fd: " << client_fd << '\n';
// char buffer[1024] = {};
// ssize_t bytesRead = read(client_fd, buffer, sizeof(buffer) - 1);
// if (bytesRead < 0)
// {
// perror("Read error");
// close(client_fd);
// return;
// }
// if (bytesRead == 0)
// {
// std::cout << "Client disconnected, fd: " << client_fd << '\n';
// close(client_fd);
// return;
// }
// buffer[bytesRead] = '\0'; // Null-terminate the buffer
// std::cout << "Received request:\n" << buffer << '\n';
// // clients[client_fd] = Client(client_fd, *this, ServerConfig);
// clients.at(client_fd).request(buffer);
// }
// void Server::responseReady(int client_fd)
// {
// std::cout << "Response ready for client fd: " << client_fd << '\n';
// struct epoll_event ev;
// ev.events = EPOLLOUT | EPOLLET;
// ev.data.fd = client_fd;
// epoll_ctl(_epoll_fd, EPOLL_CTL_MOD, client_fd, &ev);
// }
// void Server::handleConnection(int epoll_fd, struct epoll_event *event)
// {
// int client_fd = accept(event->data.fd, nullptr, nullptr);
// std::cout << "connection " << client_fd << '\n';
// fcntl(client_fd, F_SETFL, O_NONBLOCK);
// if (client_fd == -1)
// {
// perror("Accept failed");
// return;
// }
// std::cout << "New connection accepted, fd: " << client_fd << '\n';
// struct epoll_event client_event;
// client_event.events = EPOLLIN | EPOLLET;
// client_event.data.fd = client_fd;
// if (epoll_ctl(epoll_fd, EPOLL_CTL_ADD, client_fd, &client_event) == -1)
// {
// perror("epoll_ctl failed");
// close(client_fd);
// close(epoll_fd);
// // throw exception
// }
// std::cout << "client fd " << client_fd << ", server fd " << event->data.fd << '\n';
// clients.insert({client_fd, Client(client_fd, *this, _fdToConfig.at(event->data.fd))});
// }

View File

@ -25,7 +25,7 @@ Socket::Socket() : _fd(socket(AF_INET, SOCK_STREAM, 0))
setNonBlocking(); setNonBlocking();
} }
Socket::Socket(int fd) : _fd(fd) // NOLINT readability-identifier-naming Socket::Socket(int fd) : _fd(fd) // NOLINT(readability-identifier-naming)
{ {
if (_fd == -1) if (_fd == -1)
{ {