\section{cppcms\+:\+:http\+:\+:response Class Reference}
\label{classcppcms_1_1http_1_1response}\index{cppcms\+::http\+::response@{cppcms\+::http\+::response}}


this class represents all H\+T\+T\+P/\+C\+GI response related A\+PI, generation of output content and H\+T\+TP headers.  




{\ttfamily \#include $<$cppcms/http\+\_\+response.\+h$>$}

Inheritance diagram for cppcms\+:\+:http\+:\+:response\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classcppcms_1_1http_1_1response}
\end{center}
\end{figure}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
enum {\bf status\+\_\+type} \{ \\*
{\bfseries continue\+\_\+transfer} = 100, 
{\bfseries switching\+\_\+protocol} = 101, 
{\bfseries ok} = 200, 
{\bfseries created} = 201, 
\\*
{\bfseries accepted} = 202, 
{\bfseries non\+\_\+authoritative\+\_\+information} = 203, 
{\bfseries no\+\_\+content} = 204, 
{\bfseries reset\+\_\+content} = 205, 
\\*
{\bfseries partial\+\_\+content} = 206, 
{\bfseries multiple\+\_\+choices} = 300, 
{\bfseries moved\+\_\+permanently} = 301, 
{\bfseries found} = 302, 
\\*
{\bfseries see\+\_\+other} = 303, 
{\bfseries not\+\_\+modified} = 304, 
{\bfseries use\+\_\+proxy} = 305, 
{\bfseries temporary\+\_\+redirect} = 307, 
\\*
{\bfseries bad\+\_\+request} = 400, 
{\bfseries unauthorized} = 401, 
{\bfseries payment\+\_\+required} = 402, 
{\bfseries forbidden} = 403, 
\\*
{\bfseries not\+\_\+found} = 404, 
{\bfseries method\+\_\+not\+\_\+allowed} = 405, 
{\bfseries not\+\_\+acceptable} = 406, 
{\bfseries proxy\+\_\+authentication\+\_\+required} = 407, 
\\*
{\bfseries request\+\_\+time\+\_\+out} = 408, 
{\bfseries conflict} = 409, 
{\bfseries gone} = 410, 
{\bfseries precondition\+\_\+failed} = 412, 
\\*
{\bfseries request\+\_\+entity\+\_\+too\+\_\+large} = 413, 
{\bfseries request\+\_\+uri\+\_\+too\+\_\+large} = 414, 
{\bfseries unsupported\+\_\+media\+\_\+type} = 415, 
{\bfseries requested\+\_\+range\+\_\+not\+\_\+satisfiable} = 416, 
\\*
{\bfseries expectation\+\_\+failed} = 417, 
{\bfseries internal\+\_\+server\+\_\+error} = 500, 
{\bfseries not\+\_\+implemented} = 501, 
{\bfseries bad\+\_\+gateway} = 502, 
\\*
{\bfseries service\+\_\+unavailable} = 503, 
{\bfseries gateway\+\_\+timeout} = 504, 
{\bfseries http\+\_\+version\+\_\+not\+\_\+supported} = 505
 \}
