CoreUtils/IMFHeader.cpp
2020-03-03 15:46:24 -08:00

47 lines
1.0 KiB
C++

#include "IMFHeader.h"
#include "Exception.h"
namespace coreutils {
IMFHeader::IMFHeader() {
}
IMFHeader::IMFHeader(PString &in) {
key = in.getTokenInclude("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-");
if(!in.ifNext(":")) {
printf("%02X\n", in.str()[0]);
throw coreutils::Exception("Invalid character in expected header token.");
}
in.skipWhitespace();
value = in.getTokenExclude("\r\n");
if(!in.ifNext("\r\n"))
throw coreutils::Exception("Expected CRLF.");
}
IMFHeader::IMFHeader(std::string key, std::string value) {
this->key = key;
this->value = value;
}
std::string IMFHeader::getKey() {
return key;
}
void IMFHeader::setKey(std::string key) {
this->key = key;
}
std::string IMFHeader::getValue() {
return value;
}
void IMFHeader::setValue(std::string value) {
this->value = value;
}
void IMFHeader::output(std::stringstream &out) {
out << key << ": " << value << "\r\n";
}
}