Skip to content

Commit

Permalink
consumers
Browse files Browse the repository at this point in the history
  • Loading branch information
Ye-Yu-Mo committed Oct 9, 2024
1 parent 908cafe commit 3256281
Show file tree
Hide file tree
Showing 261 changed files with 5,720 additions and 1,901 deletions.
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -227,6 +227,8 @@ binding_key: `news.music.#` 约定字符: 数字`0~9`\\字母`a~z A~Z`\\ `_` \\

#### 消费者管理模块

![null.png](https://s2.loli.net/2024/10/09/lgWNoAP95ZnyfS4.png)

消费者指订阅了消息队列的客户端, 当队列中有消息会自动推送给客户端

订阅消息指的是订阅一整个队列的消息
Expand Down
72 changes: 38 additions & 34 deletions docs/annotated.html

Large diffs are not rendered by default.

4 changes: 4 additions & 0 deletions docs/annotated_dup.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ var annotated_dup =
[ "Binding", "struct_xu_m_q_1_1_binding.html", "struct_xu_m_q_1_1_binding" ],
[ "BindingManager", "class_xu_m_q_1_1_binding_manager.html", "class_xu_m_q_1_1_binding_manager" ],
[ "BindingMapper", "class_xu_m_q_1_1_binding_mapper.html", "class_xu_m_q_1_1_binding_mapper" ],
[ "Consumer", "struct_xu_m_q_1_1_consumer.html", "struct_xu_m_q_1_1_consumer" ],
[ "ConsumerManager", "class_xu_m_q_1_1_consumer_manager.html", "class_xu_m_q_1_1_consumer_manager" ],
[ "Exchange", "struct_xu_m_q_1_1_exchange.html", "struct_xu_m_q_1_1_exchange" ],
[ "ExchangeManager", "class_xu_m_q_1_1_exchange_manager.html", "class_xu_m_q_1_1_exchange_manager" ],
[ "ExchangeMapper", "class_xu_m_q_1_1_exchange_mapper.html", "class_xu_m_q_1_1_exchange_mapper" ],
Expand All @@ -20,6 +22,7 @@ var annotated_dup =
[ "MsgQueue", "struct_xu_m_q_1_1_msg_queue.html", "struct_xu_m_q_1_1_msg_queue" ],
[ "MsgQueueManager", "class_xu_m_q_1_1_msg_queue_manager.html", "class_xu_m_q_1_1_msg_queue_manager" ],
[ "MsgQueueMapper", "class_xu_m_q_1_1_msg_queue_mapper.html", "class_xu_m_q_1_1_msg_queue_mapper" ],
[ "QueueConsumer", "class_xu_m_q_1_1_queue_consumer.html", "class_xu_m_q_1_1_queue_consumer" ],
[ "QueueMessage", "class_xu_m_q_1_1_queue_message.html", "class_xu_m_q_1_1_queue_message" ],
[ "Router", "class_xu_m_q_1_1_router.html", "class_xu_m_q_1_1_router" ],
[ "SqliteHelper", "class_xu_m_q_1_1_sqlite_helper.html", "class_xu_m_q_1_1_sqlite_helper" ],
Expand All @@ -28,6 +31,7 @@ var annotated_dup =
[ "VirtualHost", "class_xu_m_q_1_1_virtual_host.html", "class_xu_m_q_1_1_virtual_host" ]
] ],
[ "BindingTest", "class_binding_test.html", "class_binding_test" ],
[ "ConsumerTest", "class_consumer_test.html", "class_consumer_test" ],
[ "ExchangerMapper", "class_exchanger_mapper.html", null ],
[ "ExchangeTest", "class_exchange_test.html", "class_exchange_test" ],
[ "HostTest", "class_host_test.html", "class_host_test" ],
Expand Down
116 changes: 116 additions & 0 deletions docs/class_consumer_test-members.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="zh">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Message-Queues: 成员列表</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">Message-Queues<span id="projectnumber">&#160;beta 0.02</span>
</div>
<div id="projectbrief">A Message-Queues based Cpp</div>
</td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
<input type="text" id="MSearchField" value="" placeholder="搜索" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- 制作者 Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('class_consumer_test.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">载入中...</div>
<div class="SRStatus" id="Searching">搜索中...</div>
<div class="SRStatus" id="NoMatches">未找到</div>
</div>
</div>
</div>
</div>

<div class="header">
<div class="headertitle"><div class="title">ConsumerTest 成员列表</div></div>
</div><!--header-->
<div class="contents">

<p>成员的完整列表,这些成员属于 <a class="el" href="class_consumer_test.html">ConsumerTest</a>,包括所有继承而来的类成员</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="class_consumer_test.html#a73fcd858b26c1768371bec0073940bb6">SetUp</a>() override</td><td class="entry"><a class="el" href="class_consumer_test.html">ConsumerTest</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="class_consumer_test.html#abdc68405cf811cdc827b107eee11e2ac">TearDown</a>() override</td><td class="entry"><a class="el" href="class_consumer_test.html">ConsumerTest</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">制作者 <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8 </li>
</ul>
</div>
</body>
</html>
194 changes: 194 additions & 0 deletions docs/class_consumer_test.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,194 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="zh">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Message-Queues: ConsumerTest类 参考</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">Message-Queues<span id="projectnumber">&#160;beta 0.02</span>
</div>
<div id="projectbrief">A Message-Queues based Cpp</div>
</td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
<input type="text" id="MSearchField" value="" placeholder="搜索" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- 制作者 Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('class_consumer_test.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">载入中...</div>
<div class="SRStatus" id="Searching">搜索中...</div>
<div class="SRStatus" id="NoMatches">未找到</div>
</div>
</div>
</div>
</div>

<div class="header">
<div class="summary">
<a href="#pub-methods">Public 成员函数</a> &#124;
<a href="class_consumer_test-members.html">所有成员列表</a> </div>
<div class="headertitle"><div class="title">ConsumerTest类 参考</div></div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
类 ConsumerTest 继承关系图:</div>
<div class="dyncontent">
<div class="center"><img src="class_consumer_test__inherit__graph.png" border="0" usemap="#a_consumer_test_inherit__map" alt="Inheritance graph"/></div>
<map name="a_consumer_test_inherit__map" id="a_consumer_test_inherit__map">
<area shape="rect" title=" " alt="" coords="27,79,142,104"/>
<area shape="rect" title=" " alt="" coords="5,5,164,31"/>
<area shape="poly" title=" " alt="" coords="87,44,87,79,82,79,82,44"/>
</map>
<center><span class="legend">[<a target="top" href="graph_legend.html">图例</a>]</span></center></div>
<div class="dynheader">
ConsumerTest 的协作图:</div>
<div class="dyncontent">
<div class="center"><img src="class_consumer_test__coll__graph.png" border="0" usemap="#a_consumer_test_coll__map" alt="Collaboration graph"/></div>
<map name="a_consumer_test_coll__map" id="a_consumer_test_coll__map">
<area shape="rect" title=" " alt="" coords="27,79,142,104"/>
<area shape="rect" title=" " alt="" coords="5,5,164,31"/>
<area shape="poly" title=" " alt="" coords="87,44,87,79,82,79,82,44"/>
</map>
<center><span class="legend">[<a target="top" href="graph_legend.html">图例</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public 成员函数</h2></td></tr>
<tr class="memitem:a73fcd858b26c1768371bec0073940bb6" id="r_a73fcd858b26c1768371bec0073940bb6"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_consumer_test.html#a73fcd858b26c1768371bec0073940bb6">SetUp</a> () override</td></tr>
<tr class="separator:a73fcd858b26c1768371bec0073940bb6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abdc68405cf811cdc827b107eee11e2ac" id="r_abdc68405cf811cdc827b107eee11e2ac"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_consumer_test.html#abdc68405cf811cdc827b107eee11e2ac">TearDown</a> () override</td></tr>
<tr class="separator:abdc68405cf811cdc827b107eee11e2ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">成员函数说明</h2>
<a id="a73fcd858b26c1768371bec0073940bb6" name="a73fcd858b26c1768371bec0073940bb6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a73fcd858b26c1768371bec0073940bb6">&#9670;&#160;</a></span>SetUp()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void ConsumerTest::SetUp </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a id="abdc68405cf811cdc827b107eee11e2ac" name="abdc68405cf811cdc827b107eee11e2ac"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abdc68405cf811cdc827b107eee11e2ac">&#9670;&#160;</a></span>TearDown()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void ConsumerTest::TearDown </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="class_consumer_test.html">ConsumerTest</a></li>
<li class="footer">制作者 <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8 </li>
</ul>
</div>
</body>
</html>
5 changes: 5 additions & 0 deletions docs/class_consumer_test.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
var class_consumer_test =
[
[ "SetUp", "class_consumer_test.html#a73fcd858b26c1768371bec0073940bb6", null ],
[ "TearDown", "class_consumer_test.html#abdc68405cf811cdc827b107eee11e2ac", null ]
];
5 changes: 5 additions & 0 deletions docs/class_consumer_test__coll__graph.map
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
<map id="ConsumerTest" name="ConsumerTest">
<area shape="rect" id="Node000001" title=" " alt="" coords="27,79,142,104"/>
<area shape="rect" id="Node000002" title=" " alt="" coords="5,5,164,31"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="87,44,87,79,82,79,82,44"/>
</map>
1 change: 1 addition & 0 deletions docs/class_consumer_test__coll__graph.md5
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
31a3188fd7ca0074f2c37b2c77af8674
Binary file added docs/class_consumer_test__coll__graph.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
5 changes: 5 additions & 0 deletions docs/class_consumer_test__inherit__graph.map
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
<map id="ConsumerTest" name="ConsumerTest">
<area shape="rect" id="Node000001" title=" " alt="" coords="27,79,142,104"/>
<area shape="rect" id="Node000002" title=" " alt="" coords="5,5,164,31"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="87,44,87,79,82,79,82,44"/>
</map>
1 change: 1 addition & 0 deletions docs/class_consumer_test__inherit__graph.md5
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
31a3188fd7ca0074f2c37b2c77af8674
Binary file added docs/class_consumer_test__inherit__graph.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 3256281

Please sign in to comment.