\item 
enum {\bf io\+\_\+mode\+\_\+type} \{ \\*
{\bf normal}, 
{\bf nogzip}, 
{\bf raw}, 
{\bf asynchronous}, 
\\*
{\bf asynchronous\+\_\+raw}
 \}
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
void {\bf accept\+\_\+ranges} (std\+::string const \&)
\item 
void {\bf age} (unsigned seconds)
\item 
void {\bf allow} (std\+::string const \&)
\item 
void {\bf cache\+\_\+control} (std\+::string const \&)
\item 
void {\bf content\+\_\+encoding} (std\+::string const \&)
\item 
void {\bf content\+\_\+language} (std\+::string const \&)
\item 
void {\bf content\+\_\+length} (unsigned long long len)
\item 
void {\bf content\+\_\+location} (std\+::string const \&)
\item 
void {\bf content\+\_\+md5} (std\+::string const \&)
\item 
void {\bf content\+\_\+range} (std\+::string const \&)
\item 
void {\bf content\+\_\+type} (std\+::string const \&)
\item 
void {\bf date} (time\+\_\+t)
\item 
void {\bf etag} (std\+::string const \&)
\item 
void {\bf expires} (time\+\_\+t t)
\item 
void {\bf last\+\_\+modified} (time\+\_\+t t)
\item 
void {\bf location} (std\+::string const \&)
\item 
void {\bf pragma} (std\+::string const \&)
\item 
void {\bf proxy\+\_\+authenticate} (std\+::string const \&)
\item 
void {\bf retry\+\_\+after} (std\+::string const \&)
\item 
void {\bf retry\+\_\+after} (unsigned)
\item 
void {\bf status} (int code)
\item 
void {\bf status} (int code, std\+::string const \&message)
\item 
void {\bf trailer} (std\+::string const \&)
\item 
void {\bf transfer\+\_\+encoding} (std\+::string const \&)
\item 
void {\bf vary} (std\+::string const \&)
\item 
void {\bf via} (std\+::string const \&)
\item 
void {\bf warning} (std\+::string const \&)
\item 
void {\bf www\+\_\+authenticate} (std\+::string const \&)
\item 
void {\bf set\+\_\+header} (std\+::string const \&name, std\+::string const \&value)
\item 
std\+::string {\bf get\+\_\+header} (std\+::string const \&name)
\item 
void {\bf erase\+\_\+header} (std\+::string const \&h)
\item 
void {\bf add\+\_\+header} (std\+::string const \&name, std\+::string const \&value)
\item 
void {\bf set\+\_\+content\+\_\+header} (std\+::string const \&{\bf content\+\_\+type})
\item 
void {\bf set\+\_\+html\+\_\+header} ()
\item 
void {\bf set\+\_\+xhtml\+\_\+header} ()
\item 
void {\bf set\+\_\+plain\+\_\+text\+\_\+header} ()
\item 
void {\bf set\+\_\+redirect\+\_\+header} (std\+::string const \&{\bf location}, int {\bf status}=found)
\item 
void {\bf set\+\_\+cookie} ({\bf cookie} const \&)
\item 
void {\bf make\+\_\+error\+\_\+response} (int stat, std\+::string const \&msg=std\+::string())
\item 
{\bf io\+\_\+mode\+\_\+type} {\bf io\+\_\+mode} ()
\item 
void {\bf io\+\_\+mode} ({\bf io\+\_\+mode\+\_\+type})
\item 
std\+::ostream \& {\bf out} ()
\item 
bool {\bf some\+\_\+output\+\_\+was\+\_\+written} ()
\item 
void {\bf finalize} ()
\item 
void {\bf setbuf} (int buffer\+\_\+size)
\item 
void {\bf full\+\_\+asynchronous\+\_\+buffering} (bool enable)
\item 
bool {\bf full\+\_\+asynchronous\+\_\+buffering} ()
\item 
bool {\bf pending\+\_\+blocked\+\_\+output} ()
\end{DoxyCompactItemize}
\subsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
static std\+::string {\bf make\+\_\+http\+\_\+time} (time\+\_\+t)
\item 
static char const $\ast$ {\bf status\+\_\+to\+\_\+string} (int {\bf status})
\end{DoxyCompactItemize}
\subsection*{Friends}
\begin{DoxyCompactItemize}
\item 
class {\bfseries impl\+::cgi\+::connection}\label{classcppcms_1_1http_1_1response_a35a6637347117934569e84977b6f5143}

\item 
class {\bfseries \+::cppcms\+::cache\+\_\+interface}\label{classcppcms_1_1http_1_1response_a0e48920ed561a8c07f81eed0e36ecb68}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
this class represents all H\+T\+T\+P/\+C\+GI response related A\+PI, generation of output content and H\+T\+TP headers. 

\subsection{Member Enumeration Documentation}
\index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!io\+\_\+mode\+\_\+type@{io\+\_\+mode\+\_\+type}}
\index{io\+\_\+mode\+\_\+type@{io\+\_\+mode\+\_\+type}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{io\+\_\+mode\+\_\+type}]{\setlength{\rightskip}{0pt plus 5cm}enum {\bf cppcms\+::http\+::response\+::io\+\_\+mode\+\_\+type}}\label{classcppcms_1_1http_1_1response_ab88544816b81e2935a8825842c8d97cd}
This enum represents different types of IO modes giving fine grained control over H\+T\+TP output.

