Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > dc51c7d3f8a5588a609f484ef81504ee > files > 81

libfastcgipp-devel-1.1-2mdv2010.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>fastcgi++: exceptions.hpp Source File</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.6 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
<h1>exceptions.hpp</h1><a href="exceptions_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 
<a name="l00002"></a>00002 <span class="comment">/***************************************************************************</span>
<a name="l00003"></a>00003 <span class="comment">* Copyright (C) 2007 Eddie                                                 *</span>
<a name="l00004"></a>00004 <span class="comment">*                                                                          *</span>
<a name="l00005"></a>00005 <span class="comment">* This file is part of fastcgi++.                                          *</span>
<a name="l00006"></a>00006 <span class="comment">*                                                                          *</span>
<a name="l00007"></a>00007 <span class="comment">* fastcgi++ is free software: you can redistribute it and/or modify it     *</span>
<a name="l00008"></a>00008 <span class="comment">* under the terms of the GNU Lesser General Public License as  published   *</span>
<a name="l00009"></a>00009 <span class="comment">* by the Free Software Foundation, either version 3 of the License, or (at *</span>
<a name="l00010"></a>00010 <span class="comment">* your option) any later version.                                          *</span>
<a name="l00011"></a>00011 <span class="comment">*                                                                          *</span>
<a name="l00012"></a>00012 <span class="comment">* fastcgi++ is distributed in the hope that it will be useful, but WITHOUT *</span>
<a name="l00013"></a>00013 <span class="comment">* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or    *</span>
<a name="l00014"></a>00014 <span class="comment">* FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public     *</span>
<a name="l00015"></a>00015 <span class="comment">* License for more details.                                                *</span>
<a name="l00016"></a>00016 <span class="comment">*                                                                          *</span>
<a name="l00017"></a>00017 <span class="comment">* You should have received a copy of the GNU Lesser General Public License *</span>
<a name="l00018"></a>00018 <span class="comment">* along with fastcgi++.  If not, see &lt;http://www.gnu.org/licenses/&gt;.       *</span>
<a name="l00019"></a>00019 <span class="comment">****************************************************************************/</span>
<a name="l00020"></a>00020 
<a name="l00021"></a>00021 
<a name="l00022"></a>00022 <span class="preprocessor">#ifndef EXCEPTIONS_HPP</span>
<a name="l00023"></a>00023 <span class="preprocessor"></span><span class="preprocessor">#define EXCEPTIONS_HPP</span>
<a name="l00024"></a>00024 <span class="preprocessor"></span>
<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;exception&gt;</span>
<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;string&gt;</span>
<a name="l00027"></a>00027 
<a name="l00028"></a>00028 <span class="preprocessor">#include &lt;<a class="code" href="protocol_8hpp.html" title="Defines FastCGI protocol.">fastcgi++/protocol.hpp</a>&gt;</span>
<a name="l00029"></a>00029 
<a name="l00031"></a><a class="code" href="namespaceFastcgipp.html">00031</a> <span class="keyword">namespace </span>Fastcgipp
<a name="l00032"></a>00032 {
<a name="l00034"></a><a class="code" href="namespaceFastcgipp_1_1Exceptions.html">00034</a>    <span class="keyword">namespace </span>Exceptions
<a name="l00035"></a>00035    {
<a name="l00037"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Exception.html">00037</a>       <span class="keyword">class </span><a class="code" href="classFastcgipp_1_1Exceptions_1_1Exception.html" title="General fastcgi++ exception.">Exception</a>: <span class="keyword">public</span> std::exception
<a name="l00038"></a>00038       {
<a name="l00039"></a>00039       <span class="keyword">public</span>:
<a name="l00040"></a>00040          <span class="keyword">virtual</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classFastcgipp_1_1Exceptions_1_1Exception.html#e86d4deea3f9444df1e1d861224a0051">what</a>() <span class="keyword">const</span> <span class="keywordflow">throw</span>() =0;
<a name="l00041"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Exception.html#f3604a9c0824f988efa3145d58f2b5eb">00041</a>          <a class="code" href="classFastcgipp_1_1Exceptions_1_1Exception.html#f3604a9c0824f988efa3145d58f2b5eb">~Exception</a>() throw() {}
<a name="l00042"></a>00042       };
<a name="l00043"></a>00043       
<a name="l00045"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Request.html">00045</a>       <span class="keyword">class </span><a class="code" href="classFastcgipp_1_1Exceptions_1_1Request.html" title="General fastcgi++ request exception.">Request</a>: <span class="keyword">public</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1Exception.html" title="General fastcgi++ exception.">Exception</a>
<a name="l00046"></a>00046       {
<a name="l00047"></a>00047       <span class="keyword">public</span>:
<a name="l00049"></a>00049 
<a name="l00052"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Request.html#6291792c6f276840444ce636f7b2c5fe">00052</a>          <a class="code" href="classFastcgipp_1_1Exceptions_1_1Request.html#6291792c6f276840444ce636f7b2c5fe" title="Sole Constructor.">Request</a>(<a class="code" href="structFastcgipp_1_1Protocol_1_1FullId.html" title="A full ID value for a FastCGI request.">Protocol::FullId</a> id_): <a class="code" href="classFastcgipp_1_1Exceptions_1_1Request.html#59507ee700b4bf779f8afbe2a9eeb2c3" title="ID value for the request that generated the exception.">id</a>(id_) { }
<a name="l00053"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Request.html#cd7c61cb6a4fe721cf04372160d5403f">00053</a>          <a class="code" href="classFastcgipp_1_1Exceptions_1_1Request.html#cd7c61cb6a4fe721cf04372160d5403f">~Request</a>() throw() {}
<a name="l00054"></a>00054          
<a name="l00055"></a>00055          <span class="keyword">virtual</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classFastcgipp_1_1Exceptions_1_1Request.html#fdcb953126c7cf62ea02f254d1d0b90d">what</a>() <span class="keyword">const</span> throw() =0;
<a name="l00056"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Request.html#5676c456c049e93044b8098262b4793d">00056</a>          Protocol::FullId <a class="code" href="classFastcgipp_1_1Exceptions_1_1Request.html#5676c456c049e93044b8098262b4793d">getId</a>() const throw() { <span class="keywordflow">return</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1Request.html#59507ee700b4bf779f8afbe2a9eeb2c3" title="ID value for the request that generated the exception.">id</a>; }
<a name="l00057"></a>00057       <span class="keyword">protected</span>:
<a name="l00059"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Request.html#59507ee700b4bf779f8afbe2a9eeb2c3">00059</a>          <a class="code" href="structFastcgipp_1_1Protocol_1_1FullId.html" title="A full ID value for a FastCGI request.">Protocol::FullId</a> <a class="code" href="classFastcgipp_1_1Exceptions_1_1Request.html#59507ee700b4bf779f8afbe2a9eeb2c3" title="ID value for the request that generated the exception.">id</a>;
<a name="l00060"></a>00060       };
<a name="l00061"></a>00061       
<a name="l00063"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Param.html">00063</a>       <span class="keyword">class </span><a class="code" href="classFastcgipp_1_1Exceptions_1_1Param.html" title="Exception for parameter decoding errors">Param</a>: <span class="keyword">public</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1Request.html" title="General fastcgi++ request exception.">Request</a>
<a name="l00064"></a>00064       {
<a name="l00065"></a>00065       <span class="keyword">public</span>:
<a name="l00067"></a>00067 
<a name="l00070"></a>00070          <a class="code" href="classFastcgipp_1_1Exceptions_1_1Param.html#445757efff18b9c7d772698650c29757" title="Sole Constructor.">Param</a>(<a class="code" href="structFastcgipp_1_1Protocol_1_1FullId.html" title="A full ID value for a FastCGI request.">Protocol::FullId</a> id_);
<a name="l00071"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Param.html#db82da340a450880770e8d49b84cc776">00071</a>          <a class="code" href="classFastcgipp_1_1Exceptions_1_1Param.html#db82da340a450880770e8d49b84cc776">~Param</a>() throw() {}
<a name="l00072"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Param.html#55db44268bf0903a2f0f8c6167cae57c">00072</a>          <span class="keyword">virtual</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classFastcgipp_1_1Exceptions_1_1Param.html#55db44268bf0903a2f0f8c6167cae57c">what</a>() <span class="keyword">const</span> throw() { <span class="keywordflow">return</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1Param.html#63c810644dcac3a70242f540622d1eb4" title="Error message associated with the exception.">msg</a>.c_str(); }
<a name="l00073"></a>00073       <span class="keyword">private</span>:
<a name="l00075"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Param.html#63c810644dcac3a70242f540622d1eb4">00075</a>          std::string <a class="code" href="classFastcgipp_1_1Exceptions_1_1Param.html#63c810644dcac3a70242f540622d1eb4" title="Error message associated with the exception.">msg</a>;
<a name="l00076"></a>00076       };
<a name="l00077"></a>00077       
<a name="l00079"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Stream.html">00079</a>       <span class="keyword">class </span><a class="code" href="classFastcgipp_1_1Exceptions_1_1Stream.html" title="Exception for output stream processing">Stream</a>: <span class="keyword">public</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1Request.html" title="General fastcgi++ request exception.">Request</a>
<a name="l00080"></a>00080       {
<a name="l00081"></a>00081       <span class="keyword">public</span>:
<a name="l00083"></a>00083 
<a name="l00086"></a>00086          <a class="code" href="classFastcgipp_1_1Exceptions_1_1Stream.html#d996e17a4c43839064aac54d78653fdd" title="Sole Constructor.">Stream</a>(<a class="code" href="structFastcgipp_1_1Protocol_1_1FullId.html" title="A full ID value for a FastCGI request.">Protocol::FullId</a> id_);
<a name="l00087"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Stream.html#4afd0344b7bdab31df8793e2e19c6fe8">00087</a>          <a class="code" href="classFastcgipp_1_1Exceptions_1_1Stream.html#4afd0344b7bdab31df8793e2e19c6fe8">~Stream</a>() throw() {}
<a name="l00088"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Stream.html#60567dea6a70d06c8404b61fec06c9b1">00088</a>          <span class="keyword">virtual</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classFastcgipp_1_1Exceptions_1_1Stream.html#60567dea6a70d06c8404b61fec06c9b1">what</a>() <span class="keyword">const</span> throw() { <span class="keywordflow">return</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1Stream.html#beded9b300d400b0b94da76231f08d37" title="Error message associated with the exception.">msg</a>.c_str(); }
<a name="l00089"></a>00089       <span class="keyword">private</span>:
<a name="l00091"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Stream.html#beded9b300d400b0b94da76231f08d37">00091</a>          std::string <a class="code" href="classFastcgipp_1_1Exceptions_1_1Stream.html#beded9b300d400b0b94da76231f08d37" title="Error message associated with the exception.">msg</a>;
<a name="l00092"></a>00092       };
<a name="l00093"></a>00093       
<a name="l00095"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1RecordOutOfOrder.html">00095</a>       <span class="keyword">class </span><a class="code" href="classFastcgipp_1_1Exceptions_1_1RecordOutOfOrder.html" title="Exception for reception of records out of order">RecordOutOfOrder</a>: <span class="keyword">public</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1Request.html" title="General fastcgi++ request exception.">Request</a>
<a name="l00096"></a>00096       {
<a name="l00097"></a>00097       <span class="keyword">public</span>:
<a name="l00099"></a>00099 
<a name="l00104"></a>00104          <a class="code" href="classFastcgipp_1_1Exceptions_1_1RecordOutOfOrder.html#60e1b39d10ef8213f22ba95bbaeedd5e" title="Sole Constructor.">RecordOutOfOrder</a>(<a class="code" href="structFastcgipp_1_1Protocol_1_1FullId.html" title="A full ID value for a FastCGI request.">Protocol::FullId</a> id_, <a class="code" href="namespaceFastcgipp_1_1Protocol.html#79e41b489a9b2c0374eee108d375b646" title="Defines the types of records within the FastCGI protocol.">Protocol::RecordType</a> expectedRecord_, <a class="code" href="namespaceFastcgipp_1_1Protocol.html#79e41b489a9b2c0374eee108d375b646" title="Defines the types of records within the FastCGI protocol.">Protocol::RecordType</a> recievedRecord_);
<a name="l00105"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1RecordOutOfOrder.html#a50d3e5aca7b053c46722f0e4bd01511">00105</a>          <a class="code" href="classFastcgipp_1_1Exceptions_1_1RecordOutOfOrder.html#a50d3e5aca7b053c46722f0e4bd01511">~RecordOutOfOrder</a>() throw() {}
<a name="l00106"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1RecordOutOfOrder.html#e693bdf1a6d4814ea4fbf86e4c71afbe">00106</a>          <span class="keyword">virtual</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classFastcgipp_1_1Exceptions_1_1RecordOutOfOrder.html#e693bdf1a6d4814ea4fbf86e4c71afbe">what</a>() <span class="keyword">const</span> throw() { <span class="keywordflow">return</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1RecordOutOfOrder.html#1db8729972d144bd055f95075e378c73" title="Error message associated with the exception.">msg</a>.c_str(); }
<a name="l00107"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1RecordOutOfOrder.html#b0b032e7ec1341aa67bd19460214c7ec">00107</a>          <a class="code" href="namespaceFastcgipp_1_1Protocol.html#79e41b489a9b2c0374eee108d375b646" title="Defines the types of records within the FastCGI protocol.">Protocol::RecordType</a> <a class="code" href="classFastcgipp_1_1Exceptions_1_1RecordOutOfOrder.html#b0b032e7ec1341aa67bd19460214c7ec">getExpectedRecord</a>() <span class="keyword">const</span> throw() { <span class="keywordflow">return</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1RecordOutOfOrder.html#08a27839fa3163c8be536e6229ac8fec" title="Type of record that was expected.">expectedRecord</a>; }
<a name="l00108"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1RecordOutOfOrder.html#21661d38cd383bb26c3839b62307f34a">00108</a>          <a class="code" href="namespaceFastcgipp_1_1Protocol.html#79e41b489a9b2c0374eee108d375b646" title="Defines the types of records within the FastCGI protocol.">Protocol::RecordType</a> <a class="code" href="classFastcgipp_1_1Exceptions_1_1RecordOutOfOrder.html#21661d38cd383bb26c3839b62307f34a">getRecievedRecord</a>() <span class="keyword">const</span> throw() { <span class="keywordflow">return</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1RecordOutOfOrder.html#56f6f148a2e5ae0e988299da93398e58" title="Type of record that was recieved.">recievedRecord</a>; }
<a name="l00109"></a>00109       <span class="keyword">private</span>:
<a name="l00111"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1RecordOutOfOrder.html#08a27839fa3163c8be536e6229ac8fec">00111</a>          <a class="code" href="namespaceFastcgipp_1_1Protocol.html#79e41b489a9b2c0374eee108d375b646" title="Defines the types of records within the FastCGI protocol.">Protocol::RecordType</a> <a class="code" href="classFastcgipp_1_1Exceptions_1_1RecordOutOfOrder.html#08a27839fa3163c8be536e6229ac8fec" title="Type of record that was expected.">expectedRecord</a>;
<a name="l00113"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1RecordOutOfOrder.html#56f6f148a2e5ae0e988299da93398e58">00113</a>          <a class="code" href="namespaceFastcgipp_1_1Protocol.html#79e41b489a9b2c0374eee108d375b646" title="Defines the types of records within the FastCGI protocol.">Protocol::RecordType</a> <a class="code" href="classFastcgipp_1_1Exceptions_1_1RecordOutOfOrder.html#56f6f148a2e5ae0e988299da93398e58" title="Type of record that was recieved.">recievedRecord</a>;
<a name="l00115"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1RecordOutOfOrder.html#1db8729972d144bd055f95075e378c73">00115</a>          std::string <a class="code" href="classFastcgipp_1_1Exceptions_1_1RecordOutOfOrder.html#1db8729972d144bd055f95075e378c73" title="Error message associated with the exception.">msg</a>;
<a name="l00116"></a>00116       };
<a name="l00117"></a>00117       
<a name="l00119"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Socket.html">00119</a>       <span class="keyword">class </span><a class="code" href="classFastcgipp_1_1Exceptions_1_1Socket.html" title="General exception for socket related errors.">Socket</a>: <span class="keyword">public</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1Exception.html" title="General fastcgi++ exception.">Exception</a>
<a name="l00120"></a>00120       {
<a name="l00121"></a>00121       <span class="keyword">public</span>:
<a name="l00123"></a>00123 
<a name="l00127"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Socket.html#59fcbfcef13f7261dc7e1c239d34bd0f">00127</a>          <a class="code" href="classFastcgipp_1_1Exceptions_1_1Socket.html#59fcbfcef13f7261dc7e1c239d34bd0f" title="Sole Constructor.">Socket</a>(<span class="keywordtype">int</span> fd_, <span class="keywordtype">int</span> erno_): <a class="code" href="classFastcgipp_1_1Exceptions_1_1Socket.html#f18bcfa989c76a354f9b1622af4f9c73" title="File descriptor of socket.">fd</a>(fd_), <a class="code" href="classFastcgipp_1_1Exceptions_1_1Socket.html#5b06369c2f33ce35bbaf757348970e59" title="Associated errno.">erno</a>(erno_) { }
<a name="l00128"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Socket.html#523104437b5f804758e7fe0b49b09272">00128</a>          <a class="code" href="classFastcgipp_1_1Exceptions_1_1Socket.html#523104437b5f804758e7fe0b49b09272">~Socket</a>() throw() {}
<a name="l00129"></a>00129          <span class="keyword">virtual</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classFastcgipp_1_1Exceptions_1_1Socket.html#6cefb91cd71fa39e2867c6e626094883">what</a>() <span class="keyword">const</span> throw() =0;
<a name="l00130"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Socket.html#639cc1f1c976fc28211ed3e58bc87e2b">00130</a>          <span class="keywordtype">int</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1Socket.html#639cc1f1c976fc28211ed3e58bc87e2b">getFd</a>() const throw() { <span class="keywordflow">return</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1Socket.html#f18bcfa989c76a354f9b1622af4f9c73" title="File descriptor of socket.">fd</a>; }
<a name="l00131"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Socket.html#3cdf29cb2b220c4a09d1742b629eb6a6">00131</a>          <span class="keywordtype">int</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1Socket.html#3cdf29cb2b220c4a09d1742b629eb6a6">getErrno</a>() <span class="keyword">const</span> throw() { <span class="keywordflow">return</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1Socket.html#5b06369c2f33ce35bbaf757348970e59" title="Associated errno.">erno</a>; }
<a name="l00132"></a>00132       <span class="keyword">protected</span>:
<a name="l00134"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Socket.html#f18bcfa989c76a354f9b1622af4f9c73">00134</a>          <span class="keywordtype">int</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1Socket.html#f18bcfa989c76a354f9b1622af4f9c73" title="File descriptor of socket.">fd</a>;
<a name="l00136"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Socket.html#5b06369c2f33ce35bbaf757348970e59">00136</a>          <span class="keywordtype">int</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1Socket.html#5b06369c2f33ce35bbaf757348970e59" title="Associated errno.">erno</a>;
<a name="l00137"></a>00137       };
<a name="l00138"></a>00138       
<a name="l00140"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1SocketWrite.html">00140</a>       <span class="keyword">class </span><a class="code" href="classFastcgipp_1_1Exceptions_1_1SocketWrite.html" title="Exception for write errors to sockets">SocketWrite</a>: <span class="keyword">public</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1Socket.html" title="General exception for socket related errors.">Socket</a>
<a name="l00141"></a>00141       {
<a name="l00142"></a>00142       <span class="keyword">public</span>:
<a name="l00144"></a>00144 
<a name="l00148"></a>00148          <a class="code" href="classFastcgipp_1_1Exceptions_1_1SocketWrite.html#504556689fd04525e88db4be17863bda" title="Sole Constructor.">SocketWrite</a>(<span class="keywordtype">int</span> fd_, <span class="keywordtype">int</span> erno_);
<a name="l00149"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1SocketWrite.html#e1121fb5dc766aceb98e14427dd5f5fb">00149</a>          <a class="code" href="classFastcgipp_1_1Exceptions_1_1SocketWrite.html#e1121fb5dc766aceb98e14427dd5f5fb">~SocketWrite</a>() throw() {}
<a name="l00150"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1SocketWrite.html#731edf072ab70ba02d0d94a408388088">00150</a>          <span class="keyword">virtual</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classFastcgipp_1_1Exceptions_1_1SocketWrite.html#731edf072ab70ba02d0d94a408388088">what</a>() <span class="keyword">const</span> throw() { <span class="keywordflow">return</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1SocketWrite.html#f72ded2aa784c379031a98807f88b134" title="Error message associated with the exception.">msg</a>.c_str(); }
<a name="l00151"></a>00151       <span class="keyword">private</span>:
<a name="l00153"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1SocketWrite.html#f72ded2aa784c379031a98807f88b134">00153</a>          std::string <a class="code" href="classFastcgipp_1_1Exceptions_1_1SocketWrite.html#f72ded2aa784c379031a98807f88b134" title="Error message associated with the exception.">msg</a>;
<a name="l00154"></a>00154       };
<a name="l00155"></a>00155       
<a name="l00157"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1SocketRead.html">00157</a>       <span class="keyword">class </span><a class="code" href="classFastcgipp_1_1Exceptions_1_1SocketRead.html" title="Exception for read errors to sockets">SocketRead</a>: <span class="keyword">public</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1Socket.html" title="General exception for socket related errors.">Socket</a>
<a name="l00158"></a>00158       {
<a name="l00159"></a>00159       <span class="keyword">public</span>:
<a name="l00161"></a>00161 
<a name="l00165"></a>00165          <a class="code" href="classFastcgipp_1_1Exceptions_1_1SocketRead.html#7d1bdda3376e37c47cd98735171ab513" title="Sole Constructor.">SocketRead</a>(<span class="keywordtype">int</span> fd_, <span class="keywordtype">int</span> erno_);
<a name="l00166"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1SocketRead.html#37ecb23b03c53c0807ace7047134db0c">00166</a>          <a class="code" href="classFastcgipp_1_1Exceptions_1_1SocketRead.html#37ecb23b03c53c0807ace7047134db0c">~SocketRead</a>() throw() {}
<a name="l00167"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1SocketRead.html#9a98777eab7bdac22d0819e3bb6ae09e">00167</a>          <span class="keyword">virtual</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classFastcgipp_1_1Exceptions_1_1SocketRead.html#9a98777eab7bdac22d0819e3bb6ae09e">what</a>() <span class="keyword">const</span> throw() { <span class="keywordflow">return</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1SocketRead.html#da05963acc42897f6bc1fd03d55603f5" title="Error message associated with the exception.">msg</a>.c_str(); }
<a name="l00168"></a>00168       <span class="keyword">private</span>:
<a name="l00170"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1SocketRead.html#da05963acc42897f6bc1fd03d55603f5">00170</a>          std::string <a class="code" href="classFastcgipp_1_1Exceptions_1_1SocketRead.html#da05963acc42897f6bc1fd03d55603f5" title="Error message associated with the exception.">msg</a>;
<a name="l00171"></a>00171       };
<a name="l00172"></a>00172       
<a name="l00174"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Poll.html">00174</a>       <span class="keyword">class </span><a class="code" href="classFastcgipp_1_1Exceptions_1_1Poll.html" title="Exception for poll() errors">Poll</a>: <span class="keyword">public</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1Exception.html" title="General fastcgi++ exception.">Exception</a>
<a name="l00175"></a>00175       {
<a name="l00176"></a>00176       <span class="keyword">public</span>:
<a name="l00178"></a>00178 
<a name="l00181"></a>00181          <a class="code" href="classFastcgipp_1_1Exceptions_1_1Poll.html#cbac69e320c00b584acabeaef201c90b" title="Sole Constructor.">Poll</a>(<span class="keywordtype">int</span> erno_);
<a name="l00182"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Poll.html#6654d9b3351fb7e1ad5105f2122172aa">00182</a>          <a class="code" href="classFastcgipp_1_1Exceptions_1_1Poll.html#6654d9b3351fb7e1ad5105f2122172aa">~Poll</a>() throw() {}
<a name="l00183"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Poll.html#1722feef58548cd564fe08a9ac66bdaa">00183</a>          <span class="keyword">virtual</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classFastcgipp_1_1Exceptions_1_1Poll.html#1722feef58548cd564fe08a9ac66bdaa">what</a>() <span class="keyword">const</span> throw() { <span class="keywordflow">return</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1Poll.html#321d625a3bf788ccac213c6173cca613" title="Error message associated with the exception.">msg</a>.c_str(); }
<a name="l00184"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Poll.html#420705fa7ea2b63a9590046be59215d2">00184</a>          <span class="keywordtype">int</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1Poll.html#420705fa7ea2b63a9590046be59215d2">getErno</a>() <span class="keyword">const</span> throw() { <span class="keywordflow">return</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1Poll.html#db58bfef99cb7072fbe4619ae9d700a7" title="Associated errno.">erno</a>; }
<a name="l00185"></a>00185       <span class="keyword">private</span>:
<a name="l00187"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Poll.html#db58bfef99cb7072fbe4619ae9d700a7">00187</a>          <span class="keywordtype">int</span> <a class="code" href="classFastcgipp_1_1Exceptions_1_1Poll.html#db58bfef99cb7072fbe4619ae9d700a7" title="Associated errno.">erno</a>;
<a name="l00189"></a><a class="code" href="classFastcgipp_1_1Exceptions_1_1Poll.html#321d625a3bf788ccac213c6173cca613">00189</a>          std::string <a class="code" href="classFastcgipp_1_1Exceptions_1_1Poll.html#321d625a3bf788ccac213c6173cca613" title="Error message associated with the exception.">msg</a>;
<a name="l00190"></a>00190       };
<a name="l00191"></a>00191    }
<a name="l00192"></a>00192 }
<a name="l00193"></a>00193 
<a name="l00194"></a>00194 <span class="preprocessor">#endif</span>
</pre></div></div>
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Sep 16 15:17:46 2008 for fastcgi++ by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
</body>
</html>