ServerCore modifications.

This commit is contained in:
Brad Arant committed 2022-03-15 20:09:11 -07:00
1 parent e28468d79d
commit 7a0155ba2c
59 files changed
+595 -279

No files matched your search

+1
View File
@@ -18,6 +18,7 @@ Here are the classes, structs, unions and interfaces with brief descriptions\+:\
\item\contentsline{section}{\mbox{\hyperlink{classcore_1_1TCPSocket}{core\+::\+T\+C\+P\+Socket}} }{\pageref{classcore_1_1TCPSocket}}{}
\item\contentsline{section}{\mbox{\hyperlink{classcore_1_1TerminalSession}{core\+::\+Terminal\+Session}} }{\pageref{classcore_1_1TerminalSession}}{}
\item\contentsline{section}{\mbox{\hyperlink{classcore_1_1Thread}{core\+::\+Thread}} }{\pageref{classcore_1_1Thread}}{}
\item\contentsline{section}{\mbox{\hyperlink{classcore_1_1ThreadScope}{core\+::\+Thread\+Scope}} }{\pageref{classcore_1_1ThreadScope}}{}
\item\contentsline{section}{\mbox{\hyperlink{classcore_1_1Timer}{core\+::\+Timer}} }{\pageref{classcore_1_1Timer}}{}
\item\contentsline{section}{\mbox{\hyperlink{classcore_1_1TLSServer}{core\+::\+T\+L\+S\+Server}} }{\pageref{classcore_1_1TLSServer}}{}
\item\contentsline{section}{\mbox{\hyperlink{classcore_1_1TLSSession}{core\+::\+T\+L\+S\+Session}} }{\pageref{classcore_1_1TLSSession}}{}
+4 -2
View File
@@ -143,7 +143,9 @@ Parse epoll event and call specified callbacks.
The event received from epoll is sent through the event\+Received method which will parse the event and call the read and write callbacks on the socket.
This method is called by the B\+M\+A\+E\+Poll object and should not be called from any user extended classes unless an epoll event is being simulated. \mbox{\Hypertarget{classcore_1_1Socket_ac8d6a2c54696eb6fc2024cf6bcf6b4e5}\label{classcore_1_1Socket_ac8d6a2c54696eb6fc2024cf6bcf6b4e5}}
This method is called by the B\+M\+A\+E\+Poll object and should not be called from any user extended classes unless an epoll event is being simulated.
The return value of false will delete the socket object causing the destructors to run. The return value of true will enable the socket on e\+Poll to receive more events. \mbox{\Hypertarget{classcore_1_1Socket_ac8d6a2c54696eb6fc2024cf6bcf6b4e5}\label{classcore_1_1Socket_ac8d6a2c54696eb6fc2024cf6bcf6b4e5}}
\index{core::Socket@{core::Socket}!onDataReceived@{onDataReceived}}
\index{onDataReceived@{onDataReceived}!core::Socket@{core::Socket}}
\doxysubsubsection{\texorpdfstring{onDataReceived()}{onDataReceived()}}
@@ -214,7 +216,7 @@ set\+Descriptor establishes the file descriptor for the socket and registers the
\doxysubsubsection{\texorpdfstring{shutdown()}{shutdown()}}
{\footnotesize\ttfamily void core\+::\+Socket\+::shutdown (\begin{DoxyParamCaption}\item[{std\+::string}]{text = {\ttfamily \char`\"{}unknown\char`\"{}} }\end{DoxyParamCaption})}
Use the \mbox{\hyperlink{classcore_1_1Socket_af2d1b6de7a64a9d446b0305b6ec47b31}{shutdown()}} method to terminate the socket connection and remove resources. This method is provided to ensure that all destructors are called for all inherited objects without a virtual destructor. \mbox{\Hypertarget{classcore_1_1Socket_a1413c826307ef0f29d7457770af675e3}\label{classcore_1_1Socket_a1413c826307ef0f29d7457770af675e3}}
Use the \mbox{\hyperlink{classcore_1_1Socket_af2d1b6de7a64a9d446b0305b6ec47b31}{shutdown()}} method to terminate the socket connection and remove resources. This method is provided to ensure that all destructors are called for all inherited objects with a virtual destructor. \mbox{\Hypertarget{classcore_1_1Socket_a1413c826307ef0f29d7457770af675e3}\label{classcore_1_1Socket_a1413c826307ef0f29d7457770af675e3}}
\index{core::Socket@{core::Socket}!write@{write}}
\index{write@{write}!core::Socket@{core::Socket}}
\doxysubsubsection{\texorpdfstring{write()}{write()}}
+10 -4
View File
@@ -12,11 +12,11 @@ Collaboration diagram for core\+::Subscription\+:\nopagebreak
\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item
\mbox{\Hypertarget{classcore_1_1Subscription_a60c235914199243eba7fa019f265fb76}\label{classcore_1_1Subscription_a60c235914199243eba7fa019f265fb76}}
{\bfseries Subscription} (std\+::string id)
\mbox{\Hypertarget{classcore_1_1Subscription_a348a4ec8232ada37f5be2b6f756f01f3}\label{classcore_1_1Subscription_a348a4ec8232ada37f5be2b6f756f01f3}}
{\bfseries Subscription} (std\+::string id, std\+::string mode=\char`\"{}$\ast$A\+U\+T\+H\+OR\char`\"{})
\item
\mbox{\Hypertarget{classcore_1_1Subscription_a4b93a096e55fc586ad9c6966b02f3b0f}\label{classcore_1_1Subscription_a4b93a096e55fc586ad9c6966b02f3b0f}}
{\bfseries Subscription} (std\+::string id, \mbox{\hyperlink{classcore_1_1TCPSession}{T\+C\+P\+Session}} \&session)
\mbox{\Hypertarget{classcore_1_1Subscription_a75e36b110e87138d4f5d8f0cbbaca4c1}\label{classcore_1_1Subscription_a75e36b110e87138d4f5d8f0cbbaca4c1}}
{\bfseries Subscription} (std\+::string id, \mbox{\hyperlink{classcore_1_1TCPSession}{T\+C\+P\+Session}} \&session, std\+::string mode=\char`\"{}$\ast$A\+U\+T\+H\+OR\char`\"{})
\item
\mbox{\Hypertarget{classcore_1_1Subscription_a57c23d7c49328eecf8358f84b485f7cb}\label{classcore_1_1Subscription_a57c23d7c49328eecf8358f84b485f7cb}}
int {\bfseries subscribe} (\mbox{\hyperlink{classcore_1_1TCPSession}{T\+C\+P\+Session}} \&session)
@@ -32,6 +32,9 @@ virtual int {\bfseries on\+Subscribe} (\mbox{\hyperlink{classcore_1_1TCPSession}
\item
\mbox{\Hypertarget{classcore_1_1Subscription_adfd211503f5eccfda620995de58c73f9}\label{classcore_1_1Subscription_adfd211503f5eccfda620995de58c73f9}}
int {\bfseries event} (std\+::stringstream \&out)
\item
\mbox{\Hypertarget{classcore_1_1Subscription_addf187a8e97c2be1ac0cce9c21da5a28}\label{classcore_1_1Subscription_addf187a8e97c2be1ac0cce9c21da5a28}}
bool {\bfseries if\+Subscriber} (\mbox{\hyperlink{classcore_1_1TCPSession}{T\+C\+P\+Session}} \&session)
\end{DoxyCompactItemize}
\doxysubsection*{Public Attributes}
\begin{DoxyCompactItemize}
@@ -39,6 +42,9 @@ int {\bfseries event} (std\+::stringstream \&out)
\mbox{\Hypertarget{classcore_1_1Subscription_a6a952ecf3d9d4a2c69c6b09c3c5c6cb2}\label{classcore_1_1Subscription_a6a952ecf3d9d4a2c69c6b09c3c5c6cb2}}
std\+::string {\bfseries id}
\item
\mbox{\Hypertarget{classcore_1_1Subscription_a5f7d38b845a674d860fd78aa7cdd5858}\label{classcore_1_1Subscription_a5f7d38b845a674d860fd78aa7cdd5858}}
std\+::string {\bfseries mode}
\item
\mbox{\Hypertarget{classcore_1_1Subscription_a5526427600aa4a5b180f76f201e85f58}\label{classcore_1_1Subscription_a5526427600aa4a5b180f76f201e85f58}}
\mbox{\hyperlink{classcore_1_1TCPSession}{T\+C\+P\+Session}} $\ast$ {\bfseries owner}
\item
+3
View File
@@ -28,6 +28,9 @@ Collaboration diagram for core\+::Thread\+:\nopagebreak
\mbox{\Hypertarget{classcore_1_1Thread_acf8e7e682431fa6a4a3a77ce9b33aefc}\label{classcore_1_1Thread_acf8e7e682431fa6a4a3a77ce9b33aefc}}
{\bfseries Thread} (\mbox{\hyperlink{classcore_1_1EPoll}{E\+Poll}} \&e\+Poll)
\item
\mbox{\Hypertarget{classcore_1_1Thread_a88638bbc82ac8d05fc4400db90a89451}\label{classcore_1_1Thread_a88638bbc82ac8d05fc4400db90a89451}}
{\bfseries Thread} (\mbox{\hyperlink{classcore_1_1EPoll}{E\+Poll}} \&e\+Poll, \mbox{\hyperlink{classcore_1_1ThreadScope}{Thread\+Scope}} $\ast$thread)
\item
void \mbox{\hyperlink{classcore_1_1Thread_ae6885df9a9b9503669e5776518b19054}{start}} ()
\item
\mbox{\Hypertarget{classcore_1_1Thread_a9ba3b9a5127dcfa0ee2c5f315d6a648d}\label{classcore_1_1Thread_a9ba3b9a5127dcfa0ee2c5f315d6a648d}}
+7
View File
@@ -0,0 +1,7 @@
\hypertarget{classcore_1_1ThreadScope}{}\doxysection{core\+::Thread\+Scope Class Reference}
\label{classcore_1_1ThreadScope}\index{core::ThreadScope@{core::ThreadScope}}
The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item
Thread\+Scope.\+h\end{DoxyCompactItemize}
+1
View File
@@ -44,4 +44,5 @@ This inheritance list is sorted roughly, but not completely, alphabetically\+:\b
\end{DoxyCompactList}
\end{DoxyCompactList}
\item \contentsline{section}{core\+::Subscription}{\pageref{classcore_1_1Subscription}}{}
\item \contentsline{section}{core\+::Thread\+Scope}{\pageref{classcore_1_1ThreadScope}}{}
\end{DoxyCompactList}
+1
View File
@@ -194,6 +194,7 @@
\input{classcore_1_1TCPSocket}
\input{classcore_1_1TerminalSession}
\input{classcore_1_1Thread}
\input{classcore_1_1ThreadScope}
\input{classcore_1_1Timer}
\input{classcore_1_1TLSServer}
\input{classcore_1_1TLSSession}