#include <HttpResponseHeader.hpp>
Zusammengehörigkeiten von HttpResponseHeader:
Öffentliche Datenelemente | |
HttpResponseHeader (std::string contentType) | |
~HttpResponseHeader () | |
const std::string | getHeaders () const |
Liefert alle hinzugefügten Header. Mehr... | |
void | addHeader (std::string directive, std::string content) |
Fügt einen Header hinzu. Mehr... | |
void | addHeader (std::string directive, int value) |
Fügt einen Header hinzu. Mehr... | |
void | addHeader (std::string directive) |
Fügt einen Header hinzu. Mehr... | |
Private Datenelemente | |
HttpResponseHeader () | |
Der parameterlose Konstruktor. Mehr... | |
Private Attribute | |
std::vector< std::string > | headerList_ |
Der Container mit den einzelnen Headern. Mehr... |
Sie bietet ein paar Methoden, um einigermaßen komfortabel einen Header zu generieren. Die übergebenen Zeichenketten werden nicht überprüft, noch wird ein Header von sich aus hinzugefügt. Die gesamte Verantwortung über die Header liegt beim Benutzer.
Vorbild war eine ähnliche Klasse aus der verwendeten CGI-Bibliothek. Letztgenannte war aber nach meinem Geschmack für die Dinge, die hier benötigt werden zu überdimensioniert, und deswegen kommt diese Light-Version zum Einsatz.
|
00024 { 00025 headerList_.push_back( "Content-type: " + contentType ); 00026 } |
|
00031 { 00032 00033 } |
|
Der parameterlose Konstruktor. Er wird hier nur deklariert und es folgt keine Definition. Damit sollen versteckte tempräre Objekte verhindert werden. Ist wohl eher Paranoia. |
|
Fügt einen Header hinzu.
00077 { 00078 headerList_.push_back( directive ); 00079 } |
|
Fügt einen Header hinzu.
00067 { 00068 std::ostringstream o; 00069 o << value; 00070 headerList_.push_back( directive + ": " + o.str() ); 00071 } |
|
Fügt einen Header hinzu.
00058 { 00059 headerList_.push_back( directive + ": " + content ); 00060 } |
|
Liefert alle hinzugefügten Header. Die Header werden dabei mit Newline '\n' von einander getrennt.
00039 { 00040 using std::string; 00041 using std::vector; 00042 00043 string headerString(""); 00044 vector< string >::const_iterator i; 00045 vector< string >::const_iterator iEnd = headerList_.end(); 00046 00047 for ( i = headerList_.begin(); i != iEnd; ++i ) { 00048 headerString += *i + "\n"; 00049 } 00050 return headerString; 00051 } |
|
Der Container mit den einzelnen Headern.
|