CoreUtils/IMFResponse.cpp

45 lines
1.1 KiB
C++

#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");
output(response);
response << content;
// core::Log(core::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 + ";");
}
}