Added support for the SubscriptionHandlerFactory object.

This commit is contained in:
Brad Arant committed 2023-06-10 16:01:56 -07:00
1 parent 0ef782a11c
commit b40cb9f5a4
114 files changed
+497 -480

No files matched your search

+17 -17
View File
@@ -78,22 +78,22 @@ $(function() {
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160; </div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="keyword">namespace </span>core {</div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160; </div>
<div class="line"><a name="l00014"></a><span class="lineno"><a class="line" href="classcore_1_1SubscriptionManager.html"> 14</a></span>&#160; <span class="keyword">class </span><a class="code" href="classcore_1_1SubscriptionManager.html">SubscriptionManager</a> : <span class="keyword">public</span> <a class="code" href="classcore_1_1Command.html">Command</a> {</div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160; <span class="keyword">class </span>SubscriptionHandlerFactory;</div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160; </div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160; <span class="keyword">public</span>:</div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160; <a class="code" href="classcore_1_1SubscriptionManager.html">SubscriptionManager</a>();</div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160; </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160; <span class="keywordtype">int</span> add(<a class="code" href="classcore_1_1Subscription.html">Subscription</a> &amp;subscription);</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; <span class="keywordtype">int</span> addHandler(std::string name, <a class="code" href="classcore_1_1SubscriptionHandler.html">SubscriptionHandler</a> *handler);</div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; </div>
<div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="classcore_1_1SubscriptionManager.html"> 16</a></span>&#160; <span class="keyword">class </span><a class="code" href="classcore_1_1SubscriptionManager.html">SubscriptionManager</a> : <span class="keyword">public</span> <a class="code" href="classcore_1_1Command.html">Command</a> {</div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160; </div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160; <span class="keyword">public</span>:</div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160; <a class="code" href="classcore_1_1SubscriptionManager.html">SubscriptionManager</a>();</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; <span class="keywordtype">int</span> add(<a class="code" href="classcore_1_1Subscription.html">Subscription</a> &amp;subscription);</div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; <span class="keywordtype">int</span> removeSessionSubscriptions(<a class="code" href="classcore_1_1TCPSession.html">TCPSession</a> &amp;session);</div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; </div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; <span class="keywordtype">int</span> <a class="code" href="classcore_1_1SubscriptionManager.html#aaa30bf772ad72b3f319a790662e4f8ae">processCommand</a>(coreutils::ZString &amp;request, <a class="code" href="classcore_1_1TCPSession.html">TCPSession</a> &amp;session) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; </div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; <span class="keyword">private</span>:</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <a class="code" href="classcore_1_1Subscription.html">Subscription</a> *subscription;</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; std::map&lt;std::string, Subscription *&gt; subscriptions;</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; std::map&lt;std::string, SubscriptionHandler *&gt; handlers;</div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; <span class="keywordtype">int</span> <a class="code" href="classcore_1_1SubscriptionManager.html#aaa30bf772ad72b3f319a790662e4f8ae">processCommand</a>(coreutils::ZString &amp;request, <a class="code" href="classcore_1_1TCPSession.html">TCPSession</a> &amp;session) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; </div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; <a class="code" href="classcore_1_1SubscriptionHandlerFactory.html">SubscriptionHandlerFactory</a> *factory;</div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; </div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <span class="keyword">private</span>:</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <a class="code" href="classcore_1_1Subscription.html">Subscription</a> *subscription;</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; std::map&lt;std::string, Subscription *&gt; subscriptions;</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <a class="code" href="classcore_1_1Subscription.html">Subscription</a> *newSubscription;</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; std::mutex lock;</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; };</div>
@@ -102,9 +102,9 @@ $(function() {
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; </div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="ttc" id="aclasscore_1_1Command_html"><div class="ttname"><a href="classcore_1_1Command.html">core::Command</a></div><div class="ttdef"><b>Definition:</b> Command.h:22</div></div>
<div class="ttc" id="aclasscore_1_1SubscriptionHandler_html"><div class="ttname"><a href="classcore_1_1SubscriptionHandler.html">core::SubscriptionHandler</a></div><div class="ttdef"><b>Definition:</b> SubscriptionHandler.h:14</div></div>
<div class="ttc" id="aclasscore_1_1SubscriptionManager_html"><div class="ttname"><a href="classcore_1_1SubscriptionManager.html">core::SubscriptionManager</a></div><div class="ttdef"><b>Definition:</b> SubscriptionManager.h:14</div></div>
<div class="ttc" id="aclasscore_1_1SubscriptionManager_html_aaa30bf772ad72b3f319a790662e4f8ae"><div class="ttname"><a href="classcore_1_1SubscriptionManager.html#aaa30bf772ad72b3f319a790662e4f8ae">core::SubscriptionManager::processCommand</a></div><div class="ttdeci">int processCommand(coreutils::ZString &amp;request, TCPSession &amp;session) override</div><div class="ttdef"><b>Definition:</b> SubscriptionManager.cpp:60</div></div>
<div class="ttc" id="aclasscore_1_1SubscriptionHandlerFactory_html"><div class="ttname"><a href="classcore_1_1SubscriptionHandlerFactory.html">core::SubscriptionHandlerFactory</a></div><div class="ttdef"><b>Definition:</b> SubscriptionHandlerFactory.h:9</div></div>
<div class="ttc" id="aclasscore_1_1SubscriptionManager_html"><div class="ttname"><a href="classcore_1_1SubscriptionManager.html">core::SubscriptionManager</a></div><div class="ttdef"><b>Definition:</b> SubscriptionManager.h:16</div></div>
<div class="ttc" id="aclasscore_1_1SubscriptionManager_html_aaa30bf772ad72b3f319a790662e4f8ae"><div class="ttname"><a href="classcore_1_1SubscriptionManager.html#aaa30bf772ad72b3f319a790662e4f8ae">core::SubscriptionManager::processCommand</a></div><div class="ttdeci">int processCommand(coreutils::ZString &amp;request, TCPSession &amp;session) override</div><div class="ttdef"><b>Definition:</b> SubscriptionManager.cpp:51</div></div>
<div class="ttc" id="aclasscore_1_1Subscription_html"><div class="ttname"><a href="classcore_1_1Subscription.html">core::Subscription</a></div><div class="ttdef"><b>Definition:</b> Subscription.h:15</div></div>
<div class="ttc" id="aclasscore_1_1TCPSession_html"><div class="ttname"><a href="classcore_1_1TCPSession.html">core::TCPSession</a></div><div class="ttdef"><b>Definition:</b> TCPSession.h:26</div></div>
</div><!-- fragment --></div><!-- contents -->