Continued improvements to shutdown.

This commit is contained in:
barant committed 2020-04-23 14:25:41 -07:00
1 parent b4ab5fb86a
commit 28292e924a
55 files changed
+459 -367

No files matched your search

+49 -19
View File
@@ -198,13 +198,14 @@ std::string&#160;</td><td class="memItemRight" valign="bottom"><b>tag</b></td></
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:aa87aca65cece02a107e7c288a925271f"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcore_1_1TCPSession.html#aa87aca65cece02a107e7c288a925271f">onDataReceived</a> (std::string data) override</td></tr>
<tr class="memdesc:aa87aca65cece02a107e7c288a925271f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called when data is received from the socket. <a href="classcore_1_1TCPSession.html#aa87aca65cece02a107e7c288a925271f">More...</a><br /></td></tr>
<tr class="separator:aa87aca65cece02a107e7c288a925271f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed4ed499b978bcea57a8efefe929fc98"><td class="memItemLeft" align="right" valign="top"><a id="aed4ed499b978bcea57a8efefe929fc98"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcore_1_1TCPSession.html#aed4ed499b978bcea57a8efefe929fc98">onRegistered</a> () override</td></tr>
<tr class="memdesc:aed4ed499b978bcea57a8efefe929fc98"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called after the socket has been registered with epoll processing. <br /></td></tr>
<tr class="separator:aed4ed499b978bcea57a8efefe929fc98"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2c3ffef9ded12a8867e3d27902b001a"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcore_1_1TCPSession.html#ac2c3ffef9ded12a8867e3d27902b001a">onDataReceived</a> (char *data, int len) override</td></tr>
<tr class="separator:ac2c3ffef9ded12a8867e3d27902b001a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f209620e9f11e70bfde54852b5c5460"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcore_1_1TCPSession.html#a0f209620e9f11e70bfde54852b5c5460">onLineReceived</a> (std::string line)</td></tr>
<tr class="separator:a0f209620e9f11e70bfde54852b5c5460"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8719952f7bb00bf7239ec40aa2868626"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcore_1_1TCPSession.html#a8719952f7bb00bf7239ec40aa2868626">onConnected</a> ()</td></tr>
<tr class="separator:a8719952f7bb00bf7239ec40aa2868626"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae90dc64e2d3c4b3239117923145edb3f"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcore_1_1TCPSession.html#ae90dc64e2d3c4b3239117923145edb3f">protocol</a> (std::string data)</td></tr>
@@ -216,9 +217,9 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>setBufferSize</b> (in
<tr class="memitem:aa9195676bb7ecbec167ecf5336921cbb inherit pro_methods_classcore_1_1Socket"><td class="memItemLeft" align="right" valign="top"><a id="aa9195676bb7ecbec167ecf5336921cbb"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>getBufferSize</b> ()</td></tr>
<tr class="separator:aa9195676bb7ecbec167ecf5336921cbb inherit pro_methods_classcore_1_1Socket"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af6c06db2441633ae9979affe72930abc inherit pro_methods_classcore_1_1Socket"><td class="memItemLeft" align="right" valign="top"><a id="af6c06db2441633ae9979affe72930abc"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>onDataReceived</b> (char *buffer, int len)</td></tr>
<tr class="separator:af6c06db2441633ae9979affe72930abc inherit pro_methods_classcore_1_1Socket"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8d6a2c54696eb6fc2024cf6bcf6b4e5 inherit pro_methods_classcore_1_1Socket"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcore_1_1Socket.html#ac8d6a2c54696eb6fc2024cf6bcf6b4e5">onDataReceived</a> (std::string data)</td></tr>
<tr class="memdesc:ac8d6a2c54696eb6fc2024cf6bcf6b4e5 inherit pro_methods_classcore_1_1Socket"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called when data is received from the socket. <a href="classcore_1_1Socket.html#ac8d6a2c54696eb6fc2024cf6bcf6b4e5">More...</a><br /></td></tr>
<tr class="separator:ac8d6a2c54696eb6fc2024cf6bcf6b4e5 inherit pro_methods_classcore_1_1Socket"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af455ec6f793473f529507af26aa54695 inherit pro_methods_classcore_1_1Socket"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcore_1_1Socket.html#af455ec6f793473f529507af26aa54695">receiveData</a> (char *buffer, int bufferLength)</td></tr>
<tr class="separator:af455ec6f793473f529507af26aa54695 inherit pro_methods_classcore_1_1Socket"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
@@ -263,8 +264,8 @@ bool&#160;</td><td class="memItemRight" valign="bottom"><b>shutDown</b> = false<
</div>
</div>
<a id="aa87aca65cece02a107e7c288a925271f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa87aca65cece02a107e7c288a925271f">&#9670;&nbsp;</a></span>onDataReceived()</h2>
<a id="ac2c3ffef9ded12a8867e3d27902b001a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac2c3ffef9ded12a8867e3d27902b001a">&#9670;&nbsp;</a></span>onDataReceived()</h2>
<div class="memitem">
<div class="memproto">
@@ -275,9 +276,19 @@ bool&#160;</td><td class="memItemRight" valign="bottom"><b>shutDown</b> = false<
<tr>
<td class="memname">void core::TCPSession::onDataReceived </td>
<td>(</td>
<td class="paramtype">std::string&#160;</td>
<td class="paramname"><em>data</em></td><td>)</td>
<td class="paramtype">char *&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>len</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
@@ -286,17 +297,36 @@ bool&#160;</td><td class="memItemRight" valign="bottom"><b>shutDown</b> = false<
</tr>
</table>
</div><div class="memdoc">
<p>Override this method to receive data directly from the socket as data is received. If you need data split by line termination characters then override the onLineReceived method instead. </p>
<p>Called when data is received from the socket. </p>
<p>The onConnected method is called when the socket is ready to communicate. Writing to the socket can begin on this call to initiate a contact with the remote device. The onDataReceived method is called when the socket has received an event from epoll and there is data ready to be read from the socket. The default handler will pull the data and put it into the streambuf for the socket. EPOLLIN</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data</td><td>the data that has been received from the socket. </td></tr>
</table>
</dd>
</dl>
<p>Reimplemented from <a class="el" href="classcore_1_1Socket.html">core::Socket</a>.</p>
<p>Reimplemented from <a class="el" href="classcore_1_1Socket.html#ac8d6a2c54696eb6fc2024cf6bcf6b4e5">core::Socket</a>.</p>
</div>
</div>
<a id="a0f209620e9f11e70bfde54852b5c5460"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0f209620e9f11e70bfde54852b5c5460">&#9670;&nbsp;</a></span>onLineReceived()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void core::TCPSession::onLineReceived </td>
<td>(</td>
<td class="paramtype">std::string&#160;</td>
<td class="paramname"><em>line</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Override the onLineReceived method to receive a string of characters that represents a single line of data terminated by a LF or CRLF. If onDataReceived was overriden this method will not be called unless the onDataReceived calls this method explicitly using the class and member name. </p>
</div>
</div>