Compiles now.
This commit is contained in:
parent
26fb03572f
commit
8d971c1545
@ -15,14 +15,14 @@ namespace http {
|
|||||||
|
|
||||||
switch(mode) {
|
switch(mode) {
|
||||||
case REQUEST:
|
case REQUEST:
|
||||||
httpRequest = new HTTPRequest(request1);
|
httpRequest = new HTTPRequest(request1);
|
||||||
session->server.commands.grabInput(session, *this);
|
session->server.commands.grabInput(session, *this);
|
||||||
mode = IMF;
|
mode = IMF;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case IMF:
|
case IMF:
|
||||||
httpRequest->parse(request1);
|
httpRequest->parse(request1);
|
||||||
if(request == "") {
|
if(request == "") {
|
||||||
session->server.commands.clearGrab(session);
|
session->server.commands.clearGrab(session);
|
||||||
mode = REQUEST;
|
mode = REQUEST;
|
||||||
processHTTPRequest(session, data);
|
processHTTPRequest(session, data);
|
||||||
@ -34,7 +34,7 @@ namespace http {
|
|||||||
|
|
||||||
bool HTTPHandler::processHTTPRequest(core::TCPSession *session, std::stringstream &data) {
|
bool HTTPHandler::processHTTPRequest(core::TCPSession *session, std::stringstream &data) {
|
||||||
|
|
||||||
HTTPSession *httpSession = static_cast<HTTPServer &>(session->server).httpSessions.findSessionByHeader(httpRequest);
|
HTTPSession *httpSession = static_cast<HTTPServer&>(session->server).httpSessions.findSessionByHeader(httpRequest);
|
||||||
|
|
||||||
std::stringstream content;
|
std::stringstream content;
|
||||||
|
|
||||||
|
@ -4,6 +4,7 @@
|
|||||||
#include "Command.h"
|
#include "Command.h"
|
||||||
#include "TCPSession.h"
|
#include "TCPSession.h"
|
||||||
#include "Log.h"
|
#include "Log.h"
|
||||||
|
#include "IMFMessage.h"
|
||||||
#include "HTTPRequest.h"
|
#include "HTTPRequest.h"
|
||||||
|
|
||||||
namespace http {
|
namespace http {
|
||||||
|
@ -3,10 +3,10 @@
|
|||||||
namespace http {
|
namespace http {
|
||||||
|
|
||||||
bool HTTPPageList::processRequest(HTTPRequest *httpRequest, core::TCPSession *session, HTTPSession *httpSession, std::stringstream &data) {
|
bool HTTPPageList::processRequest(HTTPRequest *httpRequest, core::TCPSession *session, HTTPSession *httpSession, std::stringstream &data) {
|
||||||
httpRequest->response.setProtocol(httpRequest->request.getProtocol());
|
httpRequest->response.setProtocol(httpRequest->request->getProtocol());
|
||||||
for(auto *page : pages) {
|
for(auto *page : pages) {
|
||||||
if(page->check(httpRequest->request.getURI())) {
|
if(page->check(httpRequest->request->getURI())) {
|
||||||
return page->processCommand(httpRequest->request.getURI(), session, httpSession, httpRequest, data);
|
return page->processCommand(httpRequest->request->getURI(), session, httpSession, httpRequest, data);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
@ -13,14 +13,17 @@ namespace http {
|
|||||||
class HTTPRequest : public coreutils::IMFMessage {
|
class HTTPRequest : public coreutils::IMFMessage {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
HTTPRequest(coreutils::PString &in);
|
HTTPRequest(coreutils::PString &in) : IMFMessage(in) {
|
||||||
|
message = new IMFMessage(in);
|
||||||
|
}
|
||||||
|
bool parse(coreutils::PString &in) {
|
||||||
|
message->parse(in);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
coreutils::IMFRequest request;
|
coreutils::IMFRequest *request;
|
||||||
|
coreutils::IMFMessage *message;
|
||||||
coreutils::IMFResponse response;
|
coreutils::IMFResponse response;
|
||||||
|
|
||||||
private:
|
|
||||||
std::string key;
|
|
||||||
std::string value;
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
BIN
HTTPServer
Executable file
BIN
HTTPServer
Executable file
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user