refactor(router): clean up unused functions

refactor(router): make handleRequest static
This commit is contained in:
Quinten 2025-10-01 20:46:11 +02:00
parent ab83c02fd2
commit a89150102c
3 changed files with 18 additions and 50 deletions

View File

@ -1,20 +1,20 @@
#include "webserv/http/HttpConstants.hpp" #include "webserv/router/Router.hpp"
#include <webserv/client/Client.hpp> #include <webserv/client/Client.hpp>
#include <webserv/config/ConfigManager.hpp> // for ConfigManager #include <webserv/config/ConfigManager.hpp>
#include <webserv/config/ServerConfig.hpp> // for ServerConfig #include <webserv/config/ServerConfig.hpp>
#include <webserv/handler/ErrorHandler.hpp> // for ErrorHandler #include <webserv/handler/ErrorHandler.hpp>
#include <webserv/http/HttpHeaders.hpp> // for HttpHeaders #include <webserv/http/HttpHeaders.hpp>
#include <webserv/log/Log.hpp> // for Log, LOCATION #include <webserv/log/Log.hpp>
#include <webserv/server/Server.hpp> // for Server #include <webserv/server/Server.hpp>
#include <webserv/socket/Socket.hpp> // for Socket #include <webserv/socket/Socket.hpp>
#include <cstdint> // for uint8_t #include <cstdint>
#include <functional> // for ref, reference_wrapper #include <functional>
#include <map> // for map #include <map>
#include <utility> // for pair, move #include <utility>
#include <sys/types.h> // for ssize_t #include <sys/types.h>
Client::Client(std::unique_ptr<Socket> socket, Server &server) Client::Client(std::unique_ptr<Socket> socket, Server &server)
: client_socket_(std::move(socket)), server_(std::ref(server)), httpRequest_(std::make_unique<HttpRequest>(this)), : client_socket_(std::move(socket)), server_(std::ref(server)), httpRequest_(std::make_unique<HttpRequest>(this)),
@ -76,16 +76,6 @@ void Client::request()
{"body", httpRequest_->getBody()}, {"body", httpRequest_->getBody()},
{"state", std::to_string(static_cast<uint8_t>(httpRequest_->getState()))}, {"state", std::to_string(static_cast<uint8_t>(httpRequest_->getState()))},
}); });
// server_config_ =
// ConfigManager::getInstance().getMatchingServerConfig(httpRequest_->getHeaders().getHost().value_or(""));
// if (server_config_ == nullptr)
// {
// Log::warning("No matching server config found for Host: " +
// httpRequest_->getHeaders().getHost().value_or("unknown host"));
// setError(Http::StatusCode::BAD_REQUEST);
// }
// Example usage, replace with actual host and port extraction from request
server_.responseReady(client_socket_->getFd()); server_.responseReady(client_socket_->getFd());
} }
else else
@ -108,23 +98,8 @@ bool Client::isResponseReady() const
std::vector<uint8_t> Client::getResponse() const std::vector<uint8_t> Client::getResponse() const
{ {
Log::trace(LOCATION); Log::trace(LOCATION);
// if (statusCode_ != Http::StatusCode::OK)
// {
// return httpResponse_->toBytes();
// }
const Router &router = server_.getRouter(); const Router &router = server_.getRouter();
auto response = router.handleRequest(*httpRequest_); auto response = Router::handleRequest(*httpRequest_);
return response->toBytes(); return response->toBytes();
} }
// void Client::setError(int statusCode)
// {
// Log::trace(LOCATION);
// statusCode_ = statusCode;
// Log::debug("Setting error response with status code: " + std::to_string(statusCode));
// auto errorResponse = std::make_unique<HttpResponse>(
// ErrorHandler::getErrorResponse(statusCode, const_cast<ServerConfig *>(server_config_)));
// httpResponse_ = std::move(errorResponse);
// Log::debug("Error response set successfully");
// }

View File

@ -14,7 +14,7 @@
Router::Router() {} Router::Router() {}
std::unique_ptr<HttpResponse> Router::handleRequest(const HttpRequest &request) const std::unique_ptr<HttpResponse> Router::handleRequest(const HttpRequest &request)
{ {
Log::trace(LOCATION); Log::trace(LOCATION);
@ -39,9 +39,3 @@ std::unique_ptr<HttpResponse> Router::handleRequest(const HttpRequest &request)
FileHandler fileHandler(location, uriParser); FileHandler fileHandler(location, uriParser);
return fileHandler.getResponse(); return fileHandler.getResponse();
} }
// void Router::handleError(int statusCode, HttpResponse &response, AConfig *config) const
// {
// response = ErrorHandler::getErrorResponse(statusCode, config);
// response.setComplete();
// }

View File

@ -13,9 +13,8 @@ class Router
public: public:
Router(); Router();
[[nodiscard]] std::unique_ptr<HttpResponse> handleRequest(const HttpRequest &request) const; [[nodiscard]] static std::unique_ptr<HttpResponse> handleRequest(const HttpRequest &request);
private: private:
// void handleError(int statusCode, HttpResponse &response, AConfig *config = nullptr) const;
[[nodiscard]] const LocationConfig *getLocation(const std::string &path, const ServerConfig &serverConfig) const; [[nodiscard]] const LocationConfig *getLocation(const std::string &path, const ServerConfig &serverConfig) const;
}; };