Skip to content

Commit

Permalink
has -> size (it's faster)
Browse files Browse the repository at this point in the history
  • Loading branch information
davedoesdev committed Aug 11, 2017
1 parent 6d296d6 commit 2b30df6
Show file tree
Hide file tree
Showing 10 changed files with 111 additions and 74 deletions.
22 changes: 15 additions & 7 deletions aedes/qlobber-sub.js
Expand Up @@ -23,12 +23,15 @@ QlobberSub.prototype._initial_value = function (val)

QlobberSub.prototype._add_value = function (existing, val)
{
if (!existing.clientMap.has(val.clientId))
var clientMap = existing.clientMap,
size = existing.clientMap.size;

clientMap.set(val.clientId, val.qos);

if (clientMap.size > size)
{
this.sub_count += 1;
}

existing.clientMap.set(val.clientId, val.qos);
};

QlobberSub.prototype._add_values = function (dest, existing, topic)
Expand Down Expand Up @@ -61,14 +64,19 @@ QlobberSub.prototype._add_values = function (dest, existing, topic)

QlobberSub.prototype._remove_value = function (existing, val)
{
if (existing.clientMap.has(val.clientId))
var clientMap = existing.clientMap,
size_before = clientMap.size;

clientMap.delete(val.clientId);

var size_after = clientMap.size;

if (size_after < size_before)
{
this.sub_count -= 1;
}

existing.clientMap.delete(val.clientId);

return existing.clientMap.size === 0;
return size_after === 0;
};

// Returns whether client is last subscriber to topic
Expand Down
10 changes: 5 additions & 5 deletions coverage/lcov-report/index.html
Expand Up @@ -22,7 +22,7 @@ <h1>
<div class='fl pad1y space-right2'>
<span class="strong">100% </span>
<span class="quiet">Statements</span>
<span class='fraction'>206/206</span>
<span class='fraction'>211/211</span>
</div>
<div class='fl pad1y space-right2'>
<span class="strong">100% </span>
Expand All @@ -37,7 +37,7 @@ <h1>
<div class='fl pad1y space-right2'>
<span class="strong">100% </span>
<span class="quiet">Lines</span>
<span class='fraction'>205/205</span>
<span class='fraction'>210/210</span>
</div>
</div>
</div>
Expand Down Expand Up @@ -75,13 +75,13 @@ <h1>
<td class="file high" data-value="qlobber/aedes"><a href="qlobber/aedes/index.html">qlobber/aedes</a></td>
<td data-value="100" class="pic high"><div class="chart"><div class="cover-fill cover-full" style="width: 100%;"></div><div class="cover-empty" style="width:0%;"></div></div></td>
<td data-value="100" class="pct high">100%</td>
<td data-value="32" class="abs high">32/32</td>
<td data-value="37" class="abs high">37/37</td>
<td data-value="100" class="pct high">100%</td>
<td data-value="11" class="abs high">11/11</td>
<td data-value="100" class="pct high">100%</td>
<td data-value="8" class="abs high">8/8</td>
<td data-value="100" class="pct high">100%</td>
<td data-value="32" class="abs high">32/32</td>
<td data-value="37" class="abs high">37/37</td>
</tr>

<tr>
Expand All @@ -103,7 +103,7 @@ <h1>
</div><!-- /wrapper -->
<div class='footer quiet pad2 space-top1 center small'>
Code coverage
generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Thu Aug 10 2017 06:56:22 GMT+0100 (BST)
generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Fri Aug 11 2017 07:21:26 GMT+0100 (BST)
</div>
</div>
<script src="prettify.js"></script>
Expand Down
10 changes: 5 additions & 5 deletions coverage/lcov-report/qlobber/aedes/index.html
Expand Up @@ -22,7 +22,7 @@ <h1>
<div class='fl pad1y space-right2'>
<span class="strong">100% </span>
<span class="quiet">Statements</span>
<span class='fraction'>32/32</span>
<span class='fraction'>37/37</span>
</div>
<div class='fl pad1y space-right2'>
<span class="strong">100% </span>
Expand All @@ -37,7 +37,7 @@ <h1>
<div class='fl pad1y space-right2'>
<span class="strong">100% </span>
<span class="quiet">Lines</span>
<span class='fraction'>32/32</span>
<span class='fraction'>37/37</span>
</div>
</div>
</div>
Expand All @@ -62,13 +62,13 @@ <h1>
<td class="file high" data-value="qlobber-sub.js"><a href="qlobber-sub.js.html">qlobber-sub.js</a></td>
<td data-value="100" class="pic high"><div class="chart"><div class="cover-fill cover-full" style="width: 100%;"></div><div class="cover-empty" style="width:0%;"></div></div></td>
<td data-value="100" class="pct high">100%</td>
<td data-value="32" class="abs high">32/32</td>
<td data-value="37" class="abs high">37/37</td>
<td data-value="100" class="pct high">100%</td>
<td data-value="11" class="abs high">11/11</td>
<td data-value="100" class="pct high">100%</td>
<td data-value="8" class="abs high">8/8</td>
<td data-value="100" class="pct high">100%</td>
<td data-value="32" class="abs high">32/32</td>
<td data-value="37" class="abs high">37/37</td>
</tr>

</tbody>
Expand All @@ -77,7 +77,7 @@ <h1>
</div><!-- /wrapper -->
<div class='footer quiet pad2 space-top1 center small'>
Code coverage
generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Thu Aug 10 2017 06:56:22 GMT+0100 (BST)
generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Fri Aug 11 2017 07:21:26 GMT+0100 (BST)
</div>
</div>
<script src="../../prettify.js"></script>
Expand Down
52 changes: 38 additions & 14 deletions coverage/lcov-report/qlobber/aedes/qlobber-sub.js.html
Expand Up @@ -22,7 +22,7 @@ <h1>
<div class='fl pad1y space-right2'>
<span class="strong">100% </span>
<span class="quiet">Statements</span>
<span class='fraction'>32/32</span>
<span class='fraction'>37/37</span>
</div>
<div class='fl pad1y space-right2'>
<span class="strong">100% </span>
Expand All @@ -37,7 +37,7 @@ <h1>
<div class='fl pad1y space-right2'>
<span class="strong">100% </span>
<span class="quiet">Lines</span>
<span class='fraction'>32/32</span>
<span class='fraction'>37/37</span>
</div>
</div>
</div>
Expand Down Expand Up @@ -136,7 +136,15 @@ <h1>
91
92
93
94</td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
94
95
96
97
98
99
100
101
102</td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">1x</span>
Expand All @@ -162,12 +170,15 @@ <h1>
<span class="cline-any cline-yes">1x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">5x</span>
<span class="cline-any cline-yes">5x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">4x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">5x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">5x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">4x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">1x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
Expand Down Expand Up @@ -200,12 +211,17 @@ <h1>
<span class="cline-any cline-yes">1x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">4x</span>
<span class="cline-any cline-yes">4x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">3x</span>
<span class="cline-any cline-yes">4x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">4x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">4x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">3x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">4x</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
Expand Down Expand Up @@ -254,12 +270,15 @@ <h1>
&nbsp;
QlobberSub.prototype._add_value = function (existing, val)
{
if (!existing.clientMap.has(val.clientId))
var clientMap = existing.clientMap,
size = existing.clientMap.size;
&nbsp;
clientMap.set(val.clientId, val.qos);
&nbsp;
if (clientMap.size &gt; size)
{
this.sub_count += 1;
}
&nbsp;
existing.clientMap.set(val.clientId, val.qos);
};
&nbsp;
QlobberSub.prototype._add_values = function (dest, existing, topic)
Expand Down Expand Up @@ -292,14 +311,19 @@ <h1>
&nbsp;
QlobberSub.prototype._remove_value = function (existing, val)
{
if (existing.clientMap.has(val.clientId))
var clientMap = existing.clientMap,
size_before = clientMap.size;
&nbsp;
clientMap.delete(val.clientId);
&nbsp;
var size_after = clientMap.size;
&nbsp;
if (size_after &lt; size_before)
{
this.sub_count -= 1;
}
&nbsp;
existing.clientMap.delete(val.clientId);
&nbsp;
return existing.clientMap.size === 0;
return size_after === 0;
};
&nbsp;
// Returns whether client is last subscriber to topic
Expand Down Expand Up @@ -328,7 +352,7 @@ <h1>
</div><!-- /wrapper -->
<div class='footer quiet pad2 space-top1 center small'>
Code coverage
generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Thu Aug 10 2017 06:56:22 GMT+0100 (BST)
generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Fri Aug 11 2017 07:21:26 GMT+0100 (BST)
</div>
</div>
<script src="../../prettify.js"></script>
Expand Down
2 changes: 1 addition & 1 deletion coverage/lcov-report/qlobber/index.html
Expand Up @@ -77,7 +77,7 @@ <h1>
</div><!-- /wrapper -->
<div class='footer quiet pad2 space-top1 center small'>
Code coverage
generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Thu Aug 10 2017 06:56:22 GMT+0100 (BST)
generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Fri Aug 11 2017 07:21:26 GMT+0100 (BST)
</div>
</div>
<script src="../prettify.js"></script>
Expand Down
2 changes: 1 addition & 1 deletion coverage/lcov-report/qlobber/index.js.html
Expand Up @@ -58,7 +58,7 @@ <h1>
</div><!-- /wrapper -->
<div class='footer quiet pad2 space-top1 center small'>
Code coverage
generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Thu Aug 10 2017 06:56:22 GMT+0100 (BST)
generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Fri Aug 11 2017 07:21:26 GMT+0100 (BST)
</div>
</div>
<script src="../prettify.js"></script>
Expand Down
2 changes: 1 addition & 1 deletion coverage/lcov-report/qlobber/lib/index.html
Expand Up @@ -77,7 +77,7 @@ <h1>
</div><!-- /wrapper -->
<div class='footer quiet pad2 space-top1 center small'>
Code coverage
generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Thu Aug 10 2017 06:56:22 GMT+0100 (BST)
generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Fri Aug 11 2017 07:21:26 GMT+0100 (BST)
</div>
</div>
<script src="../../prettify.js"></script>
Expand Down
2 changes: 1 addition & 1 deletion coverage/lcov-report/qlobber/lib/qlobber.js.html
Expand Up @@ -1969,7 +1969,7 @@ <h1>
</div><!-- /wrapper -->
<div class='footer quiet pad2 space-top1 center small'>
Code coverage
generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Thu Aug 10 2017 06:56:22 GMT+0100 (BST)
generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Fri Aug 11 2017 07:21:26 GMT+0100 (BST)
</div>
</div>
<script src="../../prettify.js"></script>
Expand Down
81 changes: 43 additions & 38 deletions coverage/lcov.info
Expand Up @@ -13,11 +13,11 @@ SF:/home/david/qlobber/aedes/qlobber-sub.js
FN:7,QlobberSub
FN:15,(anonymous_1)
FN:24,(anonymous_2)
FN:34,(anonymous_3)
FN:62,(anonymous_4)
FN:75,(anonymous_5)
FN:82,(anonymous_6)
FN:87,(anonymous_7)
FN:37,(anonymous_3)
FN:65,(anonymous_4)
FN:83,(anonymous_5)
FN:90,(anonymous_6)
FN:95,(anonymous_7)
FNF:8
FNH:8
FNDA:8,QlobberSub
Expand All @@ -38,41 +38,46 @@ DA:17,10
DA:18,10
DA:24,1
DA:26,5
DA:28,4
DA:27,5
DA:29,5
DA:31,5
DA:34,1
DA:37,14
DA:39,10
DA:41,12
DA:49,4
DA:51,2
DA:53,3
DA:62,1
DA:64,4
DA:66,3
DA:69,4
DA:71,4
DA:75,1
DA:77,19
DA:82,1
DA:84,11
DA:87,1
DA:89,1
DA:33,4
DA:37,1
DA:40,14
DA:42,10
DA:44,12
DA:52,4
DA:54,2
DA:56,3
DA:65,1
DA:67,4
DA:68,4
DA:70,4
DA:72,4
DA:74,4
DA:76,3
DA:79,4
DA:83,1
DA:85,19
DA:90,1
DA:93,1
LF:32
LH:32
BRDA:26,0,0,4
BRDA:26,0,1,1
BRDA:37,1,0,10
BRDA:37,1,1,4
BRDA:49,2,0,2
BRDA:49,2,1,2
BRDA:64,3,0,3
BRDA:64,3,1,1
BRDA:77,4,0,19
BRDA:77,4,1,15
BRDA:77,4,2,13
DA:92,11
DA:95,1
DA:97,1
DA:98,1
DA:101,1
LF:37
LH:37
BRDA:31,0,0,4
BRDA:31,0,1,1
BRDA:40,1,0,10
BRDA:40,1,1,4
BRDA:52,2,0,2
BRDA:52,2,1,2
BRDA:74,3,0,3
BRDA:74,3,1,1
BRDA:85,4,0,19
BRDA:85,4,1,15
BRDA:85,4,2,13
BRF:11
BRH:11
end_of_record
Expand Down
2 changes: 1 addition & 1 deletion package.json
@@ -1,7 +1,7 @@
{
"name": "qlobber",
"description": "Node.js globbing for amqp-like topics",
"version": "1.6.0",
"version": "1.7.0",
"homepage": "https://github.com/davedoesdev/qlobber",
"author": {
"name": "David Halls",
Expand Down

0 comments on commit 2b30df6

Please sign in to comment.