#include "IMFResponse.h" #include "Log.h" namespace coreutils { IMFResponse::IMFResponse() {} IMFResponse::~IMFResponse() {} std::string IMFResponse::getResponse(Mode mode) { return getResponse("", mode); } std::string IMFResponse::getResponse(std::string content, Mode mode) { std::stringstream response; response << protocol << " " << code << " " << text << CRLF; if(mode == LENGTH) addHeader("Content-Length", std::to_string(content.size())); else addHeader("Transfer-Encoding", "chunked"); addHeader("Server", "JETServer v0.0.1"); output(response); response << content; coreutils::Log(coreutils::LOG_DEBUG_4) << response.str(); return response.str(); } void IMFResponse::setProtocol(std::string protocol) { this->protocol = protocol; } void IMFResponse::setCode(std::string code) { this->code = code; } void IMFResponse::setText(std::string text) { this->text = text; } void IMFResponse::setCookie(std::string name, std::string value) { addHeader("Set-Cookie", name + "=" + value + ";"); } }