documentation version 1.4.2

This commit is contained in:
Jeremy Long
2016-07-31 08:10:07 -04:00
parent 6193968089
commit 44917ad0d3
1319 changed files with 93942 additions and 60498 deletions

View File

@@ -118,19 +118,19 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> * The logger.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;48</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;49</td> <td class="nbHitsCovered">&nbsp;2</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Logger LOGGER = LoggerFactory.getLogger(EvidenceCollection.<span class="keyword">class</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;49</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Logger LOGGER = LoggerFactory.getLogger(EvidenceCollection.<span class="keyword">class</span>);</pre></td></tr>
<tr> <td class="numLine">&nbsp;50</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">/**</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;51</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Used to iterate over highest confidence evidence contained in the collection.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;52</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;53</td> <td class="nbHitsCovered">&nbsp;44</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Filter&lt;Evidence&gt; HIGHEST_CONFIDENCE = <span class="keyword">new</span> Filter&lt;Evidence&gt;() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;53</td> <td class="nbHitsCovered">&nbsp;22</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Filter&lt;Evidence&gt; HIGHEST_CONFIDENCE = <span class="keyword">new</span> Filter&lt;Evidence&gt;() {</pre></td></tr>
<tr> <td class="numLine">&nbsp;54</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; @Override</pre></td></tr>
<tr> <td class="numLine">&nbsp;55</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> <span class="keyword">boolean</span> passes(Evidence evidence) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;56</td> <td class="nbHitsCovered"><a title="Line 56: Conditional coverage 100% (2/2).">&nbsp;42</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 56: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> evidence.getConfidence() == Confidence.HIGHEST;</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;56</td> <td class="nbHitsCovered"><a title="Line 56: Conditional coverage 100% (2/2).">&nbsp;21</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 56: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> evidence.getConfidence() == Confidence.HIGHEST;</a></pre></td></tr>
<tr> <td class="numLine">&nbsp;57</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;58</td> <td class="nbHits">&nbsp;</td>
@@ -141,12 +141,12 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Used to iterate over high confidence evidence contained in the collection.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;61</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;62</td> <td class="nbHitsCovered">&nbsp;124</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Filter&lt;Evidence&gt; HIGH_CONFIDENCE = <span class="keyword">new</span> Filter&lt;Evidence&gt;() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;62</td> <td class="nbHitsCovered">&nbsp;61</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Filter&lt;Evidence&gt; HIGH_CONFIDENCE = <span class="keyword">new</span> Filter&lt;Evidence&gt;() {</pre></td></tr>
<tr> <td class="numLine">&nbsp;63</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; @Override</pre></td></tr>
<tr> <td class="numLine">&nbsp;64</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> <span class="keyword">boolean</span> passes(Evidence evidence) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;65</td> <td class="nbHitsCovered"><a title="Line 65: Conditional coverage 100% (2/2).">&nbsp;122</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 65: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> evidence.getConfidence() == Confidence.HIGH;</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;65</td> <td class="nbHitsCovered"><a title="Line 65: Conditional coverage 100% (2/2).">&nbsp;60</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 65: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> evidence.getConfidence() == Confidence.HIGH;</a></pre></td></tr>
<tr> <td class="numLine">&nbsp;66</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;67</td> <td class="nbHits">&nbsp;</td>
@@ -157,12 +157,12 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Used to iterate over medium confidence evidence contained in the collection.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;70</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;71</td> <td class="nbHitsCovered">&nbsp;74</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Filter&lt;Evidence&gt; MEDIUM_CONFIDENCE = <span class="keyword">new</span> Filter&lt;Evidence&gt;() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;71</td> <td class="nbHitsCovered">&nbsp;37</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Filter&lt;Evidence&gt; MEDIUM_CONFIDENCE = <span class="keyword">new</span> Filter&lt;Evidence&gt;() {</pre></td></tr>
<tr> <td class="numLine">&nbsp;72</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; @Override</pre></td></tr>
<tr> <td class="numLine">&nbsp;73</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> <span class="keyword">boolean</span> passes(Evidence evidence) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;74</td> <td class="nbHitsCovered"><a title="Line 74: Conditional coverage 100% (2/2).">&nbsp;72</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 74: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> evidence.getConfidence() == Confidence.MEDIUM;</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;74</td> <td class="nbHitsCovered"><a title="Line 74: Conditional coverage 100% (2/2).">&nbsp;36</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 74: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> evidence.getConfidence() == Confidence.MEDIUM;</a></pre></td></tr>
<tr> <td class="numLine">&nbsp;75</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;76</td> <td class="nbHits">&nbsp;</td>
@@ -173,12 +173,12 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Used to iterate over low confidence evidence contained in the collection.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;79</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;80</td> <td class="nbHitsCovered">&nbsp;80</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Filter&lt;Evidence&gt; LOW_CONFIDENCE = <span class="keyword">new</span> Filter&lt;Evidence&gt;() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;80</td> <td class="nbHitsCovered">&nbsp;40</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Filter&lt;Evidence&gt; LOW_CONFIDENCE = <span class="keyword">new</span> Filter&lt;Evidence&gt;() {</pre></td></tr>
<tr> <td class="numLine">&nbsp;81</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; @Override</pre></td></tr>
<tr> <td class="numLine">&nbsp;82</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> <span class="keyword">boolean</span> passes(Evidence evidence) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;83</td> <td class="nbHitsCovered"><a title="Line 83: Conditional coverage 100% (2/2).">&nbsp;78</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 83: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> evidence.getConfidence() == Confidence.LOW;</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;83</td> <td class="nbHitsCovered"><a title="Line 83: Conditional coverage 100% (2/2).">&nbsp;39</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 83: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> evidence.getConfidence() == Confidence.LOW;</a></pre></td></tr>
<tr> <td class="numLine">&nbsp;84</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;85</td> <td class="nbHits">&nbsp;</td>
@@ -189,12 +189,12 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Used to iterate over evidence that has was used (aka read) from the collection.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;88</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;89</td> <td class="nbHitsCovered">&nbsp;1246</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Filter&lt;Evidence&gt; EVIDENCE_USED = <span class="keyword">new</span> Filter&lt;Evidence&gt;() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;89</td> <td class="nbHitsCovered">&nbsp;650</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Filter&lt;Evidence&gt; EVIDENCE_USED = <span class="keyword">new</span> Filter&lt;Evidence&gt;() {</pre></td></tr>
<tr> <td class="numLine">&nbsp;90</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; @Override</pre></td></tr>
<tr> <td class="numLine">&nbsp;91</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> <span class="keyword">boolean</span> passes(Evidence evidence) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;92</td> <td class="nbHitsCovered">&nbsp;1244</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> evidence.isUsed();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;92</td> <td class="nbHitsCovered">&nbsp;649</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> evidence.isUsed();</pre></td></tr>
<tr> <td class="numLine">&nbsp;93</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;94</td> <td class="nbHits">&nbsp;</td>
@@ -215,15 +215,15 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;102</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> <span class="keyword">final</span> Iterable&lt;Evidence&gt; iterator(Confidence confidence) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;103</td> <td class="nbHitsCovered"><a title="Line 103: Conditional coverage 100% (2/2).">&nbsp;60</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 103: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (confidence == Confidence.HIGHEST) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;104</td> <td class="nbHitsCovered">&nbsp;10</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> EvidenceCollection.HIGHEST_CONFIDENCE.filter(<span class="keyword">this</span>.list);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;105</td> <td class="nbHitsCovered"><a title="Line 105: Conditional coverage 100% (2/2).">&nbsp;50</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 105: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (confidence == Confidence.HIGH) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;106</td> <td class="nbHitsCovered">&nbsp;24</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> EvidenceCollection.HIGH_CONFIDENCE.filter(<span class="keyword">this</span>.list);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;107</td> <td class="nbHitsCovered"><a title="Line 107: Conditional coverage 100% (2/2).">&nbsp;26</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 107: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (confidence == Confidence.MEDIUM) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;108</td> <td class="nbHitsCovered">&nbsp;12</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> EvidenceCollection.MEDIUM_CONFIDENCE.filter(<span class="keyword">this</span>.list);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;103</td> <td class="nbHitsCovered"><a title="Line 103: Conditional coverage 100% (2/2).">&nbsp;30</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 103: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (confidence == Confidence.HIGHEST) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;104</td> <td class="nbHitsCovered">&nbsp;5</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> EvidenceCollection.HIGHEST_CONFIDENCE.filter(<span class="keyword">this</span>.list);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;105</td> <td class="nbHitsCovered"><a title="Line 105: Conditional coverage 100% (2/2).">&nbsp;25</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 105: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (confidence == Confidence.HIGH) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;106</td> <td class="nbHitsCovered">&nbsp;12</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> EvidenceCollection.HIGH_CONFIDENCE.filter(<span class="keyword">this</span>.list);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;107</td> <td class="nbHitsCovered"><a title="Line 107: Conditional coverage 100% (2/2).">&nbsp;13</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 107: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (confidence == Confidence.MEDIUM) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;108</td> <td class="nbHitsCovered">&nbsp;6</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> EvidenceCollection.MEDIUM_CONFIDENCE.filter(<span class="keyword">this</span>.list);</pre></td></tr>
<tr> <td class="numLine">&nbsp;109</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; } <span class="keyword">else</span> {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;110</td> <td class="nbHitsCovered">&nbsp;14</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> EvidenceCollection.LOW_CONFIDENCE.filter(<span class="keyword">this</span>.list);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;110</td> <td class="nbHitsCovered">&nbsp;7</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> EvidenceCollection.LOW_CONFIDENCE.filter(<span class="keyword">this</span>.list);</pre></td></tr>
<tr> <td class="numLine">&nbsp;111</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;112</td> <td class="nbHits">&nbsp;</td>
@@ -252,10 +252,10 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Creates a new EvidenceCollection.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;124</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;125</td> <td class="nbHitsCovered">&nbsp;576</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> EvidenceCollection() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;126</td> <td class="nbHitsCovered">&nbsp;576</td> <td class="src"><pre class="src">&nbsp; list = <span class="keyword">new</span> TreeSet&lt;Evidence&gt;();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;127</td> <td class="nbHitsCovered">&nbsp;576</td> <td class="src"><pre class="src">&nbsp; weightedStrings = <span class="keyword">new</span> HashSet&lt;String&gt;();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;128</td> <td class="nbHitsCovered">&nbsp;576</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;125</td> <td class="nbHitsCovered">&nbsp;288</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> EvidenceCollection() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;126</td> <td class="nbHitsCovered">&nbsp;288</td> <td class="src"><pre class="src">&nbsp; list = <span class="keyword">new</span> TreeSet&lt;Evidence&gt;();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;127</td> <td class="nbHitsCovered">&nbsp;288</td> <td class="src"><pre class="src">&nbsp; weightedStrings = <span class="keyword">new</span> HashSet&lt;String&gt;();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;128</td> <td class="nbHitsCovered">&nbsp;288</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;129</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;130</td> <td class="nbHits">&nbsp;</td>
@@ -270,8 +270,8 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;135</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> <span class="keyword">void</span> addEvidence(Evidence e) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;136</td> <td class="nbHitsCovered">&nbsp;666</td> <td class="src"><pre class="src">&nbsp; list.add(e);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;137</td> <td class="nbHitsCovered">&nbsp;666</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;136</td> <td class="nbHitsCovered">&nbsp;330</td> <td class="src"><pre class="src">&nbsp; list.add(e);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;137</td> <td class="nbHitsCovered">&nbsp;330</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;138</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;139</td> <td class="nbHits">&nbsp;</td>
@@ -292,9 +292,9 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;147</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> <span class="keyword">void</span> addEvidence(String source, String name, String value, Confidence confidence) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;148</td> <td class="nbHitsCovered">&nbsp;652</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> Evidence e = <span class="keyword">new</span> Evidence(source, name, value, confidence);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;149</td> <td class="nbHitsCovered">&nbsp;652</td> <td class="src"><pre class="src">&nbsp; addEvidence(e);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;150</td> <td class="nbHitsCovered">&nbsp;652</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;148</td> <td class="nbHitsCovered">&nbsp;319</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> Evidence e = <span class="keyword">new</span> Evidence(source, name, value, confidence);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;149</td> <td class="nbHitsCovered">&nbsp;319</td> <td class="src"><pre class="src">&nbsp; addEvidence(e);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;150</td> <td class="nbHitsCovered">&nbsp;319</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;151</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;152</td> <td class="nbHits">&nbsp;</td>
@@ -321,8 +321,8 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;163</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> <span class="keyword">void</span> addWeighting(String str) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;164</td> <td class="nbHitsCovered">&nbsp;30</td> <td class="src"><pre class="src">&nbsp; weightedStrings.add(str);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;165</td> <td class="nbHitsCovered">&nbsp;30</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;164</td> <td class="nbHitsCovered">&nbsp;15</td> <td class="src"><pre class="src">&nbsp; weightedStrings.add(str);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;165</td> <td class="nbHitsCovered">&nbsp;15</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;166</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;167</td> <td class="nbHits">&nbsp;</td>
@@ -339,7 +339,7 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;173</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> Set&lt;String&gt; getWeighting() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;174</td> <td class="nbHitsCovered">&nbsp;46</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> weightedStrings;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;174</td> <td class="nbHitsCovered">&nbsp;23</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> weightedStrings;</pre></td></tr>
<tr> <td class="numLine">&nbsp;175</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;176</td> <td class="nbHits">&nbsp;</td>
@@ -356,7 +356,7 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;182</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> Set&lt;Evidence&gt; getEvidence() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;183</td> <td class="nbHitsCovered">&nbsp;38</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> list;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;183</td> <td class="nbHitsCovered">&nbsp;44</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> list;</pre></td></tr>
<tr> <td class="numLine">&nbsp;184</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;185</td> <td class="nbHits">&nbsp;</td>
@@ -375,18 +375,18 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;192</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> Set&lt;Evidence&gt; getEvidence(String source) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;193</td> <td class="nbHitsUncovered"><a title="Line 193: Conditional coverage 50% (1/2).">&nbsp;2</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 193: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (source == <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;193</td> <td class="nbHitsUncovered"><a title="Line 193: Conditional coverage 50% (1/2).">&nbsp;1</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 193: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (source == <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;194</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; <span class="keyword">return</span> <span class="keyword">null</span>;</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;195</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;196</td> <td class="nbHitsCovered">&nbsp;2</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> Set&lt;Evidence&gt; ret = <span class="keyword">new</span> HashSet&lt;Evidence&gt;();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;197</td> <td class="nbHitsCovered"><a title="Line 197: Conditional coverage 100% (2/2).">&nbsp;2</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 197: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence e : list) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;198</td> <td class="nbHitsCovered"><a title="Line 198: Conditional coverage 100% (2/2).">&nbsp;10</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 198: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (source.equals(e.getSource())) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;199</td> <td class="nbHitsCovered">&nbsp;2</td> <td class="src"><pre class="src">&nbsp; ret.add(e);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;196</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> Set&lt;Evidence&gt; ret = <span class="keyword">new</span> HashSet&lt;Evidence&gt;();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;197</td> <td class="nbHitsCovered"><a title="Line 197: Conditional coverage 100% (2/2).">&nbsp;1</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 197: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence e : list) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;198</td> <td class="nbHitsCovered"><a title="Line 198: Conditional coverage 100% (2/2).">&nbsp;5</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 198: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (source.equals(e.getSource())) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;199</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; ret.add(e);</pre></td></tr>
<tr> <td class="numLine">&nbsp;200</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;201</td> <td class="nbHitsCovered">&nbsp;10</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;202</td> <td class="nbHitsCovered">&nbsp;2</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> ret;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;201</td> <td class="nbHitsCovered">&nbsp;5</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;202</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> ret;</pre></td></tr>
<tr> <td class="numLine">&nbsp;203</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;204</td> <td class="nbHits">&nbsp;</td>
@@ -407,18 +407,18 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;212</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> Set&lt;Evidence&gt; getEvidence(String source, String name) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;213</td> <td class="nbHitsUncovered"><a title="Line 213: Conditional coverage 50% (2/4) [each condition: 50%, 50%].">&nbsp;16</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 213: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">if</span> (source == <span class="keyword">null</span> || name == <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;213</td> <td class="nbHitsUncovered"><a title="Line 213: Conditional coverage 50% (2/4) [each condition: 50%, 50%].">&nbsp;8</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 213: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">if</span> (source == <span class="keyword">null</span> || name == <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;214</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; <span class="keyword">return</span> <span class="keyword">null</span>;</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;215</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;216</td> <td class="nbHitsCovered">&nbsp;16</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> Set&lt;Evidence&gt; ret = <span class="keyword">new</span> HashSet&lt;Evidence&gt;();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;217</td> <td class="nbHitsCovered"><a title="Line 217: Conditional coverage 100% (2/2).">&nbsp;16</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 217: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence e : list) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;218</td> <td class="nbHitsUncovered"><a title="Line 218: Conditional coverage 75% (3/4) [each condition: 50%, 100%].">&nbsp;22</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 218: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> <span class="keyword">if</span> (source.equals(e.getSource()) &amp;&amp; name.equals(e.getName())) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;219</td> <td class="nbHitsCovered">&nbsp;10</td> <td class="src"><pre class="src">&nbsp; ret.add(e);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;216</td> <td class="nbHitsCovered">&nbsp;8</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> Set&lt;Evidence&gt; ret = <span class="keyword">new</span> HashSet&lt;Evidence&gt;();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;217</td> <td class="nbHitsCovered"><a title="Line 217: Conditional coverage 100% (2/2).">&nbsp;8</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 217: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence e : list) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;218</td> <td class="nbHitsUncovered"><a title="Line 218: Conditional coverage 75% (3/4) [each condition: 50%, 100%].">&nbsp;11</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 218: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> <span class="keyword">if</span> (source.equals(e.getSource()) &amp;&amp; name.equals(e.getName())) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;219</td> <td class="nbHitsCovered">&nbsp;5</td> <td class="src"><pre class="src">&nbsp; ret.add(e);</pre></td></tr>
<tr> <td class="numLine">&nbsp;220</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;221</td> <td class="nbHitsCovered">&nbsp;22</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;222</td> <td class="nbHitsCovered">&nbsp;16</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> ret;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;221</td> <td class="nbHitsCovered">&nbsp;11</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;222</td> <td class="nbHitsCovered">&nbsp;8</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> ret;</pre></td></tr>
<tr> <td class="numLine">&nbsp;223</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;224</td> <td class="nbHits">&nbsp;</td>
@@ -437,7 +437,7 @@
<td class="src"><pre class="src">&nbsp; @Override</pre></td></tr>
<tr> <td class="numLine">&nbsp;231</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> Iterator&lt;Evidence&gt; iterator() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;232</td> <td class="nbHitsCovered">&nbsp;214</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> list.iterator();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;232</td> <td class="nbHitsCovered">&nbsp;105</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> list.iterator();</pre></td></tr>
<tr> <td class="numLine">&nbsp;233</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;234</td> <td class="nbHits">&nbsp;</td>
@@ -456,23 +456,23 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;241</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> <span class="keyword">boolean</span> containsUsedString(String text) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;242</td> <td class="nbHitsUncovered"><a title="Line 242: Conditional coverage 50% (1/2).">&nbsp;184</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 242: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (text == <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;242</td> <td class="nbHitsUncovered"><a title="Line 242: Conditional coverage 50% (1/2).">&nbsp;90</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 242: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (text == <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;243</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;244</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;245</td> <td class="nbHitsCovered">&nbsp;184</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> String textToTest = text.toLowerCase();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;245</td> <td class="nbHitsCovered">&nbsp;90</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> String textToTest = text.toLowerCase();</pre></td></tr>
<tr> <td class="numLine">&nbsp;246</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;247</td> <td class="nbHitsCovered"><a title="Line 247: Conditional coverage 100% (2/2).">&nbsp;184</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 247: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence e : EvidenceCollection.EVIDENCE_USED.filter(<span class="keyword">this</span>)) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;247</td> <td class="nbHitsCovered"><a title="Line 247: Conditional coverage 100% (2/2).">&nbsp;90</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 247: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence e : EvidenceCollection.EVIDENCE_USED.filter(<span class="keyword">this</span>)) {</a></pre></td></tr>
<tr> <td class="numLine">&nbsp;248</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//TODO consider changing the regex to only compare alpha-numeric (i.e. strip everything else)</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;249</td> <td class="nbHitsCovered">&nbsp;612</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> String value = urlCorrection(e.getValue().toLowerCase()).replaceAll(<span class="string">"[\\s_-]"</span>, <span class="string">""</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;250</td> <td class="nbHitsCovered"><a title="Line 250: Conditional coverage 100% (2/2).">&nbsp;612</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 250: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (value.contains(textToTest)) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;251</td> <td class="nbHitsCovered">&nbsp;48</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;249</td> <td class="nbHitsCovered">&nbsp;299</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> String value = urlCorrection(e.getValue().toLowerCase()).replaceAll(<span class="string">"[\\s_-]"</span>, <span class="string">""</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;250</td> <td class="nbHitsCovered"><a title="Line 250: Conditional coverage 100% (2/2).">&nbsp;299</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 250: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (value.contains(textToTest)) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;251</td> <td class="nbHitsCovered">&nbsp;27</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr>
<tr> <td class="numLine">&nbsp;252</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;253</td> <td class="nbHitsCovered">&nbsp;564</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;254</td> <td class="nbHitsCovered">&nbsp;136</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;253</td> <td class="nbHitsCovered">&nbsp;272</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;254</td> <td class="nbHitsCovered">&nbsp;63</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr>
<tr> <td class="numLine">&nbsp;255</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;256</td> <td class="nbHits">&nbsp;</td>
@@ -523,13 +523,13 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;283</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> <span class="keyword">boolean</span> contains(Confidence confidence) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;284</td> <td class="nbHitsCovered"><a title="Line 284: Conditional coverage 100% (2/2).">&nbsp;60</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 284: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence e : list) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;285</td> <td class="nbHitsCovered"><a title="Line 285: Conditional coverage 100% (2/2).">&nbsp;170</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 285: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (e.getConfidence().equals(confidence)) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;286</td> <td class="nbHitsCovered">&nbsp;36</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;284</td> <td class="nbHitsCovered"><a title="Line 284: Conditional coverage 100% (2/2).">&nbsp;30</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 284: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence e : list) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;285</td> <td class="nbHitsCovered"><a title="Line 285: Conditional coverage 100% (2/2).">&nbsp;84</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 285: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (e.getConfidence().equals(confidence)) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;286</td> <td class="nbHitsCovered">&nbsp;18</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr>
<tr> <td class="numLine">&nbsp;287</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;288</td> <td class="nbHitsCovered">&nbsp;134</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;289</td> <td class="nbHitsCovered">&nbsp;24</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;288</td> <td class="nbHitsCovered">&nbsp;66</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;289</td> <td class="nbHitsCovered">&nbsp;12</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr>
<tr> <td class="numLine">&nbsp;290</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;291</td> <td class="nbHits">&nbsp;</td>
@@ -548,17 +548,17 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;298</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> <span class="keyword">static</span> EvidenceCollection mergeUsed(EvidenceCollection... ec) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;299</td> <td class="nbHitsCovered">&nbsp;2</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> EvidenceCollection ret = <span class="keyword">new</span> EvidenceCollection();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;300</td> <td class="nbHitsCovered"><a title="Line 300: Conditional coverage 100% (2/2).">&nbsp;8</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 300: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (EvidenceCollection col : ec) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;301</td> <td class="nbHitsCovered"><a title="Line 301: Conditional coverage 100% (2/2).">&nbsp;6</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 301: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence e : col.list) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;302</td> <td class="nbHitsCovered"><a title="Line 302: Conditional coverage 100% (2/2).">&nbsp;4</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 302: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (e.isUsed()) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;303</td> <td class="nbHitsCovered">&nbsp;2</td> <td class="src"><pre class="src">&nbsp; ret.addEvidence(e);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;299</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> EvidenceCollection ret = <span class="keyword">new</span> EvidenceCollection();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;300</td> <td class="nbHitsCovered"><a title="Line 300: Conditional coverage 100% (2/2).">&nbsp;4</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 300: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (EvidenceCollection col : ec) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;301</td> <td class="nbHitsCovered"><a title="Line 301: Conditional coverage 100% (2/2).">&nbsp;3</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 301: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence e : col.list) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;302</td> <td class="nbHitsCovered"><a title="Line 302: Conditional coverage 100% (2/2).">&nbsp;2</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 302: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (e.isUsed()) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;303</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; ret.addEvidence(e);</pre></td></tr>
<tr> <td class="numLine">&nbsp;304</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;305</td> <td class="nbHitsCovered">&nbsp;4</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;305</td> <td class="nbHitsCovered">&nbsp;2</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;306</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;307</td> <td class="nbHitsCovered">&nbsp;2</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> ret;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;307</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> ret;</pre></td></tr>
<tr> <td class="numLine">&nbsp;308</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;309</td> <td class="nbHits">&nbsp;</td>
@@ -577,13 +577,13 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;316</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> <span class="keyword">static</span> EvidenceCollection merge(EvidenceCollection... ec) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;317</td> <td class="nbHitsCovered">&nbsp;22</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> EvidenceCollection ret = <span class="keyword">new</span> EvidenceCollection();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;318</td> <td class="nbHitsCovered"><a title="Line 318: Conditional coverage 100% (2/2).">&nbsp;88</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 318: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (EvidenceCollection col : ec) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;319</td> <td class="nbHitsCovered">&nbsp;66</td> <td class="src"><pre class="src">&nbsp; ret.list.addAll(col.list);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;320</td> <td class="nbHitsCovered">&nbsp;66</td> <td class="src"><pre class="src">&nbsp; ret.weightedStrings.addAll(col.weightedStrings);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;317</td> <td class="nbHitsCovered">&nbsp;11</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> EvidenceCollection ret = <span class="keyword">new</span> EvidenceCollection();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;318</td> <td class="nbHitsCovered"><a title="Line 318: Conditional coverage 100% (2/2).">&nbsp;44</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 318: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (EvidenceCollection col : ec) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;319</td> <td class="nbHitsCovered">&nbsp;33</td> <td class="src"><pre class="src">&nbsp; ret.list.addAll(col.list);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;320</td> <td class="nbHitsCovered">&nbsp;33</td> <td class="src"><pre class="src">&nbsp; ret.weightedStrings.addAll(col.weightedStrings);</pre></td></tr>
<tr> <td class="numLine">&nbsp;321</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;322</td> <td class="nbHitsCovered">&nbsp;22</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> ret;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;322</td> <td class="nbHitsCovered">&nbsp;11</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> ret;</pre></td></tr>
<tr> <td class="numLine">&nbsp;323</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;324</td> <td class="nbHits">&nbsp;</td>
@@ -634,11 +634,11 @@
<td class="src"><pre class="src">&nbsp; @Override</pre></td></tr>
<tr> <td class="numLine">&nbsp;351</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> String toString() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;352</td> <td class="nbHitsCovered">&nbsp;86</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> StringBuilder sb = <span class="keyword">new</span> StringBuilder();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;353</td> <td class="nbHitsCovered"><a title="Line 353: Conditional coverage 100% (2/2).">&nbsp;86</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 353: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence e : <span class="keyword">this</span>.list) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;354</td> <td class="nbHitsCovered">&nbsp;170</td> <td class="src"><pre class="src">&nbsp; sb.append(e.getValue()).append(<span class="string">' '</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;355</td> <td class="nbHitsCovered">&nbsp;170</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;356</td> <td class="nbHitsCovered">&nbsp;86</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> sb.toString();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;352</td> <td class="nbHitsCovered">&nbsp;43</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> StringBuilder sb = <span class="keyword">new</span> StringBuilder();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;353</td> <td class="nbHitsCovered"><a title="Line 353: Conditional coverage 100% (2/2).">&nbsp;43</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 353: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence e : <span class="keyword">this</span>.list) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;354</td> <td class="nbHitsCovered">&nbsp;85</td> <td class="src"><pre class="src">&nbsp; sb.append(e.getValue()).append(<span class="string">' '</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;355</td> <td class="nbHitsCovered">&nbsp;85</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;356</td> <td class="nbHitsCovered">&nbsp;43</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> sb.toString();</pre></td></tr>
<tr> <td class="numLine">&nbsp;357</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;358</td> <td class="nbHits">&nbsp;</td>
@@ -655,7 +655,7 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;364</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> <span class="keyword">int</span> size() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;365</td> <td class="nbHitsCovered">&nbsp;38</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> list.size();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;365</td> <td class="nbHitsCovered">&nbsp;19</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> list.size();</pre></td></tr>
<tr> <td class="numLine">&nbsp;366</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;367</td> <td class="nbHits">&nbsp;</td>
@@ -698,22 +698,22 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;386</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> String urlCorrection(String value) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;387</td> <td class="nbHitsUncovered"><a title="Line 387: Conditional coverage 75% (3/4) [each condition: 50%, 100%].">&nbsp;612</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 387: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> <span class="keyword">if</span> (value == <span class="keyword">null</span> || !UrlStringUtils.containsUrl(value)) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;388</td> <td class="nbHitsCovered">&nbsp;574</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> value;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;387</td> <td class="nbHitsUncovered"><a title="Line 387: Conditional coverage 75% (3/4) [each condition: 50%, 100%].">&nbsp;299</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 387: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> <span class="keyword">if</span> (value == <span class="keyword">null</span> || !UrlStringUtils.containsUrl(value)) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;388</td> <td class="nbHitsCovered">&nbsp;280</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> value;</pre></td></tr>
<tr> <td class="numLine">&nbsp;389</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;390</td> <td class="nbHitsCovered">&nbsp;38</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> StringBuilder sb = <span class="keyword">new</span> StringBuilder(value.length());</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;391</td> <td class="nbHitsCovered">&nbsp;38</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> String[] parts = value.split(<span class="string">"\\s"</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;392</td> <td class="nbHitsCovered"><a title="Line 392: Conditional coverage 100% (2/2).">&nbsp;76</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 392: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (String part : parts) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;393</td> <td class="nbHitsUncovered"><a title="Line 393: Conditional coverage 50% (1/2).">&nbsp;38</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 393: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (UrlStringUtils.isUrl(part)) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;390</td> <td class="nbHitsCovered">&nbsp;19</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> StringBuilder sb = <span class="keyword">new</span> StringBuilder(value.length());</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;391</td> <td class="nbHitsCovered">&nbsp;19</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> String[] parts = value.split(<span class="string">"\\s"</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;392</td> <td class="nbHitsCovered"><a title="Line 392: Conditional coverage 100% (2/2).">&nbsp;38</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 392: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (String part : parts) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;393</td> <td class="nbHitsUncovered"><a title="Line 393: Conditional coverage 50% (1/2).">&nbsp;19</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 393: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (UrlStringUtils.isUrl(part)) {</a></span></pre></td></tr>
<tr> <td class="numLine">&nbsp;394</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">try</span> {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;395</td> <td class="nbHitsCovered">&nbsp;38</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> List&lt;String&gt; data = UrlStringUtils.extractImportantUrlData(part);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;396</td> <td class="nbHitsCovered">&nbsp;38</td> <td class="src"><pre class="src">&nbsp; sb.append(<span class="string">' '</span>).append(StringUtils.join(data, <span class="string">' '</span>));</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;395</td> <td class="nbHitsCovered">&nbsp;19</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> List&lt;String&gt; data = UrlStringUtils.extractImportantUrlData(part);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;396</td> <td class="nbHitsCovered">&nbsp;19</td> <td class="src"><pre class="src">&nbsp; sb.append(<span class="string">' '</span>).append(StringUtils.join(data, <span class="string">' '</span>));</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;397</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; } <span class="keyword">catch</span> (MalformedURLException ex) {</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;398</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; LOGGER.debug(<span class="string">"error parsing {}"</span>, part, ex);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;399</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; sb.append(<span class="string">' '</span>).append(part);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;400</td> <td class="nbHitsCovered">&nbsp;38</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;400</td> <td class="nbHitsCovered">&nbsp;19</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;401</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; } <span class="keyword">else</span> {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;402</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; sb.append(<span class="string">' '</span>).append(part);</span></pre></td></tr>
@@ -721,13 +721,13 @@
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;404</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;405</td> <td class="nbHitsCovered">&nbsp;38</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> sb.toString().trim();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;405</td> <td class="nbHitsCovered">&nbsp;19</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> sb.toString().trim();</pre></td></tr>
<tr> <td class="numLine">&nbsp;406</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;407</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;}</pre></td></tr>
</table>
<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 2.1.1 on 6/16/16 6:46 AM.</div>
<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 2.1.1 on 7/31/16 7:42 AM.</div>
</body>
</html>