diff --git a/includes/default.hpp b/includes/default.hpp new file mode 100644 index 0000000..fc55644 --- /dev/null +++ b/includes/default.hpp @@ -0,0 +1,20 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* default.hpp :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: mmoussou headers; - std::string body; }; -HttpRequest parseRequest(const std::string &rawRequest); +class Get: public http::IRequest { +public: + Get(void); + Get(std::string &data); + ~Get(void); -#endif + void parse(const http::IRequest &request); + + http::Response execute(void); + +}; + +class Post: public http::IRequest { +public: + Post(void); + Post(std::string &data); + ~Post(void); + + void parse(const http::IRequest &request); + + http::Response execute(void); + +}; + +class Delete: public http::IRequest { +public: + Delete(void); + Delete(std::string &data); + ~Delete(void); + + void parse(const http::IRequest &request); + + http::Response execute(void); + +}; + +} // -namespace http +} // -namespace webserv + +#endif // __WEBSERV_REQUESTS_HTTP_REQUEST_HPP__ diff --git a/includes/requests/HttpResponse.hpp b/includes/requests/HttpResponse.hpp index 5a6cde5..b618248 100644 --- a/includes/requests/HttpResponse.hpp +++ b/includes/requests/HttpResponse.hpp @@ -6,38 +6,49 @@ /* By: mmoussou (); + Response(); - std::string str(void) const; + * or : (if too different ? idk tbh) + Response(Get const req); + Response(Post const req); + */ + ~Response(void); -protected: - std::string _protocol; - size_t _status_code; - std::string _status_text; - std::map _headers; - std::string _body; + std::string getProtocol(void) const; + size_t getStatusCode(void) const; + std::string getStatusText(void) const; + + void setProtocol(std::string const protocol); + void setStatusCode(size_t const status_code); + void setStatusText(std::string const status_text); + +private: + std::string _protocol; + size_t _status_code; + std::string _status_text; }; -class HttpGet: public IHttpResponse { -public: - HttpGet(void); - HttpGet(const HttpRequest &request); - ~HttpResponse(void); +} // -namespace http +} // -namespace webserv - void parseRequest(const HttpRequest &request); -} - -#endif +#endif // __WEBSERV_REQUESTS_HTTP_RESPONSE_HPP__ diff --git a/includes/requests/default.hpp b/includes/requests/default.hpp index 9584306..220f40c 100644 --- a/includes/requests/default.hpp +++ b/includes/requests/default.hpp @@ -6,13 +6,13 @@ /* By: mmoussou #include @@ -20,7 +20,31 @@ #include #include +#include "default.hpp" #include "requests/HttpRequest.hpp" #include "requests/HttpResponse.hpp" -#endif +namespace webserv { +namespace http { + +class IMessage { +public: + virtual std::map getHeaders(void) const; + virtual std::string getBody(void) const; + + virtual void setHeaders(std::map const headers); + virtual void setBody(std::string const body); + + virtual void addHeader(std::string const name, std::string const value); + virtual void rmHeader(std::string const name); + +protected: + std::map _headers; + std::string _body; + +}; + +} // -namespace http +} // -namespace webserv + +#endif // __WEBSERV_REQUESTS_DEFAULT_HPP__ diff --git a/includes/server/default.hpp b/includes/server/default.hpp new file mode 100644 index 0000000..5ca19f5 --- /dev/null +++ b/includes/server/default.hpp @@ -0,0 +1,27 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* default.hpp :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: mmoussou +#include +#include +#include +#include +#include +#include +#include +#include + +namespace webserv { + + + +} //-namespace webserv + +#endif // __WEBSERV_WEBSERV_HPP__ diff --git a/src/main.cpp b/src/main.cpp index fb4b71b..190f426 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -6,20 +6,11 @@ /* By: mmoussou -#include -#include -#include -#include -#include -#include -#include -#include - +#include "webserv.hpp" #include "requests/default.hpp" #define PORT 8080 @@ -39,7 +30,7 @@ int main() { std::cerr << "Error registering signal handler!" << std::endl; return 1; } - +/* // create a socket server_socket = socket(AF_INET, SOCK_STREAM, 0); if (server_socket == -1) { @@ -110,6 +101,6 @@ int main() { close(client_socket); } - close(server_socket); + close(server_socket);*/ return 0; } diff --git a/src/requests_handling/HttpRequests.cpp b/src/requests_handling/HttpRequests.cpp index 74fc0a3..09fc1f4 100644 --- a/src/requests_handling/HttpRequests.cpp +++ b/src/requests_handling/HttpRequests.cpp @@ -6,12 +6,12 @@ /* By: mmoussou _headers; std::string _body;*/ - +/* HttpResponse::HttpResponse(const HttpRequest &request): _protocol(request.protocol) { std::ifstream file(request.target.c_str(), std::ios::binary); @@ -55,4 +55,4 @@ std::string HttpResponse::str(void) const response << this->_body; return (response.str()); -} +}*/