cgicc::HTTPResponseHeader Class Reference

Generic HTTP response header. More...

#include <cgicc/HTTPResponseHeader.h>

Inheritance diagram for cgicc::HTTPResponseHeader:

cgicc::MStreamable List of all members.

Public Member Functions

Additional Header Management
HTTPResponseHeaderaddHeader (const std::string &header)
 Add a general, response, or entity header to this one.
HTTPResponseHeaderaddHeader (const std::string &name, const std::string &value)
 Add a general, response, or entity header to this one.
const std::vector< std::string > & getHeaders () const
 Get a list of all additional headers.
Cookie Management
HTTPResponseHeadersetCookie (const HTTPCookie &cookie)
 Set a cookie to go out with this HTTPResponseHeader.
const std::vector< HTTPCookie > & getCookies () const
 Get a list of all cookies associated with this header.
Accessor methods
Retrieve information on the header

const std::string & getHTTPVersion () const
 Get the HTTP version.
int getStatusCode () const
 Get the 3-digit status code.
std::string getReasonPhrase () const
 Get the reason phrase associated with the stats code.
Mutator methods
Set information on the header

HTTPResponseHeadergetHTTPVersion (const std::string &http_version)
 Set the HTTP version.
HTTPResponseHeadergetStatusCode (int status_code)
 Get the 3-digit status code.
HTTPResponseHeadergetReasonPhrase (const std::string &reason_phrase)
 Get the reason phrase associated with the stats code.
Inherited Methods
virtual void render (std::ostream &out) const
 Write this object to a stream.

Detailed Description

Generic HTTP response header.

This class represents an HTTP response header as defined in section 6 of RFC 2616 (see http://www.w3.org)

All HTTP/1.1 reponses consist of an initial status line containing the HTTP version, a 3-digit status code, and a human-readable reason phrase explaining the status code.

The first digit of the Status-Code defines the class of response. The last two digits do not have any categorization role. There are 5 values for the first digit:

Definition at line 73 of file HTTPResponseHeader.h.


Constructor & Destructor Documentation

cgicc::HTTPResponseHeader::HTTPResponseHeader ( const std::string &  http_version,
int  status_code,
const std::string &  reason_phrase 
)

Create a new HTTP response header.

Parameters:
http_version The HTTP version string, usually HTTP/1.1
status_code The 3-digit HTTP status code
reason_phrase A short textual description of the status code

cgicc::HTTPResponseHeader::HTTPResponseHeader ( const std::string &  http_version,
int  status_code,
const std::string &  reason_phrase 
)

Create a new HTTP response header.

Parameters:
http_version The HTTP version string, usually HTTP/1.1
status_code The 3-digit HTTP status code
reason_phrase A short textual description of the status code


Member Function Documentation

HTTPResponseHeader& cgicc::HTTPResponseHeader::addHeader ( const std::string &  header  ) 

Add a general, response, or entity header to this one.

Parameters:
header The text of the header to add
Returns:
A reference to this

HTTPResponseHeader& cgicc::HTTPResponseHeader::addHeader ( const std::string &  name,
const std::string &  value 
)

Add a general, response, or entity header to this one.

Parameters:
name The name of the header element to add
value The value of the header element
Returns:
A reference to this

const std::vector<std::string>& cgicc::HTTPResponseHeader::getHeaders (  )  const [inline]

Get a list of all additional headers.

Returns:
A list of all additional headers

Definition at line 128 of file HTTPResponseHeader.h.

HTTPResponseHeader& cgicc::HTTPResponseHeader::setCookie ( const HTTPCookie cookie  ) 

Set a cookie to go out with this HTTPResponseHeader.

Parameters:
cookie The HTTPCookie to set

const std::vector<HTTPCookie>& cgicc::HTTPResponseHeader::getCookies (  )  const [inline]

Get a list of all cookies associated with this header.

Returns:
All the cookies associated with this header

Definition at line 147 of file HTTPResponseHeader.h.

const std::string& cgicc::HTTPResponseHeader::getHTTPVersion (  )  const [inline]

Get the HTTP version.

The HTTP version is a string of the form HTTP/1.1

Returns:
The HTTP version

Definition at line 165 of file HTTPResponseHeader.h.

int cgicc::HTTPResponseHeader::getStatusCode (  )  const [inline]

Get the 3-digit status code.

The 3-digit status code indicates the disposition of the response.

Returns:
The 3-digit status code

Definition at line 175 of file HTTPResponseHeader.h.

std::string cgicc::HTTPResponseHeader::getReasonPhrase (  )  const [inline]

Get the reason phrase associated with the stats code.

The reason phrase is a human-readable interpretation of the status code

Returns:
The reason phrase

Definition at line 185 of file HTTPResponseHeader.h.

HTTPResponseHeader& cgicc::HTTPResponseHeader::getHTTPVersion ( const std::string &  http_version  )  [inline]

Set the HTTP version.

The HTTP version is a string of the form HTTP/1.1

Parameters:
http_version The HTTP version string, usually HTTP/1.1
Returns:
A reference to this

Definition at line 204 of file HTTPResponseHeader.h.

HTTPResponseHeader& cgicc::HTTPResponseHeader::getStatusCode ( int  status_code  )  [inline]

Get the 3-digit status code.

The 3-digit status code indicates the disposition of the response.

Parameters:
status_code The 3-digit HTTP status code
Returns:
A reference to this

Definition at line 215 of file HTTPResponseHeader.h.

HTTPResponseHeader& cgicc::HTTPResponseHeader::getReasonPhrase ( const std::string &  reason_phrase  )  [inline]

Get the reason phrase associated with the stats code.

The reason phrase is a human-readable interpretation of the status code

Parameters:
reason_phrase A short textual description of the status code
Returns:
A reference to this

Definition at line 226 of file HTTPResponseHeader.h.

virtual void cgicc::HTTPResponseHeader::render ( std::ostream &  out  )  const [virtual]

Write this object to a stream.

Subclasses must implement this function.

Parameters:
out The ostream to which to write.

Implements cgicc::MStreamable.


The documentation for this class was generated from the following file:
GNU cgicc - A C++ class library for writing CGI applications
Copyright © 1996 - 2004 Stephen F. Booth
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front Cover Texts, and with no Back-Cover Texts.
Documentation generated Sat Jan 19 21:16:01 2008 for cgicc by doxygen 1.5.1