These modes are set via io\+\_\+mode member function \begin{Desc}
\item[Enumerator]\par
\begin{description}
\index{normal@{normal}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}\index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!normal@{normal}}\item[{\em 
normal\label{classcppcms_1_1http_1_1response_ab88544816b81e2935a8825842c8d97cda8709ef70bb0439d0912a9a86fcaaa168}
}]Synchronous IO. Write the request, it is buffered and possible compressed using gzip. \index{nogzip@{nogzip}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}\index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!nogzip@{nogzip}}\item[{\em 
nogzip\label{classcppcms_1_1http_1_1response_ab88544816b81e2935a8825842c8d97cdaf7a55de75b022cddff4e032d6e9972fa}
}]Same as normal but disable gzip compression. \index{raw@{raw}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}\index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!raw@{raw}}\item[{\em 
raw\label{classcppcms_1_1http_1_1response_ab88544816b81e2935a8825842c8d97cdafe73d157379a0fd3f6d2e615aa62ab88}
}]User has full control over the output, it is also fully responsible for generation of H\+T\+TP headers, no-\/session management given. \index{asynchronous@{asynchronous}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}\index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!asynchronous@{asynchronous}}\item[{\em 
asynchronous\label{classcppcms_1_1http_1_1response_ab88544816b81e2935a8825842c8d97cda1c198308ba8dfd9252d361f4d7e3fa47}
}]In this mode the data is buffered and never transferred unless it is requested by async\+\_\+flush\+\_\+output, or async\+\_\+complete\+\_\+response member functions of {\tt http\+::context} explicitly. \index{asynchronous\+\_\+raw@{asynchronous\+\_\+raw}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}\index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!asynchronous\+\_\+raw@{asynchronous\+\_\+raw}}\item[{\em 
asynchronous\+\_\+raw\label{classcppcms_1_1http_1_1response_ab88544816b81e2935a8825842c8d97cda3505e72a31d3ee91c6800ca1c647b8d0}
}]Same as asynchronous but the user is responsible for generation of its own H\+T\+TP headers. \end{description}
\end{Desc}
\index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!status\+\_\+type@{status\+\_\+type}}
\index{status\+\_\+type@{status\+\_\+type}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{status\+\_\+type}]{\setlength{\rightskip}{0pt plus 5cm}enum {\bf cppcms\+::http\+::response\+::status\+\_\+type}}\label{classcppcms_1_1http_1_1response_a453b2705e7437ca330acdf3d91843fa6}
This type represent the enum of H\+T\+TP Status type as of R\+FC 2616 sec. 6.\+1.\+1 

