List of all members
cgicc::HTTPResponseHeader Class Reference

Generic HTTP response header. More...

#include <cgicc/HTTPResponseHeader.h>

Inheritance diagram for cgicc::HTTPResponseHeader:
cgicc::MStreamable

Public Member Functions

Constructor and Destructor
 HTTPResponseHeader (const std::string &http_version, int status_code, const std::string &reason_phrase)
 Create a new HTTP response header.
 
virtual ~HTTPResponseHeader ()
 Delete this HTTPResponseHeader.
 
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.
 
- Public Member Functions inherited from cgicc::MStreamable
 MStreamable ()
 Empty constructor.
 
virtual ~MStreamable ()
 Empty destructor.
 
virtual void render (std::ostream &out) const =0
 Write this object to a stream.

 

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

◆ HTTPResponseHeader()

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

Create a new HTTP response header.

Parameters
http_versionThe HTTP version string, usually HTTP/1.1
status_codeThe 3-digit HTTP status code
reason_phraseA short textual description of the status code

◆ ~HTTPResponseHeader()

virtual cgicc::HTTPResponseHeader::~HTTPResponseHeader ( )
virtual

Delete this HTTPResponseHeader.

Member Function Documentation

◆ addHeader() [1/2]

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

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

Parameters
headerThe text of the header to add
Returns
A reference to this

◆ addHeader() [2/2]

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

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

Parameters
nameThe name of the header element to add
valueThe value of the header element
Returns
A reference to this

◆ getCookies()

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.

◆ getHeaders()

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.

◆ getHTTPVersion() [1/2]

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.

◆ getHTTPVersion() [2/2]

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_versionThe HTTP version string, usually HTTP/1.1
Returns
A reference to this

Definition at line 204 of file HTTPResponseHeader.h.

◆ getReasonPhrase() [1/2]

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.

◆ getReasonPhrase() [2/2]

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_phraseA short textual description of the status code
Returns
A reference to this

Definition at line 226 of file HTTPResponseHeader.h.

◆ getStatusCode() [1/2]

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.

◆ getStatusCode() [2/2]

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_codeThe 3-digit HTTP status code
Returns
A reference to this

Definition at line 215 of file HTTPResponseHeader.h.

◆ render()

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

Write this object to a stream.

Subclasses must implement this function.

Parameters
outThe ostream to which to write.

Implements cgicc::MStreamable.

◆ setCookie()

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

Set a cookie to go out with this HTTPResponseHeader.

Parameters
cookieThe HTTPCookie to set

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 Fri Mar 1 2024 08:39:43 for cgicc by doxygen 1.9.6