summaryrefslogtreecommitdiff
path: root/lib/httpserver/HTTPRequest.cpp
diff options
context:
space:
mode:
authorChris Wilson <chris+github@qwirx.com>2009-01-04 13:56:55 +0000
committerChris Wilson <chris+github@qwirx.com>2009-01-04 13:56:55 +0000
commit95f5a1c2dff53b88c274e358bd0cd07758819a12 (patch)
tree66745b869b2a7b039eca307fe3ed3b9074278302 /lib/httpserver/HTTPRequest.cpp
parent0d1fc68db7b50c86b6eb3f635399af66ba54bd05 (diff)
Allow adding headers to an HTTPRequest.
Allow getting response headers out of HTTPResponse. Rename HTTPRequest Read and Write methods to Send and Receive, to avoid confusion with IOStream.
Diffstat (limited to 'lib/httpserver/HTTPRequest.cpp')
-rw-r--r--lib/httpserver/HTTPRequest.cpp14
1 files changed, 10 insertions, 4 deletions
diff --git a/lib/httpserver/HTTPRequest.cpp b/lib/httpserver/HTTPRequest.cpp
index a14f1eb3..8ba44903 100644
--- a/lib/httpserver/HTTPRequest.cpp
+++ b/lib/httpserver/HTTPRequest.cpp
@@ -93,7 +93,7 @@ HTTPRequest::~HTTPRequest()
// --------------------------------------------------------------------------
//
// Function
-// Name: HTTPRequest::Read(IOStreamGetLine &, int)
+// Name: HTTPRequest::Receive(IOStreamGetLine &, int)
// Purpose: Read the request from an IOStreamGetLine (and
// attached stream).
// Returns false if there was no valid request,
@@ -101,7 +101,7 @@ HTTPRequest::~HTTPRequest()
// Created: 26/3/04
//
// --------------------------------------------------------------------------
-bool HTTPRequest::Read(IOStreamGetLine &rGetLine, int Timeout)
+bool HTTPRequest::Receive(IOStreamGetLine &rGetLine, int Timeout)
{
// Check caller's logic
if(mMethod != Method_UNINITIALISED)
@@ -312,12 +312,12 @@ bool HTTPRequest::Read(IOStreamGetLine &rGetLine, int Timeout)
// --------------------------------------------------------------------------
//
// Function
-// Name: HTTPRequest::Write(IOStream &, int)
+// Name: HTTPRequest::Send(IOStream &, int)
// Purpose: Write the request to an IOStream using HTTP.
// Created: 03/01/09
//
// --------------------------------------------------------------------------
-bool HTTPRequest::Write(IOStream &rStream, int Timeout)
+bool HTTPRequest::Send(IOStream &rStream, int Timeout)
{
switch (mMethod)
{
@@ -386,6 +386,12 @@ bool HTTPRequest::Write(IOStream &rStream, int Timeout)
oss << "Connection: close\n";
}
+ for (std::vector<Header>::iterator i = mExtraHeaders.begin();
+ i != mExtraHeaders.end(); i++)
+ {
+ oss << i->first << ": " << i->second << "\n";
+ }
+
rStream.Write(oss.str().c_str());
rStream.Write("\n");