\subsection{Member Function Documentation}
\index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!accept\+\_\+ranges@{accept\+\_\+ranges}}
\index{accept\+\_\+ranges@{accept\+\_\+ranges}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{accept\+\_\+ranges(std\+::string const \&)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::accept\+\_\+ranges (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_ac0e8aca86686c9248f49d3efbb946ff0}
Set H\+T\+TP Header Accept-\/\+Ranges \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!add\+\_\+header@{add\+\_\+header}}
\index{add\+\_\+header@{add\+\_\+header}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{add\+\_\+header(std\+::string const \&name, std\+::string const \&value)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::add\+\_\+header (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{name, }
\item[{std\+::string const \&}]{value}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a42f6d2fd8a85bcdba01865f45f4658ac}
add header -\/ independently of set\+\_\+header/get\+\_\+header/erase\+\_\+header -\/ allows to specify multiple headers of same type like Set-\/\+Cookie or W\+W\+W-\/\+Authenticate

\doxyref{New in Cpp\+C\+MS 1.\+2}{p.}{v1_2} \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!age@{age}}
\index{age@{age}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{age(unsigned seconds)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::age (
\begin{DoxyParamCaption}
\item[{unsigned}]{seconds}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_ab6526e9343edb8c7ab6c4c0f13cb9059}
Set H\+T\+TP Header Age \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!allow@{allow}}
\index{allow@{allow}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{allow(std\+::string const \&)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::allow (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a4a22b6fd1e35f3a78399564a4fd5148d}
Set H\+T\+TP Header Allow \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!cache\+\_\+control@{cache\+\_\+control}}
\index{cache\+\_\+control@{cache\+\_\+control}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{cache\+\_\+control(std\+::string const \&)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::cache\+\_\+control (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_ae30007856890ab9ce461fb691fdd4f5d}
Set H\+T\+TP Header Cache-\/\+Control \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!content\+\_\+encoding@{content\+\_\+encoding}}
\index{content\+\_\+encoding@{content\+\_\+encoding}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{content\+\_\+encoding(std\+::string const \&)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::content\+\_\+encoding (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_ae5c8e9633be3bd7d3604a66545e543e9}
Set H\+T\+TP Header Content-\/\+Encoding.

Note\+: if you set this header manually, gzip compression will be automatically disabled. \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!content\+\_\+language@{content\+\_\+language}}
\index{content\+\_\+language@{content\+\_\+language}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{content\+\_\+language(std\+::string const \&)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::content\+\_\+language (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_afe667f731c9e4fb4c922114d94ce6ae5}
Set H\+T\+TP Header Content-\/\+Language \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!content\+\_\+length@{content\+\_\+length}}
\index{content\+\_\+length@{content\+\_\+length}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{content\+\_\+length(unsigned long long len)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::content\+\_\+length (
\begin{DoxyParamCaption}
\item[{unsigned long long}]{len}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_ac4617c473b8e04a560cd6f613d0a9793}
Set H\+T\+TP Header Content-\/\+Length \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!content\+\_\+location@{content\+\_\+location}}
\index{content\+\_\+location@{content\+\_\+location}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{content\+\_\+location(std\+::string const \&)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::content\+\_\+location (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_aae9da458c34e621311c93630855f90be}
Set H\+T\+TP Header Content-\/\+Location \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!content\+\_\+md5@{content\+\_\+md5}}
\index{content\+\_\+md5@{content\+\_\+md5}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{content\+\_\+md5(std\+::string const \&)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::content\+\_\+md5 (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a9ab8a189c0aa42e8d50cfd63a442d46b}
Set H\+T\+TP Header Content-\/\+Md5 \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!content\+\_\+range@{content\+\_\+range}}
\index{content\+\_\+range@{content\+\_\+range}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{content\+\_\+range(std\+::string const \&)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::content\+\_\+range (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_ad1d4fbb3565893b972401d0a55e311df}
Set H\+T\+TP Header Content-\/\+Range \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!content\+\_\+type@{content\+\_\+type}}
\index{content\+\_\+type@{content\+\_\+type}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{content\+\_\+type(std\+::string const \&)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::content\+\_\+type (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a8fb156db7d2b0350fb6fee9ce9d300be}
Set H\+T\+TP Header Content-\/\+Type \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!date@{date}}
\index{date@{date}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{date(time\+\_\+t)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::date (
\begin{DoxyParamCaption}
\item[{time\+\_\+t}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_ae55b4b018e6c1782f4b07be562029ea7}
Set H\+T\+TP Header Date \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!erase\+\_\+header@{erase\+\_\+header}}
\index{erase\+\_\+header@{erase\+\_\+header}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{erase\+\_\+header(std\+::string const \&h)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::erase\+\_\+header (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{h}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_af76ab8a7ff52412e8918e4d05cd2875b}
Erase specific header {\itshape h} \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!etag@{etag}}
\index{etag@{etag}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{etag(std\+::string const \&)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::etag (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a4b47aa1ab0570e56326a97f732403098}
Set H\+T\+TP Header Etag \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!expires@{expires}}
\index{expires@{expires}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{expires(time\+\_\+t t)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::expires (
\begin{DoxyParamCaption}
\item[{time\+\_\+t}]{t}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a24850c474fa3c7a7fbe280e64db6b75e}
Set H\+T\+TP Header Expires, it is formatted as H\+T\+TP Date-\/\+Time from the P\+O\+S\+IX time {\itshape t} \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!finalize@{finalize}}
\index{finalize@{finalize}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{finalize()}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::finalize (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a38f08aa68dfdb767a89c45143953d69d}
Finalize an output request. Generally this function is called automatically for synchronous application, however when working with asynchronous requests you should call this function before calling async\+\_\+complete\+\_\+response. \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!full\+\_\+asynchronous\+\_\+buffering@{full\+\_\+asynchronous\+\_\+buffering}}
\index{full\+\_\+asynchronous\+\_\+buffering@{full\+\_\+asynchronous\+\_\+buffering}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{full\+\_\+asynchronous\+\_\+buffering(bool enable)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::full\+\_\+asynchronous\+\_\+buffering (
\begin{DoxyParamCaption}
\item[{bool}]{enable}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a859c6b69c9681d5b33014be0edf288cc}
Sets full buffering mode for asynchronous applications

When set to true the output data is transferred only when async\+\_\+flush\+\_\+output or async\+\_\+complete\+\_\+response are called this is the default behavior.

When set to false, the data is sent upon flushing of the std\+::ostream provided by \doxyref{out()}{p.}{classcppcms_1_1http_1_1response_a39e48c676a3f2c79b26d60b8d455658c}. If I/O operation blocks, the actual output is buffered, it is possible to test if blocking occurred by calling \doxyref{pending\+\_\+blocked\+\_\+output()}{p.}{classcppcms_1_1http_1_1response_acc3dd970fc85b5abed90773262fa3a9f}

When the full buffering is disable, if an error occurs, the \doxyref{out()}{p.}{classcppcms_1_1http_1_1response_a39e48c676a3f2c79b26d60b8d455658c} is set to fail state.

\doxyref{New in Cpp\+C\+MS 1.\+2}{p.}{v1_2} \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!full\+\_\+asynchronous\+\_\+buffering@{full\+\_\+asynchronous\+\_\+buffering}}
\index{full\+\_\+asynchronous\+\_\+buffering@{full\+\_\+asynchronous\+\_\+buffering}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{full\+\_\+asynchronous\+\_\+buffering()}]{\setlength{\rightskip}{0pt plus 5cm}bool cppcms\+::http\+::response\+::full\+\_\+asynchronous\+\_\+buffering (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_abb4c4c90ab7c9f756de89770cef004ae}
Get current state of asynchronous buffering

\doxyref{New in Cpp\+C\+MS 1.\+2}{p.}{v1_2} \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!get\+\_\+header@{get\+\_\+header}}
\index{get\+\_\+header@{get\+\_\+header}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{get\+\_\+header(std\+::string const \&name)}]{\setlength{\rightskip}{0pt plus 5cm}std\+::string cppcms\+::http\+::response\+::get\+\_\+header (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{name}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a60ada54cc9dff51ee73df2cdd98cedd4}
Get output header value, returns empty string if it is not set \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!io\+\_\+mode@{io\+\_\+mode}}
\index{io\+\_\+mode@{io\+\_\+mode}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{io\+\_\+mode()}]{\setlength{\rightskip}{0pt plus 5cm}{\bf io\+\_\+mode\+\_\+type} cppcms\+::http\+::response\+::io\+\_\+mode (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a1ee67536d9a1b4f66c37147879c148de}
Get current io\+\_\+mode, see a description for io\+\_\+mode\+\_\+type. \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!io\+\_\+mode@{io\+\_\+mode}}
\index{io\+\_\+mode@{io\+\_\+mode}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{io\+\_\+mode(io\+\_\+mode\+\_\+type)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::io\+\_\+mode (
\begin{DoxyParamCaption}
\item[{{\bf io\+\_\+mode\+\_\+type}}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_ab2e6494c329f13c20694407917a7d485}
Set current io\+\_\+mode, see a description for io\+\_\+mode\+\_\+type.

Note\+: you can\textquotesingle{}t change it after requesting for output stream, i.\+e. calling \doxyref{out()}{p.}{classcppcms_1_1http_1_1response_a39e48c676a3f2c79b26d60b8d455658c} member function. \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!last\+\_\+modified@{last\+\_\+modified}}
\index{last\+\_\+modified@{last\+\_\+modified}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{last\+\_\+modified(time\+\_\+t t)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::last\+\_\+modified (
\begin{DoxyParamCaption}
\item[{time\+\_\+t}]{t}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a7201f06f483bf7966fc63031b150e12c}
Set H\+T\+TP Header Last-\/\+Modified, it is formatted as H\+T\+TP Date-\/\+Time from the P\+O\+S\+IX time {\itshape t} \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!location@{location}}
\index{location@{location}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{location(std\+::string const \&)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::location (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a0d6ab248cb964d6a2e2fd217d03adad9}
Set H\+T\+TP Header Location \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!make\+\_\+error\+\_\+response@{make\+\_\+error\+\_\+response}}
\index{make\+\_\+error\+\_\+response@{make\+\_\+error\+\_\+response}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{make\+\_\+error\+\_\+response(int stat, std\+::string const \&msg=std\+::string())}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::make\+\_\+error\+\_\+response (
\begin{DoxyParamCaption}
\item[{int}]{stat, }
\item[{std\+::string const \&}]{msg = {\ttfamily std\+:\+:string()}}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_ae84eed88b24a7bfc093f90462145bd35}
This creates a default H\+T\+TP response (including H\+T\+ML body) with a status {\itshape stat} a message {\itshape msg}.

Note\+: if {\itshape msg} is empty default message for H\+T\+TP Status code {\itshape stat} is used. \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!make\+\_\+http\+\_\+time@{make\+\_\+http\+\_\+time}}
\index{make\+\_\+http\+\_\+time@{make\+\_\+http\+\_\+time}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{make\+\_\+http\+\_\+time(time\+\_\+t)}]{\setlength{\rightskip}{0pt plus 5cm}static std\+::string cppcms\+::http\+::response\+::make\+\_\+http\+\_\+time (
\begin{DoxyParamCaption}
\item[{time\+\_\+t}]{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [static]}}\label{classcppcms_1_1http_1_1response_ad7a02b4c00709009a28c05878b2bc613}
Create an H\+T\+TP time string from P\+O\+S\+IX time as of R\+FC 2616 \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!out@{out}}
\index{out@{out}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{out()}]{\setlength{\rightskip}{0pt plus 5cm}std\+::ostream\& cppcms\+::http\+::response\+::out (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a39e48c676a3f2c79b26d60b8d455658c}
Request an output stream to write the body of H\+T\+TP response after writing headers.

Note\+:


\begin{DoxyItemize}
\item it triggers saving changes in the session, so further changes will have no effect.
\item it triggers writing all headers to output stream, such that changing any header or adding cookies will have no effect.
\item it is impossible to change an io\+\_\+mode after calling this function. 
\end{DoxyItemize}\index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!pending\+\_\+blocked\+\_\+output@{pending\+\_\+blocked\+\_\+output}}
\index{pending\+\_\+blocked\+\_\+output@{pending\+\_\+blocked\+\_\+output}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{pending\+\_\+blocked\+\_\+output()}]{\setlength{\rightskip}{0pt plus 5cm}bool cppcms\+::http\+::response\+::pending\+\_\+blocked\+\_\+output (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_acc3dd970fc85b5abed90773262fa3a9f}
Returns true of some of the output wasn\textquotesingle{}t sent due to blocking upon flushing of std\+::stream \&\doxyref{out()}{p.}{classcppcms_1_1http_1_1response_a39e48c676a3f2c79b26d60b8d455658c} which is used together with full\+\_\+asynchronous\+\_\+buffering(false) mode.

Note\+: it does not look on to internal buffers thus it is user\textquotesingle{}s responsibility to call

Once the condition occurs you can flush the output asynchronously using async\+\_\+complete\+\_\+response or async\+\_\+flush\+\_\+output

\doxyref{New in Cpp\+C\+MS 1.\+2}{p.}{v1_2} \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!pragma@{pragma}}
\index{pragma@{pragma}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{pragma(std\+::string const \&)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::pragma (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_aa5329000888c31b900f0d1ee837fe832}
Set H\+T\+TP Header Pragma \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!proxy\+\_\+authenticate@{proxy\+\_\+authenticate}}
\index{proxy\+\_\+authenticate@{proxy\+\_\+authenticate}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{proxy\+\_\+authenticate(std\+::string const \&)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::proxy\+\_\+authenticate (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a1e777fa8f0902fd6cd792085faa4a711}
Set H\+T\+TP Header Proxy-\/\+Authenticate \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!retry\+\_\+after@{retry\+\_\+after}}
\index{retry\+\_\+after@{retry\+\_\+after}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{retry\+\_\+after(std\+::string const \&)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::retry\+\_\+after (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a3d5515f800e4846829c79e1f414a780e}
Set H\+T\+TP Header Retry-\/\+After \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!retry\+\_\+after@{retry\+\_\+after}}
\index{retry\+\_\+after@{retry\+\_\+after}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{retry\+\_\+after(unsigned)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::retry\+\_\+after (
\begin{DoxyParamCaption}
\item[{unsigned}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a8365b5bceb9aff26bc5e5f29a7cf7a01}
Set H\+T\+TP Header Retry-\/\+After \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!set\+\_\+content\+\_\+header@{set\+\_\+content\+\_\+header}}
\index{set\+\_\+content\+\_\+header@{set\+\_\+content\+\_\+header}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{set\+\_\+content\+\_\+header(std\+::string const \&content\+\_\+type)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::set\+\_\+content\+\_\+header (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{content\+\_\+type}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a50ae55ff605bc655f5b19021f0f4f71d}
This function set H\+T\+TP Content-\/\+Type header, but unlike contet\+\_\+type function it also adds current locale charset encoding (unless localization.\+disable\+\_\+charset\+\_\+in\+\_\+content\+\_\+type set to true in configuration) \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!set\+\_\+cookie@{set\+\_\+cookie}}
\index{set\+\_\+cookie@{set\+\_\+cookie}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{set\+\_\+cookie(cookie const \&)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::set\+\_\+cookie (
\begin{DoxyParamCaption}
\item[{{\bf cookie} const \&}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a372c784dcef97dabc2d79d2b63104f8d}
Set H\+T\+TP Cookie \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!set\+\_\+header@{set\+\_\+header}}
\index{set\+\_\+header@{set\+\_\+header}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{set\+\_\+header(std\+::string const \&name, std\+::string const \&value)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::set\+\_\+header (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{name, }
\item[{std\+::string const \&}]{value}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a37b0c6c284c9d8f319a87c86d182f021}
Set Generic H\+T\+TP header \char`\"{}name\+: value\char`\"{} \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!set\+\_\+html\+\_\+header@{set\+\_\+html\+\_\+header}}
\index{set\+\_\+html\+\_\+header@{set\+\_\+html\+\_\+header}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{set\+\_\+html\+\_\+header()}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::set\+\_\+html\+\_\+header (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_afdf49a3b991151ccb1c1ed330e0fd489}
Shortcut to set\+\_\+content\+\_\+header(\char`\"{}text/html\char`\"{}) -\/ this is the default content-\/type header \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!set\+\_\+plain\+\_\+text\+\_\+header@{set\+\_\+plain\+\_\+text\+\_\+header}}
\index{set\+\_\+plain\+\_\+text\+\_\+header@{set\+\_\+plain\+\_\+text\+\_\+header}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{set\+\_\+plain\+\_\+text\+\_\+header()}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::set\+\_\+plain\+\_\+text\+\_\+header (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a1dff01813a535caa46a91c3e242462b3}
Shortcut to set\+\_\+content\+\_\+header(\char`\"{}text/plain\char`\"{}) \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!set\+\_\+redirect\+\_\+header@{set\+\_\+redirect\+\_\+header}}
\index{set\+\_\+redirect\+\_\+header@{set\+\_\+redirect\+\_\+header}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{set\+\_\+redirect\+\_\+header(std\+::string const \&location, int status=found)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::set\+\_\+redirect\+\_\+header (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{location, }
\item[{int}]{status = {\ttfamily found}}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_aee692b361154cc98d02996859750e8d9}
Redirect to other {\itshape location} by setting H\+T\+TP Location header and a Status header with a status {\itshape status} \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!set\+\_\+xhtml\+\_\+header@{set\+\_\+xhtml\+\_\+header}}
\index{set\+\_\+xhtml\+\_\+header@{set\+\_\+xhtml\+\_\+header}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{set\+\_\+xhtml\+\_\+header()}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::set\+\_\+xhtml\+\_\+header (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a2587bdadf8afd9593960497e6dbe9d2e}
Shortcut to set\+\_\+content\+\_\+header(\char`\"{}text/xhtml\char`\"{}) \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!setbuf@{setbuf}}
\index{setbuf@{setbuf}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{setbuf(int buffer\+\_\+size)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::setbuf (
\begin{DoxyParamCaption}
\item[{int}]{buffer\+\_\+size}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_af524e1aaf82e70152b61fa6e09af7861}
Defines the size of the output buffer for the output data.

Setting the to 0 makes the output non-\/buffered and prevents unnecessary copy of large objects in memory

The default is defined in configuration by service.\+output\+\_\+buffer\+\_\+size and service.\+async\+\_\+output\+\_\+buffer\+\_\+size for synchronous and asynchronous applications accordingly, can be called before and after \doxyref{out()}{p.}{classcppcms_1_1http_1_1response_a39e48c676a3f2c79b26d60b8d455658c} was called

Calling with negative value would reset it to the default

Note\+: when gzip compression active, buffering is still present at intermediate levels

\doxyref{New in Cpp\+C\+MS 1.\+2}{p.}{v1_2} \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!some\+\_\+output\+\_\+was\+\_\+written@{some\+\_\+output\+\_\+was\+\_\+written}}
\index{some\+\_\+output\+\_\+was\+\_\+written@{some\+\_\+output\+\_\+was\+\_\+written}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{some\+\_\+output\+\_\+was\+\_\+written()}]{\setlength{\rightskip}{0pt plus 5cm}bool cppcms\+::http\+::response\+::some\+\_\+output\+\_\+was\+\_\+written (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_afe02e9e26349d3ec86b7122a0b217feb}
Check if \doxyref{out()}{p.}{classcppcms_1_1http_1_1response_a39e48c676a3f2c79b26d60b8d455658c} member function was called, (so it is impossible to do some tasks like changing H\+T\+TP headers. See out description for more details \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!status@{status}}
\index{status@{status}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{status(int code)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::status (
\begin{DoxyParamCaption}
\item[{int}]{code}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_afe9da31cf977bc2aac66aa951dc249cc}
Set G\+CI Status Header, the message is created according to the code automatically \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!status@{status}}
\index{status@{status}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{status(int code, std\+::string const \&message)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::status (
\begin{DoxyParamCaption}
\item[{int}]{code, }
\item[{std\+::string const \&}]{message}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_af1d38f29f4d6f3daba886f444ab635c3}
Set H\+T\+TP Header Status with the status code {\itshape code} and a custom {\itshape message} \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!status\+\_\+to\+\_\+string@{status\+\_\+to\+\_\+string}}
\index{status\+\_\+to\+\_\+string@{status\+\_\+to\+\_\+string}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{status\+\_\+to\+\_\+string(int status)}]{\setlength{\rightskip}{0pt plus 5cm}static char const$\ast$ cppcms\+::http\+::response\+::status\+\_\+to\+\_\+string (
\begin{DoxyParamCaption}
\item[{int}]{status}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [static]}}\label{classcppcms_1_1http_1_1response_a231ab5f89717894c59d236d3eeadc37b}
Return a string that represents a message for H\+T\+TP status code {\itshape status} \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!trailer@{trailer}}
\index{trailer@{trailer}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{trailer(std\+::string const \&)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::trailer (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_ada89ccfc62399652d16cf0a1d6177328}
Set H\+T\+TP Header Trailer \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!transfer\+\_\+encoding@{transfer\+\_\+encoding}}
\index{transfer\+\_\+encoding@{transfer\+\_\+encoding}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{transfer\+\_\+encoding(std\+::string const \&)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::transfer\+\_\+encoding (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a1a82219a8047cab9252f51cff9473715}
Set H\+T\+TP Header Transfer-\/\+Encoding, note \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!vary@{vary}}
\index{vary@{vary}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{vary(std\+::string const \&)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::vary (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a3603c1c69e532fb6ec86be5071b374f4}
Set H\+T\+TP Header Vary \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!via@{via}}
\index{via@{via}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{via(std\+::string const \&)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::via (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a7f3436305fbc971e9020bc41ecd12ad9}
Set H\+T\+TP Header Via \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!warning@{warning}}
\index{warning@{warning}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{warning(std\+::string const \&)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::warning (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a635f82d677518fa3b4254668a381f56a}
Set H\+T\+TP Header Warning \index{cppcms\+::http\+::response@{cppcms\+::http\+::response}!www\+\_\+authenticate@{www\+\_\+authenticate}}
\index{www\+\_\+authenticate@{www\+\_\+authenticate}!cppcms\+::http\+::response@{cppcms\+::http\+::response}}
\subsubsection[{www\+\_\+authenticate(std\+::string const \&)}]{\setlength{\rightskip}{0pt plus 5cm}void cppcms\+::http\+::response\+::www\+\_\+authenticate (
\begin{DoxyParamCaption}
\item[{std\+::string const \&}]{}
\end{DoxyParamCaption}
)}\label{classcppcms_1_1http_1_1response_a3d620b53dd065027f0dd539a23c27836}
Set H\+T\+TP Header W\+W\+W-\/\+Authenticate 

The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
cppcms/http\+\_\+response.\+h\end{DoxyCompactItemize}
