Subscriptions termination fixes.
This commit is contained in:
1 parent
6cf321ceb4
commit
aa85bde66f
176 files changed
+1692
-938
No files matched your search
@@ -11,6 +11,8 @@ Here are the classes, structs, unions and interfaces with brief descriptions\+:\
|
||||
\item\contentsline{section}{\mbox{\hyperlink{classcore_1_1Object}{core\+::\+Object}} }{\pageref{classcore_1_1Object}}{}
|
||||
\item\contentsline{section}{\mbox{\hyperlink{classcore_1_1SessionFilter}{core\+::\+Session\+Filter}} }{\pageref{classcore_1_1SessionFilter}}{}
|
||||
\item\contentsline{section}{\mbox{\hyperlink{classcore_1_1Socket}{core\+::\+Socket}} }{\pageref{classcore_1_1Socket}}{}
|
||||
\item\contentsline{section}{\mbox{\hyperlink{classcore_1_1Subscription}{core\+::\+Subscription}} }{\pageref{classcore_1_1Subscription}}{}
|
||||
\item\contentsline{section}{\mbox{\hyperlink{classcore_1_1SubscriptionManager}{core\+::\+Subscription\+Manager}} }{\pageref{classcore_1_1SubscriptionManager}}{}
|
||||
\item\contentsline{section}{\mbox{\hyperlink{classcore_1_1TCPServer}{core\+::\+T\+C\+P\+Server}} }{\pageref{classcore_1_1TCPServer}}{}
|
||||
\item\contentsline{section}{\mbox{\hyperlink{classcore_1_1TCPSession}{core\+::\+T\+C\+P\+Session}} }{\pageref{classcore_1_1TCPSession}}{}
|
||||
\item\contentsline{section}{\mbox{\hyperlink{classcore_1_1TCPSocket}{core\+::\+T\+C\+P\+Socket}} }{\pageref{classcore_1_1TCPSocket}}{}
|
||||
|
||||
@@ -16,16 +16,9 @@ Inheritance diagram for core\+::Command\+:\nopagebreak
|
||||
\doxysubsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
virtual bool \mbox{\hyperlink{classcore_1_1Command_a3bec2a324e71b72f1525a28b2bb028fe}{check}} (coreutils\+::\+Z\+String \&request)
|
||||
\item
|
||||
virtual int \mbox{\hyperlink{classcore_1_1Command_a95176f2532c38ee14e3fee40ee28b1bd}{process\+Command}} (coreutils\+::\+Z\+String \&request, \mbox{\hyperlink{classcore_1_1TCPSession}{T\+C\+P\+Session}} \&session)
|
||||
\item
|
||||
virtual void \mbox{\hyperlink{classcore_1_1Command_ab6352ce5650e70a5c76c3d6e4eefd292}{output}} (std\+::stringstream \&out)
|
||||
\item
|
||||
void \mbox{\hyperlink{classcore_1_1Command_ad8b0321c64838f4d5c8f93461b97cfef}{set\+Name}} (std\+::string name)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1Command_aa63cf88493b2a1b775b5b93b07e79324}\label{classcore_1_1Command_aa63cf88493b2a1b775b5b93b07e79324}}
|
||||
std\+::string {\bfseries get\+Name} ()
|
||||
\end{DoxyCompactItemize}
|
||||
|
||||
|
||||
@@ -35,24 +28,6 @@ std\+::string {\bfseries get\+Name} ()
|
||||
Use the \mbox{\hyperlink{classcore_1_1Command}{Command}} object in combination with a \mbox{\hyperlink{classcore_1_1CommandList}{Command\+List}} object to maintain a list of functions that can be invoked as a result of processing a request.
|
||||
|
||||
\doxysubsection{Member Function Documentation}
|
||||
\mbox{\Hypertarget{classcore_1_1Command_a3bec2a324e71b72f1525a28b2bb028fe}\label{classcore_1_1Command_a3bec2a324e71b72f1525a28b2bb028fe}}
|
||||
\index{core::Command@{core::Command}!check@{check}}
|
||||
\index{check@{check}!core::Command@{core::Command}}
|
||||
\doxysubsubsection{\texorpdfstring{check()}{check()}}
|
||||
{\footnotesize\ttfamily bool core\+::\+Command\+::check (\begin{DoxyParamCaption}\item[{coreutils\+::\+Z\+String \&}]{request }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
||||
|
||||
Implement check method to provide a special check rule upon the request to see if the command should be processed.
|
||||
|
||||
The default rule is to verify that the first token in the request string matches the name given on the registration of the command to the \mbox{\hyperlink{classcore_1_1CommandList}{Command\+List}}. This can be overridden by implementing the \mbox{\hyperlink{classcore_1_1Command_a3bec2a324e71b72f1525a28b2bb028fe}{check()}} method to perform the test and return the condition of the command.
|
||||
|
||||
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em request} & The request passed to the parser to check the rule. \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
\begin{DoxyReturn}{Returns}
|
||||
Return true to execute the command. Returning false will cause no action on this command.
|
||||
\end{DoxyReturn}
|
||||
\mbox{\Hypertarget{classcore_1_1Command_ab6352ce5650e70a5c76c3d6e4eefd292}\label{classcore_1_1Command_ab6352ce5650e70a5c76c3d6e4eefd292}}
|
||||
\index{core::Command@{core::Command}!output@{output}}
|
||||
\index{output@{output}!core::Command@{core::Command}}
|
||||
@@ -90,21 +65,8 @@ Returns 0 if execution of the command was successful. Otherwise returns a non-\/
|
||||
\end{DoxyReturn}
|
||||
|
||||
|
||||
Reimplemented in \mbox{\hyperlink{classcore_1_1TCPServer_a6b7a7e1ac4132942fcaf418ed41c1437}{core\+::\+T\+C\+P\+Server}}, \mbox{\hyperlink{classcore_1_1EPoll_a22b5f1545aff3162040844be043abcce}{core\+::\+E\+Poll}}, and \mbox{\hyperlink{classcore_1_1CommandList_a1819e1cb377b5d8e5e00b4777e2b4aba}{core\+::\+Command\+List}}.
|
||||
Reimplemented in \mbox{\hyperlink{classcore_1_1TCPServer_a6b7a7e1ac4132942fcaf418ed41c1437}{core\+::\+T\+C\+P\+Server}}, \mbox{\hyperlink{classcore_1_1EPoll_a22b5f1545aff3162040844be043abcce}{core\+::\+E\+Poll}}, \mbox{\hyperlink{classcore_1_1SubscriptionManager_aaa30bf772ad72b3f319a790662e4f8ae}{core\+::\+Subscription\+Manager}}, and \mbox{\hyperlink{classcore_1_1CommandList_a1819e1cb377b5d8e5e00b4777e2b4aba}{core\+::\+Command\+List}}.
|
||||
|
||||
\mbox{\Hypertarget{classcore_1_1Command_ad8b0321c64838f4d5c8f93461b97cfef}\label{classcore_1_1Command_ad8b0321c64838f4d5c8f93461b97cfef}}
|
||||
\index{core::Command@{core::Command}!setName@{setName}}
|
||||
\index{setName@{setName}!core::Command@{core::Command}}
|
||||
\doxysubsubsection{\texorpdfstring{setName()}{setName()}}
|
||||
{\footnotesize\ttfamily void core\+::\+Command\+::set\+Name (\begin{DoxyParamCaption}\item[{std\+::string}]{name }\end{DoxyParamCaption})}
|
||||
|
||||
Set the name of this command used in default rule checking during request parsing. N\+O\+TE\+: You do not need to call this under normal conditions as adding a \mbox{\hyperlink{classcore_1_1Command}{Command}} to a \mbox{\hyperlink{classcore_1_1CommandList}{Command\+List}} using the add() method contains a parameter to pass the name of the \mbox{\hyperlink{classcore_1_1Command}{Command}}.
|
||||
|
||||
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em name} & Specify the name of this command for default parsing. \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
|
||||
|
||||
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
|
||||
|
||||
@@ -25,8 +25,8 @@ Collaboration diagram for core\+::Command\+List\+:\nopagebreak
|
||||
\doxysubsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1CommandList_a5e7b306d08d02a0d03ad541e3479d845}\label{classcore_1_1CommandList_a5e7b306d08d02a0d03ad541e3479d845}}
|
||||
{\bfseries Command\+List} (std\+::string delimiter=\char`\"{}\char`\"{})
|
||||
\mbox{\Hypertarget{classcore_1_1CommandList_a04609187f7b55e881fc31ac3b51a18c4}\label{classcore_1_1CommandList_a04609187f7b55e881fc31ac3b51a18c4}}
|
||||
{\bfseries Command\+List} (std\+::string delimiter=\char`\"{}\char`\"{}, int depth=0)
|
||||
\item
|
||||
void \mbox{\hyperlink{classcore_1_1CommandList_a7a45e75e3d21a25fd3f7e887acf395e9}{add}} (\mbox{\hyperlink{classcore_1_1Command}{Command}} \&command, std\+::string name=\char`\"{}\char`\"{})
|
||||
\item
|
||||
@@ -44,10 +44,13 @@ int \mbox{\hyperlink{classcore_1_1CommandList_a1819e1cb377b5d8e5e00b4777e2b4aba}
|
||||
\doxysubsection*{Protected Attributes}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
std\+::vector$<$ \mbox{\hyperlink{classcore_1_1Command}{Command}} $\ast$ $>$ \mbox{\hyperlink{classcore_1_1CommandList_a435f09d15c78dad43e7bca4977d6bdf1}{commands}}
|
||||
std\+::map$<$ std\+::string, \mbox{\hyperlink{classcore_1_1Command}{Command}} $\ast$ $>$ \mbox{\hyperlink{classcore_1_1CommandList_ad0aedf95828fe743908d8423f171ff36}{commands}}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1CommandList_adfc9ae3f4473a3cd35d5d1ebb5d1b2eb}\label{classcore_1_1CommandList_adfc9ae3f4473a3cd35d5d1ebb5d1b2eb}}
|
||||
std\+::string {\bfseries delimiter}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1CommandList_aa72e019cef882e68b917d87ad06cade8}\label{classcore_1_1CommandList_aa72e019cef882e68b917d87ad06cade8}}
|
||||
int {\bfseries depth}
|
||||
\end{DoxyCompactItemize}
|
||||
|
||||
|
||||
@@ -97,7 +100,7 @@ Reimplemented from \mbox{\hyperlink{classcore_1_1Command_a95176f2532c38ee14e3fee
|
||||
\doxysubsubsection{\texorpdfstring{processRequest()}{processRequest()}}
|
||||
{\footnotesize\ttfamily bool core\+::\+Command\+List\+::process\+Request (\begin{DoxyParamCaption}\item[{coreutils\+::\+Z\+String \&}]{request, }\item[{\mbox{\hyperlink{classcore_1_1TCPSession}{T\+C\+P\+Session}} \&}]{session }\end{DoxyParamCaption})}
|
||||
|
||||
Use this method to apply a parsed Z\+String to the command set and execute the matching parameter. The selected command will return a true on a call to \mbox{\hyperlink{classcore_1_1Command_a3bec2a324e71b72f1525a28b2bb028fe}{check()}}. If there is a handler that has a grab on the process handler then control is given to the process handler holding the grab on the input. \mbox{\Hypertarget{classcore_1_1CommandList_aaac684effb9ecf5238d23ca60d3fffaa}\label{classcore_1_1CommandList_aaac684effb9ecf5238d23ca60d3fffaa}}
|
||||
Use this method to apply a parsed Z\+String to the command set and execute the matching parameter. The selected command will return a true on a call to check(). If there is a handler that has a grab on the process handler then control is given to the process handler holding the grab on the input. \mbox{\Hypertarget{classcore_1_1CommandList_aaac684effb9ecf5238d23ca60d3fffaa}\label{classcore_1_1CommandList_aaac684effb9ecf5238d23ca60d3fffaa}}
|
||||
\index{core::CommandList@{core::CommandList}!remove@{remove}}
|
||||
\index{remove@{remove}!core::CommandList@{core::CommandList}}
|
||||
\doxysubsubsection{\texorpdfstring{remove()}{remove()}}
|
||||
@@ -106,11 +109,11 @@ Use this method to apply a parsed Z\+String to the command set and execute the m
|
||||
Remove a command object from the command list.
|
||||
|
||||
\doxysubsection{Member Data Documentation}
|
||||
\mbox{\Hypertarget{classcore_1_1CommandList_a435f09d15c78dad43e7bca4977d6bdf1}\label{classcore_1_1CommandList_a435f09d15c78dad43e7bca4977d6bdf1}}
|
||||
\mbox{\Hypertarget{classcore_1_1CommandList_ad0aedf95828fe743908d8423f171ff36}\label{classcore_1_1CommandList_ad0aedf95828fe743908d8423f171ff36}}
|
||||
\index{core::CommandList@{core::CommandList}!commands@{commands}}
|
||||
\index{commands@{commands}!core::CommandList@{core::CommandList}}
|
||||
\doxysubsubsection{\texorpdfstring{commands}{commands}}
|
||||
{\footnotesize\ttfamily std\+::vector$<$\mbox{\hyperlink{classcore_1_1Command}{Command}} $\ast$$>$ core\+::\+Command\+List\+::commands\hspace{0.3cm}{\ttfamily [protected]}}
|
||||
{\footnotesize\ttfamily std\+::map$<$std\+::string, \mbox{\hyperlink{classcore_1_1Command}{Command}} $\ast$$>$ core\+::\+Command\+List\+::commands\hspace{0.3cm}{\ttfamily [protected]}}
|
||||
|
||||
The vector of all registered commands.
|
||||
|
||||
|
||||
@@ -1 +1 @@
|
||||
38ac49863a90b12efd31d3d12c147e7d
|
||||
3526df9d00552d3dc2c0c203a1be8aaa
|
||||
Binary file not shown.
@@ -1 +1 @@
|
||||
261b3912acde00a442c24349594bedd3
|
||||
71124607dbe320f41db9015995c9dd1e
|
||||
Binary file not shown.
@@ -1 +1 @@
|
||||
656a75ca6d8b724bd1b273b066ac880e
|
||||
095ce2fe54c4cbec491c802d229e681e
|
||||
Binary file not shown.
@@ -27,7 +27,7 @@ Collaboration diagram for core\+::Socket\+:\nopagebreak
|
||||
\item
|
||||
\mbox{\hyperlink{classcore_1_1Socket_a4c3f87fd1de3c9eab4bf5efbb30ce87d}{Socket}} (\mbox{\hyperlink{classcore_1_1EPoll}{E\+Poll}} \&e\+Poll, std\+::string text=\char`\"{}\char`\"{})
|
||||
\item
|
||||
\mbox{\hyperlink{classcore_1_1Socket_aa5003845f8ae464ad2fa206176381be0}{$\sim$\+Socket}} ()
|
||||
virtual \mbox{\hyperlink{classcore_1_1Socket_aa5003845f8ae464ad2fa206176381be0}{$\sim$\+Socket}} ()
|
||||
\item
|
||||
void \mbox{\hyperlink{classcore_1_1Socket_af2d1b6de7a64a9d446b0305b6ec47b31}{shutdown}} (std\+::string text=\char`\"{}unknown\char`\"{})
|
||||
\item
|
||||
@@ -126,7 +126,7 @@ Constructor
|
||||
\index{core::Socket@{core::Socket}!````~Socket@{$\sim$Socket}}
|
||||
\index{````~Socket@{$\sim$Socket}!core::Socket@{core::Socket}}
|
||||
\doxysubsubsection{\texorpdfstring{$\sim$Socket()}{~Socket()}}
|
||||
{\footnotesize\ttfamily core\+::\+Socket\+::$\sim$\+Socket (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
|
||||
{\footnotesize\ttfamily core\+::\+Socket\+::$\sim$\+Socket (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
||||
|
||||
Destructor
|
||||
|
||||
|
||||
@@ -0,0 +1,53 @@
|
||||
\hypertarget{classcore_1_1Subscription}{}\doxysection{core\+::Subscription Class Reference}
|
||||
\label{classcore_1_1Subscription}\index{core::Subscription@{core::Subscription}}
|
||||
|
||||
|
||||
Collaboration diagram for core\+::Subscription\+:\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=350pt]{classcore_1_1Subscription__coll__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
\doxysubsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1Subscription_a60c235914199243eba7fa019f265fb76}\label{classcore_1_1Subscription_a60c235914199243eba7fa019f265fb76}}
|
||||
{\bfseries Subscription} (std\+::string id)
|
||||
\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)
|
||||
\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)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1Subscription_a4b6d9f10c605f20c7e27c308577ab8d4}\label{classcore_1_1Subscription_a4b6d9f10c605f20c7e27c308577ab8d4}}
|
||||
int {\bfseries unsubscribe} (\mbox{\hyperlink{classcore_1_1TCPSession}{T\+C\+P\+Session}} \&session)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1Subscription_a6065524e207dde927d553c581269e937}\label{classcore_1_1Subscription_a6065524e207dde927d553c581269e937}}
|
||||
virtual int {\bfseries process} (coreutils\+::\+Z\+String \&request, std\+::stringstream \&out)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1Subscription_a886b136b6eae0adcfac1384fc2fae67f}\label{classcore_1_1Subscription_a886b136b6eae0adcfac1384fc2fae67f}}
|
||||
virtual int {\bfseries on\+Subscribe} (\mbox{\hyperlink{classcore_1_1TCPSession}{T\+C\+P\+Session}} \&session)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1Subscription_adfd211503f5eccfda620995de58c73f9}\label{classcore_1_1Subscription_adfd211503f5eccfda620995de58c73f9}}
|
||||
int {\bfseries event} (std\+::stringstream \&out)
|
||||
\end{DoxyCompactItemize}
|
||||
\doxysubsection*{Public Attributes}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1Subscription_a6a952ecf3d9d4a2c69c6b09c3c5c6cb2}\label{classcore_1_1Subscription_a6a952ecf3d9d4a2c69c6b09c3c5c6cb2}}
|
||||
std\+::string {\bfseries id}
|
||||
\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
|
||||
\mbox{\Hypertarget{classcore_1_1Subscription_ad1a5c1a3e5a6e253eb34795f43d4f9be}\label{classcore_1_1Subscription_ad1a5c1a3e5a6e253eb34795f43d4f9be}}
|
||||
std\+::vector$<$ \mbox{\hyperlink{classcore_1_1TCPSession}{T\+C\+P\+Session}} $\ast$ $>$ {\bfseries subscribers}
|
||||
\end{DoxyCompactItemize}
|
||||
|
||||
|
||||
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
|
||||
\item
|
||||
Subscription.\+h\item
|
||||
Subscription.\+cpp\end{DoxyCompactItemize}
|
||||
@@ -0,0 +1,62 @@
|
||||
\hypertarget{classcore_1_1SubscriptionManager}{}\doxysection{core\+::Subscription\+Manager Class Reference}
|
||||
\label{classcore_1_1SubscriptionManager}\index{core::SubscriptionManager@{core::SubscriptionManager}}
|
||||
|
||||
|
||||
Inheritance diagram for core\+::Subscription\+Manager\+:\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=226pt]{classcore_1_1SubscriptionManager__inherit__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
|
||||
Collaboration diagram for core\+::Subscription\+Manager\+:\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=226pt]{classcore_1_1SubscriptionManager__coll__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
\doxysubsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1SubscriptionManager_ad1a021be5d55d1e9f0944c97f79ae9e2}\label{classcore_1_1SubscriptionManager_ad1a021be5d55d1e9f0944c97f79ae9e2}}
|
||||
int {\bfseries add} (\mbox{\hyperlink{classcore_1_1Subscription}{Subscription}} \&subscription)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1SubscriptionManager_aed407c183c390f4459bb6527b30c8198}\label{classcore_1_1SubscriptionManager_aed407c183c390f4459bb6527b30c8198}}
|
||||
int {\bfseries remove\+Session\+Subscriptions} (\mbox{\hyperlink{classcore_1_1TCPSession}{T\+C\+P\+Session}} \&session)
|
||||
\item
|
||||
int \mbox{\hyperlink{classcore_1_1SubscriptionManager_aaa30bf772ad72b3f319a790662e4f8ae}{process\+Command}} (coreutils\+::\+Z\+String \&request, \mbox{\hyperlink{classcore_1_1TCPSession}{T\+C\+P\+Session}} \&session) override
|
||||
\end{DoxyCompactItemize}
|
||||
|
||||
|
||||
\doxysubsection{Member Function Documentation}
|
||||
\mbox{\Hypertarget{classcore_1_1SubscriptionManager_aaa30bf772ad72b3f319a790662e4f8ae}\label{classcore_1_1SubscriptionManager_aaa30bf772ad72b3f319a790662e4f8ae}}
|
||||
\index{core::SubscriptionManager@{core::SubscriptionManager}!processCommand@{processCommand}}
|
||||
\index{processCommand@{processCommand}!core::SubscriptionManager@{core::SubscriptionManager}}
|
||||
\doxysubsubsection{\texorpdfstring{processCommand()}{processCommand()}}
|
||||
{\footnotesize\ttfamily int core\+::\+Subscription\+Manager\+::process\+Command (\begin{DoxyParamCaption}\item[{coreutils\+::\+Z\+String \&}]{request, }\item[{\mbox{\hyperlink{classcore_1_1TCPSession}{T\+C\+P\+Session}} \&}]{session }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}
|
||||
|
||||
This method is used to implement the functionality of the requested command. This pure virtual function must be implemented in your inheriting object.
|
||||
|
||||
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em request} & The request that was entered by the user to invoke this command. \\
|
||||
\hline
|
||||
{\em session} & Specify the requesting session so that the execution of the command process can return its output to the session. \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
\begin{DoxyReturn}{Returns}
|
||||
Returns 0 if execution of the command was successful. Otherwise returns a non-\/zero value indicating an error condition.
|
||||
\end{DoxyReturn}
|
||||
|
||||
|
||||
Reimplemented from \mbox{\hyperlink{classcore_1_1Command_a95176f2532c38ee14e3fee40ee28b1bd}{core\+::\+Command}}.
|
||||
|
||||
|
||||
|
||||
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
|
||||
\item
|
||||
Subscription\+Manager.\+h\item
|
||||
Subscription\+Manager.\+cpp\end{DoxyCompactItemize}
|
||||
@@ -0,0 +1 @@
|
||||
64505415bff46906df08a028a1ac62cb
|
||||
Binary file not shown.
@@ -0,0 +1 @@
|
||||
64505415bff46906df08a028a1ac62cb
|
||||
Binary file not shown.
@@ -0,0 +1 @@
|
||||
66e736a90742b1dc209cc7069b9e8c91
|
||||
Binary file not shown.
@@ -0,0 +1 @@
|
||||
71754a92b8eb564627eaab7051245720
|
||||
Binary file not shown.
@@ -25,9 +25,9 @@ Collaboration diagram for core\+::T\+C\+P\+Server\+:\nopagebreak
|
||||
\doxysubsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\hyperlink{classcore_1_1TCPServer_aef07f6f0f9e9f9c9db5f5cadb70b86d9}{T\+C\+P\+Server}} (\mbox{\hyperlink{classcore_1_1EPoll}{E\+Poll}} \&e\+Poll, \mbox{\hyperlink{classcore_1_1IPAddress}{I\+P\+Address}} address, std\+::string delimiter=\char`\"{} \char`\"{}, std\+::string text=\char`\"{}\char`\"{})
|
||||
\mbox{\hyperlink{classcore_1_1TCPServer_abaecb97c336b757d1029d45277f9fc5b}{T\+C\+P\+Server}} (\mbox{\hyperlink{classcore_1_1EPoll}{E\+Poll}} \&e\+Poll, \mbox{\hyperlink{classcore_1_1IPAddress}{I\+P\+Address}} address, std\+::string delimiter=\char`\"{} \char`\"{}, int depth=10, std\+::string text=\char`\"{}\char`\"{})
|
||||
\item
|
||||
\mbox{\hyperlink{classcore_1_1TCPServer_a7ccdc057c9eee8504fce796301f82088}{$\sim$\+T\+C\+P\+Server}} ()
|
||||
virtual \mbox{\hyperlink{classcore_1_1TCPServer_a7ccdc057c9eee8504fce796301f82088}{$\sim$\+T\+C\+P\+Server}} ()
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1TCPServer_a554ec6e67d368e7bb545d95635c0a0df}\label{classcore_1_1TCPServer_a554ec6e67d368e7bb545d95635c0a0df}}
|
||||
virtual void {\bfseries session\+Error\+Handler} (std\+::string error\+String, std\+::stringstream \&out)
|
||||
@@ -57,6 +57,8 @@ std\+::vector$<$ \mbox{\hyperlink{classcore_1_1TCPSession}{T\+C\+P\+Session}} $\
|
||||
\mbox{\hyperlink{classcore_1_1IPAddressList}{I\+P\+Address\+List}} $\ast$ \mbox{\hyperlink{classcore_1_1TCPServer_a82f6bf16e4ab20d8b30da09e034fffff}{black\+List}}
|
||||
\item
|
||||
\mbox{\hyperlink{classcore_1_1IPAddressList}{I\+P\+Address\+List}} $\ast$ \mbox{\hyperlink{classcore_1_1TCPServer_abad6300b6234ca8b69cef9128755342e}{white\+List}}
|
||||
\item
|
||||
\mbox{\hyperlink{classcore_1_1SubscriptionManager}{Subscription\+Manager}} \mbox{\hyperlink{classcore_1_1TCPServer_a28302dd844cfc971ee41de2000d24aa0}{subscriptions}}
|
||||
\end{DoxyCompactItemize}
|
||||
\doxysubsection*{Protected Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
@@ -78,11 +80,11 @@ A list of connections is maintained in a vector object.
|
||||
This object extends the B\+M\+A\+Command object as well so it can be added to a Console object and process commands to display status information.
|
||||
|
||||
\doxysubsection{Constructor \& Destructor Documentation}
|
||||
\mbox{\Hypertarget{classcore_1_1TCPServer_aef07f6f0f9e9f9c9db5f5cadb70b86d9}\label{classcore_1_1TCPServer_aef07f6f0f9e9f9c9db5f5cadb70b86d9}}
|
||||
\mbox{\Hypertarget{classcore_1_1TCPServer_abaecb97c336b757d1029d45277f9fc5b}\label{classcore_1_1TCPServer_abaecb97c336b757d1029d45277f9fc5b}}
|
||||
\index{core::TCPServer@{core::TCPServer}!TCPServer@{TCPServer}}
|
||||
\index{TCPServer@{TCPServer}!core::TCPServer@{core::TCPServer}}
|
||||
\doxysubsubsection{\texorpdfstring{TCPServer()}{TCPServer()}}
|
||||
{\footnotesize\ttfamily core\+::\+T\+C\+P\+Server\+::\+T\+C\+P\+Server (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classcore_1_1EPoll}{E\+Poll}} \&}]{e\+Poll, }\item[{\mbox{\hyperlink{classcore_1_1IPAddress}{I\+P\+Address}}}]{address, }\item[{std\+::string}]{delimiter = {\ttfamily \char`\"{}~\char`\"{}}, }\item[{std\+::string}]{text = {\ttfamily \char`\"{}\char`\"{}} }\end{DoxyParamCaption})}
|
||||
{\footnotesize\ttfamily core\+::\+T\+C\+P\+Server\+::\+T\+C\+P\+Server (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classcore_1_1EPoll}{E\+Poll}} \&}]{e\+Poll, }\item[{\mbox{\hyperlink{classcore_1_1IPAddress}{I\+P\+Address}}}]{address, }\item[{std\+::string}]{delimiter = {\ttfamily \char`\"{}~\char`\"{}}, }\item[{int}]{depth = {\ttfamily 10}, }\item[{std\+::string}]{text = {\ttfamily \char`\"{}\char`\"{}} }\end{DoxyParamCaption})}
|
||||
|
||||
The constructor for the \mbox{\hyperlink{classcore_1_1TCPServer}{T\+C\+P\+Server}} object.
|
||||
|
||||
@@ -101,7 +103,7 @@ The constructor for the \mbox{\hyperlink{classcore_1_1TCPServer}{T\+C\+P\+Server
|
||||
\index{core::TCPServer@{core::TCPServer}!````~TCPServer@{$\sim$TCPServer}}
|
||||
\index{````~TCPServer@{$\sim$TCPServer}!core::TCPServer@{core::TCPServer}}
|
||||
\doxysubsubsection{\texorpdfstring{$\sim$TCPServer()}{~TCPServer()}}
|
||||
{\footnotesize\ttfamily core\+::\+T\+C\+P\+Server\+::$\sim$\+T\+C\+P\+Server (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
|
||||
{\footnotesize\ttfamily core\+::\+T\+C\+P\+Server\+::$\sim$\+T\+C\+P\+Server (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
||||
|
||||
The destructor for this object.
|
||||
|
||||
@@ -185,7 +187,13 @@ The commands object is a \mbox{\hyperlink{classcore_1_1CommandList}{Command\+Lis
|
||||
\doxysubsubsection{\texorpdfstring{sessions}{sessions}}
|
||||
{\footnotesize\ttfamily std\+::vector$<$\mbox{\hyperlink{classcore_1_1TCPSession}{T\+C\+P\+Session}} $\ast$$>$ core\+::\+T\+C\+P\+Server\+::sessions}
|
||||
|
||||
The list of sessions that are currently open and being maintained by this object. \mbox{\Hypertarget{classcore_1_1TCPServer_abad6300b6234ca8b69cef9128755342e}\label{classcore_1_1TCPServer_abad6300b6234ca8b69cef9128755342e}}
|
||||
The list of sessions that are currently open and being maintained by this object. \mbox{\Hypertarget{classcore_1_1TCPServer_a28302dd844cfc971ee41de2000d24aa0}\label{classcore_1_1TCPServer_a28302dd844cfc971ee41de2000d24aa0}}
|
||||
\index{core::TCPServer@{core::TCPServer}!subscriptions@{subscriptions}}
|
||||
\index{subscriptions@{subscriptions}!core::TCPServer@{core::TCPServer}}
|
||||
\doxysubsubsection{\texorpdfstring{subscriptions}{subscriptions}}
|
||||
{\footnotesize\ttfamily \mbox{\hyperlink{classcore_1_1SubscriptionManager}{Subscription\+Manager}} core\+::\+T\+C\+P\+Server\+::subscriptions}
|
||||
|
||||
The \mbox{\hyperlink{classcore_1_1Subscription}{Subscription}} Manager tracks all subscriptions on the server. \mbox{\Hypertarget{classcore_1_1TCPServer_abad6300b6234ca8b69cef9128755342e}\label{classcore_1_1TCPServer_abad6300b6234ca8b69cef9128755342e}}
|
||||
\index{core::TCPServer@{core::TCPServer}!whiteList@{whiteList}}
|
||||
\index{whiteList@{whiteList}!core::TCPServer@{core::TCPServer}}
|
||||
\doxysubsubsection{\texorpdfstring{whiteList}{whiteList}}
|
||||
|
||||
@@ -1 +1 @@
|
||||
d83280ccc4433fc6386ad879a66ac13c
|
||||
69b71d93a92fa95269e4cf915e547067
|
||||
Binary file not shown.
@@ -1 +1 @@
|
||||
2a2d85aa1ac1b45e730afbdf75982884
|
||||
f3d3860698dff70bd5955f0fbd35ea6d
|
||||
Binary file not shown.
@@ -1 +1 @@
|
||||
56d7304dcefbcc3a212a2bd19c4f222f
|
||||
e96a05dd0a826020326f33fbd922b00e
|
||||
Binary file not shown.
@@ -1 +1 @@
|
||||
bb7b72ab545059e6869b8149ca11d20e
|
||||
cc9f449868650fe7138b6b9b091dc80a
|
||||
Binary file not shown.
@@ -1 +1 @@
|
||||
ddcf4edd95011751dbbfe508acb046f9
|
||||
44e3860ca5ea088dcdbc253a2d4546a7
|
||||
Binary file not shown.
@@ -4,6 +4,7 @@ This inheritance list is sorted roughly, but not completely, alphabetically\+:\b
|
||||
\begin{DoxyCompactList}
|
||||
\item \contentsline{section}{core\+::Command\+List}{\pageref{classcore_1_1CommandList}}{}
|
||||
\item \contentsline{section}{core\+::E\+Poll}{\pageref{classcore_1_1EPoll}}{}
|
||||
\item \contentsline{section}{core\+::Subscription\+Manager}{\pageref{classcore_1_1SubscriptionManager}}{}
|
||||
\item \contentsline{section}{core\+::T\+C\+P\+Server}{\pageref{classcore_1_1TCPServer}}{}
|
||||
\begin{DoxyCompactList}
|
||||
\item \contentsline{section}{core\+::Console\+Server}{\pageref{classcore_1_1ConsoleServer}}{}
|
||||
@@ -42,4 +43,5 @@ This inheritance list is sorted roughly, but not completely, alphabetically\+:\b
|
||||
\item \contentsline{section}{core\+::U\+D\+P\+Server\+Socket}{\pageref{classcore_1_1UDPServerSocket}}{}
|
||||
\end{DoxyCompactList}
|
||||
\end{DoxyCompactList}
|
||||
\item \contentsline{section}{core\+::Subscription}{\pageref{classcore_1_1Subscription}}{}
|
||||
\end{DoxyCompactList}
|
||||
@@ -187,6 +187,8 @@
|
||||
\input{classcore_1_1Object}
|
||||
\input{classcore_1_1SessionFilter}
|
||||
\input{classcore_1_1Socket}
|
||||
\input{classcore_1_1Subscription}
|
||||
\input{classcore_1_1SubscriptionManager}
|
||||
\input{classcore_1_1TCPServer}
|
||||
\input{classcore_1_1TCPSession}
|
||||
\input{classcore_1_1TCPSocket}
|
||||
|
||||
Reference in new issue
Block a user