mirror of
https://github.com/ysoftdevs/DependencyCheck.git
synced 2026-04-30 12:14:30 +02:00
v1.3.4 documentation
This commit is contained in:
@@ -12,7 +12,7 @@
|
||||
<div class="separator"> </div>
|
||||
<table class="report">
|
||||
<thead><tr> <td class="heading">Classes in this File</td> <td class="heading"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">Line Coverage</a></td> <td class="heading"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">Branch Coverage</a></td> <td class="heading"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">Complexity</a></td></tr></thead>
|
||||
<tr><td><a href="org.owasp.dependencycheck.analyzer.JarAnalyzer.html">JarAnalyzer</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">63%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:63px"><span class="text">300/474</span></div></div></td></tr></table></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">49%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:49px"><span class="text">164/330</span></div></div></td></tr></table></td><td class="value"><span class="hidden">7.096774193548387;</span>7.097</td></tr>
|
||||
<tr><td><a href="org.owasp.dependencycheck.analyzer.JarAnalyzer.html">JarAnalyzer</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">63%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:63px"><span class="text">300/471</span></div></div></td></tr></table></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">49%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:49px"><span class="text">164/330</span></div></div></td></tr></table></td><td class="value"><span class="hidden">7.096774193548387;</span>7.097</td></tr>
|
||||
<tr><td><a href="org.owasp.dependencycheck.analyzer.JarAnalyzer.html">JarAnalyzer$ClassNameInformation</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">80%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:80px"><span class="text">17/21</span></div></div></td></tr></table></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">80%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:80px"><span class="text">8/10</span></div></div></td></tr></table></td><td class="value"><span class="hidden">7.096774193548387;</span>7.097</td></tr>
|
||||
|
||||
</table>
|
||||
@@ -587,7 +587,7 @@
|
||||
<tr> <td class="numLine"> 321</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 322</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> } <span class="keyword">catch</span> (AnalysisException ex) {</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 323</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> LOGGER.warn(<span class="string">"An error occured while analyzing '{}'."</span>, dependency.getActualFilePath());</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 323</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> LOGGER.warn(<span class="string">"An error occurred while analyzing '{}'."</span>, dependency.getActualFilePath());</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 324</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> LOGGER.trace(<span class="string">""</span>, ex);</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 325</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 326</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
@@ -1333,558 +1333,555 @@
|
||||
<tr> <td class="numLine"> 836</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 837</td> <td class="nbHitsUncovered"><a title="Line 837: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 837: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (pos > 0) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 838</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">final</span> StringBuilder sb = <span class="keyword">new</span> StringBuilder(pos + 3);</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 839</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> sb.append(desc.substring(0, pos));</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 840</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> sb.append(<span class="string">"..."</span>);</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 841</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> desc = sb.toString();</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 842</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 838</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> desc = desc.substring(0, pos) + <span class="string">"..."</span>;</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 839</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 843</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> dependency.getProductEvidence().addEvidence(source, key, desc, Confidence.LOW);</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 844</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> dependency.getVendorEvidence().addEvidence(source, key, desc, Confidence.LOW);</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 845</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> } <span class="keyword">else</span> {</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 846</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src"> dependency.getProductEvidence().addEvidence(source, key, desc, Confidence.MEDIUM);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 847</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src"> dependency.getVendorEvidence().addEvidence(source, key, desc, Confidence.MEDIUM);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 840</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> dependency.getProductEvidence().addEvidence(source, key, desc, Confidence.LOW);</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 841</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> dependency.getVendorEvidence().addEvidence(source, key, desc, Confidence.LOW);</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 842</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> } <span class="keyword">else</span> {</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 843</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src"> dependency.getProductEvidence().addEvidence(source, key, desc, Confidence.MEDIUM);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 844</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src"> dependency.getVendorEvidence().addEvidence(source, key, desc, Confidence.MEDIUM);</pre></td></tr>
|
||||
<tr> <td class="numLine"> 845</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 846</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src"> <span class="keyword">return</span> desc;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 847</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 848</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 849</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src"> <span class="keyword">return</span> desc;</pre></td></tr>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 849</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 850</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 851</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 852</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 853</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * Adds a license to the given dependency.</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 854</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 851</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 855</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 852</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @param d a dependency</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 856</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 853</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @param license the license</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 857</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 854</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 858</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 855</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">void</span> addLicense(Dependency d, String license) {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 859</td> <td class="nbHitsUncovered"><a title="Line 859: Conditional coverage 50% (1/2)."> 2</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 859: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (d.getLicense() == <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 860</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> d.setLicense(license);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 861</td> <td class="nbHitsUncovered"><a title="Line 861: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 861: Conditional coverage 0% (0/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (!d.getLicense().contains(license)) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 862</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> d.setLicense(d.getLicense() + NEWLINE + license);</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 856</td> <td class="nbHitsUncovered"><a title="Line 856: Conditional coverage 50% (1/2)."> 2</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 856: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (d.getLicense() == <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 857</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> d.setLicense(license);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 858</td> <td class="nbHitsUncovered"><a title="Line 858: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 858: Conditional coverage 0% (0/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (!d.getLicense().contains(license)) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 859</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> d.setLicense(d.getLicense() + NEWLINE + license);</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 860</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 861</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 862</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 863</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 864</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 865</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 866</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 867</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 864</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * The parent directory for the individual directories per archive.</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 865</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 866</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src"> <span class="keyword">private</span> File tempFileLocation = <span class="keyword">null</span>;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 867</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 868</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 869</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src"> <span class="keyword">private</span> File tempFileLocation = <span class="keyword">null</span>;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 870</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 871</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 872</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 869</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * Initializes the JarAnalyzer.</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 873</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 870</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 874</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 871</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @throws Exception is thrown if there is an exception creating a temporary directory</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 875</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 872</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 876</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 873</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> @Override</pre></td></tr>
|
||||
<tr> <td class="numLine"> 877</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 874</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">void</span> initializeFileTypeAnalyzer() <span class="keyword">throws</span> Exception {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 878</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> <span class="keyword">final</span> File baseDir = Settings.getTempDirectory();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 879</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> tempFileLocation = File.createTempFile(<span class="string">"check"</span>, <span class="string">"tmp"</span>, baseDir);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 880</td> <td class="nbHitsUncovered"><a title="Line 880: Conditional coverage 50% (1/2)."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 880: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!tempFileLocation.delete()) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 881</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">final</span> String msg = String.format(<span class="string">"Unable to delete temporary file '%s'."</span>, tempFileLocation.getAbsolutePath());</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 882</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">throw</span> <span class="keyword">new</span> AnalysisException(msg);</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 883</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 875</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> <span class="keyword">final</span> File baseDir = Settings.getTempDirectory();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 876</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> tempFileLocation = File.createTempFile(<span class="string">"check"</span>, <span class="string">"tmp"</span>, baseDir);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 877</td> <td class="nbHitsUncovered"><a title="Line 877: Conditional coverage 50% (1/2)."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 877: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!tempFileLocation.delete()) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 878</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">final</span> String msg = String.format(<span class="string">"Unable to delete temporary file '%s'."</span>, tempFileLocation.getAbsolutePath());</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 879</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">throw</span> <span class="keyword">new</span> AnalysisException(msg);</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 880</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 884</td> <td class="nbHitsUncovered"><a title="Line 884: Conditional coverage 50% (1/2)."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 884: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!tempFileLocation.mkdirs()) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 885</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">final</span> String msg = String.format(<span class="string">"Unable to create directory '%s'."</span>, tempFileLocation.getAbsolutePath());</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 886</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">throw</span> <span class="keyword">new</span> AnalysisException(msg);</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 881</td> <td class="nbHitsUncovered"><a title="Line 881: Conditional coverage 50% (1/2)."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 881: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!tempFileLocation.mkdirs()) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 882</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">final</span> String msg = String.format(<span class="string">"Unable to create directory '%s'."</span>, tempFileLocation.getAbsolutePath());</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 883</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">throw</span> <span class="keyword">new</span> AnalysisException(msg);</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 884</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 885</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 886</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 887</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 888</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 889</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 890</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 891</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 888</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * Deletes any files extracted from the JAR during analysis.</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 892</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 889</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 893</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 890</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> @Override</pre></td></tr>
|
||||
<tr> <td class="numLine"> 894</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 891</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">void</span> close() {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 895</td> <td class="nbHitsUncovered"><a title="Line 895: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 895: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">if</span> (tempFileLocation != <span class="keyword">null</span> && tempFileLocation.exists()) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 896</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> LOGGER.debug(<span class="string">"Attempting to delete temporary files"</span>);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 897</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> <span class="keyword">final</span> <span class="keyword">boolean</span> success = FileUtils.delete(tempFileLocation);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 898</td> <td class="nbHitsUncovered"><a title="Line 898: Conditional coverage 50% (1/2)."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 898: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!success) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 899</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> LOGGER.warn(<span class="string">"Failed to delete some temporary files, see the log for more details"</span>);</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 892</td> <td class="nbHitsUncovered"><a title="Line 892: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 892: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">if</span> (tempFileLocation != <span class="keyword">null</span> && tempFileLocation.exists()) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 893</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> LOGGER.debug(<span class="string">"Attempting to delete temporary files"</span>);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 894</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> <span class="keyword">final</span> <span class="keyword">boolean</span> success = FileUtils.delete(tempFileLocation);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 895</td> <td class="nbHitsUncovered"><a title="Line 895: Conditional coverage 50% (1/2)."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 895: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!success) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 896</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> LOGGER.warn(<span class="string">"Failed to delete some temporary files, see the log for more details"</span>);</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 897</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 898</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 899</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 900</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 901</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 902</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 903</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 904</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 905</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 902</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * Determines if the key value pair from the manifest is for an "import" type entry for package names.</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 906</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 903</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 907</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 904</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @param key the key from the manifest</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 908</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 905</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @param value the value from the manifest</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 909</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 906</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @return true or false depending on if it is believed the entry is an "import" entry</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 910</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 907</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 911</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 908</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">boolean</span> isImportPackage(String key, String value) {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 912</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Pattern packageRx = Pattern.compile(<span class="string">"^([a-zA-Z0-9_#\\$\\*\\.]+\\s*[,;]\\s*)+([a-zA-Z0-9_#\\$\\*\\.]+\\s*)?$"</span>);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 913</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src"> <span class="keyword">final</span> <span class="keyword">boolean</span> matches = packageRx.matcher(value).matches();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 914</td> <td class="nbHitsUncovered"><a title="Line 914: Conditional coverage 12% (1/8) [each condition: 50%, 0%, 0%, 0%]."> 14</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 914: Conditional coverage 12% (1/8) [each condition: 50%, 0%, 0%, 0%]."> <span class="keyword">return</span> matches && (key.contains(<span class="string">"import"</span>) || key.contains(<span class="string">"include"</span>) || value.length() > 10);</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 909</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Pattern packageRx = Pattern.compile(<span class="string">"^([a-zA-Z0-9_#\\$\\*\\.]+\\s*[,;]\\s*)+([a-zA-Z0-9_#\\$\\*\\.]+\\s*)?$"</span>);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 910</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src"> <span class="keyword">final</span> <span class="keyword">boolean</span> matches = packageRx.matcher(value).matches();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 911</td> <td class="nbHitsUncovered"><a title="Line 911: Conditional coverage 12% (1/8) [each condition: 50%, 0%, 0%, 0%]."> 14</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 911: Conditional coverage 12% (1/8) [each condition: 50%, 0%, 0%, 0%]."> <span class="keyword">return</span> matches && (key.contains(<span class="string">"import"</span>) || key.contains(<span class="string">"include"</span>) || value.length() > 10);</a></span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 912</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 913</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 914</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 915</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 916</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 917</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 918</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * Cycles through an enumeration of JarEntries, contained within the dependency, and returns a list of the class names. This</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 919</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 916</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * does not include core Java package names (i.e. java.* or javax.*).</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 920</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 917</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 921</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 918</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @param dependency the dependency being analyzed</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 922</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 919</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @return an list of fully qualified class names</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 923</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 920</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 924</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 921</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="keyword">private</span> List<ClassNameInformation> collectClassNames(Dependency dependency) {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 925</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> <span class="keyword">final</span> List<ClassNameInformation> classNames = <span class="keyword">new</span> ArrayList<ClassNameInformation>();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 926</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> JarFile jar = <span class="keyword">null</span>;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 927</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 922</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> <span class="keyword">final</span> List<ClassNameInformation> classNames = <span class="keyword">new</span> ArrayList<ClassNameInformation>();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 923</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> JarFile jar = <span class="keyword">null</span>;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 924</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="keyword">try</span> {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 928</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> jar = <span class="keyword">new</span> JarFile(dependency.getActualFilePath());</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 929</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Enumeration<JarEntry> entries = jar.entries();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 930</td> <td class="nbHitsCovered"><a title="Line 930: Conditional coverage 100% (2/2)."> 1848</a></td> <td class="src"><pre class="src"> <a title="Line 930: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (entries.hasMoreElements()) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 931</td> <td class="nbHitsCovered"> 1843</td> <td class="src"><pre class="src"> <span class="keyword">final</span> JarEntry entry = entries.nextElement();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 932</td> <td class="nbHitsCovered"> 1843</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String name = entry.getName().toLowerCase();</pre></td></tr>
|
||||
<tr> <td class="numLine"> 933</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 925</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> jar = <span class="keyword">new</span> JarFile(dependency.getActualFilePath());</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 926</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Enumeration<JarEntry> entries = jar.entries();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 927</td> <td class="nbHitsCovered"><a title="Line 927: Conditional coverage 100% (2/2)."> 1848</a></td> <td class="src"><pre class="src"> <a title="Line 927: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (entries.hasMoreElements()) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 928</td> <td class="nbHitsCovered"> 1843</td> <td class="src"><pre class="src"> <span class="keyword">final</span> JarEntry entry = entries.nextElement();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 929</td> <td class="nbHitsCovered"> 1843</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String name = entry.getName().toLowerCase();</pre></td></tr>
|
||||
<tr> <td class="numLine"> 930</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">//no longer stripping "|com\\.sun" - there are some com.sun jar files with CVEs.</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 934</td> <td class="nbHitsUncovered"><a title="Line 934: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 1843</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 934: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (name.endsWith(<span class="string">".class"</span>) && !name.matches(<span class="string">"^javax?\\..*$"</span>)) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 935</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> <span class="keyword">final</span> ClassNameInformation className = <span class="keyword">new</span> ClassNameInformation(name.substring(0, name.length() - 6));</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 936</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> classNames.add(className);</pre></td></tr>
|
||||
<tr> <td class="numLine"> 937</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 931</td> <td class="nbHitsUncovered"><a title="Line 931: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 1843</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 931: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (name.endsWith(<span class="string">".class"</span>) && !name.matches(<span class="string">"^javax?\\..*$"</span>)) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 932</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> <span class="keyword">final</span> ClassNameInformation className = <span class="keyword">new</span> ClassNameInformation(name.substring(0, name.length() - 6));</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 933</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> classNames.add(className);</pre></td></tr>
|
||||
<tr> <td class="numLine"> 934</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 938</td> <td class="nbHitsCovered"> 1843</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 939</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> } <span class="keyword">catch</span> (IOException ex) {</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 940</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> LOGGER.warn(<span class="string">"Unable to open jar file '{}'."</span>, dependency.getFileName());</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 941</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> LOGGER.debug(<span class="string">""</span>, ex);</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 942</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 935</td> <td class="nbHitsCovered"> 1843</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 936</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> } <span class="keyword">catch</span> (IOException ex) {</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 937</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> LOGGER.warn(<span class="string">"Unable to open jar file '{}'."</span>, dependency.getFileName());</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 938</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> LOGGER.debug(<span class="string">""</span>, ex);</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 939</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> } <span class="keyword">finally</span> {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 943</td> <td class="nbHitsUncovered"><a title="Line 943: Conditional coverage 50% (1/2)."> 5</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 943: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (jar != <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 944</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 940</td> <td class="nbHitsUncovered"><a title="Line 940: Conditional coverage 50% (1/2)."> 5</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 940: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (jar != <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 941</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="keyword">try</span> {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 945</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> jar.close();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 946</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> } <span class="keyword">catch</span> (IOException ex) {</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 947</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> LOGGER.trace(<span class="string">""</span>, ex);</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 948</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 942</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> jar.close();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 943</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> } <span class="keyword">catch</span> (IOException ex) {</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 944</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> LOGGER.trace(<span class="string">""</span>, ex);</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 945</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 946</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 947</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 948</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> <span class="keyword">return</span> classNames;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 949</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 950</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 951</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> <span class="keyword">return</span> classNames;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 952</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 953</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 950</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 954</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 951</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 955</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 952</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * Cycles through the list of class names and places the package levels 0-3 into the provided maps for vendor and product.</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 956</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 953</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * This is helpful when analyzing vendor/product as many times this is included in the package name.</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 957</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 954</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 958</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 955</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @param classNames a list of class names</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 959</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 956</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @param vendor HashMap of possible vendor names from package names (e.g. owasp)</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 960</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 957</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @param product HashMap of possible product names from package names (e.g. dependencycheck)</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 961</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 958</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 962</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 959</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">void</span> analyzeFullyQualifiedClassNames(List<ClassNameInformation> classNames,</pre></td></tr>
|
||||
<tr> <td class="numLine"> 963</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 960</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> Map<String, Integer> vendor, Map<String, Integer> product) {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 964</td> <td class="nbHitsCovered"><a title="Line 964: Conditional coverage 100% (2/2)."> 5</a></td> <td class="src"><pre class="src"> <a title="Line 964: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (ClassNameInformation entry : classNames) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 965</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> <span class="keyword">final</span> List<String> list = entry.getPackageStructure();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 966</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> addEntry(vendor, list.get(0));</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 961</td> <td class="nbHitsCovered"><a title="Line 961: Conditional coverage 100% (2/2)."> 5</a></td> <td class="src"><pre class="src"> <a title="Line 961: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (ClassNameInformation entry : classNames) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 962</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> <span class="keyword">final</span> List<String> list = entry.getPackageStructure();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 963</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> addEntry(vendor, list.get(0));</pre></td></tr>
|
||||
<tr> <td class="numLine"> 964</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 965</td> <td class="nbHitsUncovered"><a title="Line 965: Conditional coverage 50% (1/2)."> 1535</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 965: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (list.size() == 2) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 966</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> addEntry(product, list.get(1));</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 967</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 968</td> <td class="nbHitsUncovered"><a title="Line 968: Conditional coverage 50% (1/2)."> 1535</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 968: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (list.size() == 2) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 969</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> addEntry(product, list.get(1));</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 970</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 971</td> <td class="nbHitsCovered"><a title="Line 971: Conditional coverage 100% (2/2)."> 1535</a></td> <td class="src"><pre class="src"> <a title="Line 971: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (list.size() == 3) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 972</td> <td class="nbHitsCovered"> 345</td> <td class="src"><pre class="src"> addEntry(vendor, list.get(1));</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 973</td> <td class="nbHitsCovered"> 345</td> <td class="src"><pre class="src"> addEntry(product, list.get(1));</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 974</td> <td class="nbHitsCovered"> 345</td> <td class="src"><pre class="src"> addEntry(product, list.get(2));</pre></td></tr>
|
||||
<tr> <td class="numLine"> 975</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 968</td> <td class="nbHitsCovered"><a title="Line 968: Conditional coverage 100% (2/2)."> 1535</a></td> <td class="src"><pre class="src"> <a title="Line 968: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (list.size() == 3) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 969</td> <td class="nbHitsCovered"> 345</td> <td class="src"><pre class="src"> addEntry(vendor, list.get(1));</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 970</td> <td class="nbHitsCovered"> 345</td> <td class="src"><pre class="src"> addEntry(product, list.get(1));</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 971</td> <td class="nbHitsCovered"> 345</td> <td class="src"><pre class="src"> addEntry(product, list.get(2));</pre></td></tr>
|
||||
<tr> <td class="numLine"> 972</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 976</td> <td class="nbHitsCovered"><a title="Line 976: Conditional coverage 100% (2/2)."> 1535</a></td> <td class="src"><pre class="src"> <a title="Line 976: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (list.size() >= 4) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 977</td> <td class="nbHitsCovered"> 1190</td> <td class="src"><pre class="src"> addEntry(vendor, list.get(1));</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 978</td> <td class="nbHitsCovered"> 1190</td> <td class="src"><pre class="src"> addEntry(vendor, list.get(2));</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 979</td> <td class="nbHitsCovered"> 1190</td> <td class="src"><pre class="src"> addEntry(product, list.get(1));</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 980</td> <td class="nbHitsCovered"> 1190</td> <td class="src"><pre class="src"> addEntry(product, list.get(2));</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 981</td> <td class="nbHitsCovered"> 1190</td> <td class="src"><pre class="src"> addEntry(product, list.get(3));</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 973</td> <td class="nbHitsCovered"><a title="Line 973: Conditional coverage 100% (2/2)."> 1535</a></td> <td class="src"><pre class="src"> <a title="Line 973: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (list.size() >= 4) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 974</td> <td class="nbHitsCovered"> 1190</td> <td class="src"><pre class="src"> addEntry(vendor, list.get(1));</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 975</td> <td class="nbHitsCovered"> 1190</td> <td class="src"><pre class="src"> addEntry(vendor, list.get(2));</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 976</td> <td class="nbHitsCovered"> 1190</td> <td class="src"><pre class="src"> addEntry(product, list.get(1));</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 977</td> <td class="nbHitsCovered"> 1190</td> <td class="src"><pre class="src"> addEntry(product, list.get(2));</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 978</td> <td class="nbHitsCovered"> 1190</td> <td class="src"><pre class="src"> addEntry(product, list.get(3));</pre></td></tr>
|
||||
<tr> <td class="numLine"> 979</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 980</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 981</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 982</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 983</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 984</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 985</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 986</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 983</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 987</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 984</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * Adds an entry to the specified collection and sets the Integer (e.g. the count) to 1. If the entry already exists in the</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 988</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 985</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * collection then the Integer is incremented by 1.</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 989</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 986</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 990</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 987</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @param collection a collection of strings and their occurrence count</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 991</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 988</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @param key the key to add to the collection</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 992</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 989</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 993</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 990</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">void</span> addEntry(Map<String, Integer> collection, String key) {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 994</td> <td class="nbHitsCovered"><a title="Line 994: Conditional coverage 100% (2/2)."> 8520</a></td> <td class="src"><pre class="src"> <a title="Line 994: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (collection.containsKey(key)) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 995</td> <td class="nbHitsCovered"> 7487</td> <td class="src"><pre class="src"> collection.put(key, collection.get(key) + 1);</pre></td></tr>
|
||||
<tr> <td class="numLine"> 996</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 991</td> <td class="nbHitsCovered"><a title="Line 991: Conditional coverage 100% (2/2)."> 8520</a></td> <td class="src"><pre class="src"> <a title="Line 991: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (collection.containsKey(key)) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 992</td> <td class="nbHitsCovered"> 7487</td> <td class="src"><pre class="src"> collection.put(key, collection.get(key) + 1);</pre></td></tr>
|
||||
<tr> <td class="numLine"> 993</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 997</td> <td class="nbHitsCovered"> 1033</td> <td class="src"><pre class="src"> collection.put(key, 1);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 994</td> <td class="nbHitsCovered"> 1033</td> <td class="src"><pre class="src"> collection.put(key, 1);</pre></td></tr>
|
||||
<tr> <td class="numLine"> 995</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 996</td> <td class="nbHitsCovered"> 8520</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 997</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 998</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 999</td> <td class="nbHitsCovered"> 8520</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1000</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 1001</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1002</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 999</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * Cycles through the collection of class name information to see if parts of the package names are contained in the provided</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1003</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1000</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * value. If found, it will be added as the HIGHEST confidence evidence because we have more then one source corroborating the</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1004</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1001</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * value.</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1005</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1002</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1006</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1003</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @param classes a collection of class name information</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1007</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1004</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @param value the value to check to see if it contains a package name</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1008</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1005</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @param evidence the evidence collection to add new entries too</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1009</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1006</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1010</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1007</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">void</span> addMatchingValues(List<ClassNameInformation> classes, String value, EvidenceCollection evidence) {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1011</td> <td class="nbHitsUncovered"><a title="Line 1011: Conditional coverage 50% (4/8) [each condition: 50%, 50%, 50%, 50%]."> 38</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1011: Conditional coverage 50% (4/8) [each condition: 50%, 50%, 50%, 50%]."> <span class="keyword">if</span> (value == <span class="keyword">null</span> || value.isEmpty() || classes == <span class="keyword">null</span> || classes.isEmpty()) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1012</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">return</span>;</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1013</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 1008</td> <td class="nbHitsUncovered"><a title="Line 1008: Conditional coverage 50% (4/8) [each condition: 50%, 50%, 50%, 50%]."> 38</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1008: Conditional coverage 50% (4/8) [each condition: 50%, 50%, 50%, 50%]."> <span class="keyword">if</span> (value == <span class="keyword">null</span> || value.isEmpty() || classes == <span class="keyword">null</span> || classes.isEmpty()) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1009</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">return</span>;</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1010</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1014</td> <td class="nbHitsCovered"> 38</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String text = value.toLowerCase();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1015</td> <td class="nbHitsCovered"><a title="Line 1015: Conditional coverage 100% (2/2)."> 38</a></td> <td class="src"><pre class="src"> <a title="Line 1015: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (ClassNameInformation cni : classes) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1016</td> <td class="nbHitsCovered"><a title="Line 1016: Conditional coverage 100% (2/2)."> 15262</a></td> <td class="src"><pre class="src"> <a title="Line 1016: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (String key : cni.getPackageStructure()) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1017</td> <td class="nbHitsCovered"><a title="Line 1017: Conditional coverage 100% (2/2)."> 59006</a></td> <td class="src"><pre class="src"> <a title="Line 1017: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (text.contains(key)) { <span class="comment">//note, package structure elements are already lowercase.</span></a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1018</td> <td class="nbHitsCovered"> 14439</td> <td class="src"><pre class="src"> evidence.addEvidence(<span class="string">"jar"</span>, <span class="string">"package name"</span>, key, Confidence.HIGHEST);</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1019</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 1011</td> <td class="nbHitsCovered"> 38</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String text = value.toLowerCase();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1012</td> <td class="nbHitsCovered"><a title="Line 1012: Conditional coverage 100% (2/2)."> 38</a></td> <td class="src"><pre class="src"> <a title="Line 1012: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (ClassNameInformation cni : classes) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1013</td> <td class="nbHitsCovered"><a title="Line 1013: Conditional coverage 100% (2/2)."> 15262</a></td> <td class="src"><pre class="src"> <a title="Line 1013: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (String key : cni.getPackageStructure()) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1014</td> <td class="nbHitsCovered"><a title="Line 1014: Conditional coverage 100% (2/2)."> 59006</a></td> <td class="src"><pre class="src"> <a title="Line 1014: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (text.contains(key)) { <span class="comment">//note, package structure elements are already lowercase.</span></a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1015</td> <td class="nbHitsCovered"> 14439</td> <td class="src"><pre class="src"> evidence.addEvidence(<span class="string">"jar"</span>, <span class="string">"package name"</span>, key, Confidence.HIGHEST);</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1016</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1020</td> <td class="nbHitsCovered"> 59006</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1021</td> <td class="nbHitsCovered"> 15262</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1022</td> <td class="nbHitsCovered"> 38</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1023</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 1017</td> <td class="nbHitsCovered"> 59006</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1018</td> <td class="nbHitsCovered"> 15262</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1019</td> <td class="nbHitsCovered"> 38</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1020</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 1024</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1021</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1025</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1022</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * Simple check to see if the attribute from a manifest is just a package name.</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1026</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1023</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1027</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1024</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @param key the key of the value to check</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1028</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1025</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @param value the value to check</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1029</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1026</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @return true if the value looks like a java package name, otherwise false</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1030</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1027</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1031</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1028</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">boolean</span> isPackage(String key, String value) {</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1029</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1030</td> <td class="nbHitsCovered"><a title="Line 1030: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 14</a></td> <td class="src"><pre class="src"> <a title="Line 1030: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">return</span> !key.matches(<span class="string">".*(version|title|vendor|name|license|description).*"</span>)</a></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1031</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> && value.matches(<span class="string">"^([a-zA-Z_][a-zA-Z0-9_\\$]*(\\.[a-zA-Z_][a-zA-Z0-9_\\$]*)*)?$"</span>);</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1032</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1033</td> <td class="nbHitsCovered"><a title="Line 1033: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 14</a></td> <td class="src"><pre class="src"> <a title="Line 1033: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">return</span> !key.matches(<span class="string">".*(version|title|vendor|name|license|description).*"</span>)</a></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1034</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> && value.matches(<span class="string">"^([a-zA-Z_][a-zA-Z0-9_\\$]*(\\.[a-zA-Z_][a-zA-Z0-9_\\$]*)*)?$"</span>);</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1035</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 1036</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1033</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1037</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1034</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 1038</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1035</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1039</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1036</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * Extracts the license information from the pom and adds it to the dependency.</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1040</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1037</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1041</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1038</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @param pom the pom object</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1042</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1039</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @param dependency the dependency to add license information too</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1043</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1040</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1044</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1041</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">void</span> extractLicense(Model pom, Dependency dependency) {</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1045</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1042</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">//license</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1046</td> <td class="nbHitsUncovered"><a title="Line 1046: Conditional coverage 50% (1/2)."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1046: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (pom.getLicenses() != <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1047</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> String license = <span class="keyword">null</span>;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1048</td> <td class="nbHitsUncovered"><a title="Line 1048: Conditional coverage 50% (1/2)."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1048: Conditional coverage 50% (1/2)."> <span class="keyword">for</span> (License lic : pom.getLicenses()) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1049</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> String tmp = <span class="keyword">null</span>;</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1050</td> <td class="nbHitsUncovered"><a title="Line 1050: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1050: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (lic.getName() != <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1051</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> tmp = lic.getName();</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1052</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 1043</td> <td class="nbHitsUncovered"><a title="Line 1043: Conditional coverage 50% (1/2)."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1043: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (pom.getLicenses() != <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1044</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> String license = <span class="keyword">null</span>;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1045</td> <td class="nbHitsUncovered"><a title="Line 1045: Conditional coverage 50% (1/2)."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1045: Conditional coverage 50% (1/2)."> <span class="keyword">for</span> (License lic : pom.getLicenses()) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1046</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> String tmp = <span class="keyword">null</span>;</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1047</td> <td class="nbHitsUncovered"><a title="Line 1047: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1047: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (lic.getName() != <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1048</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> tmp = lic.getName();</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1049</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1053</td> <td class="nbHitsUncovered"><a title="Line 1053: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1053: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (lic.getUrl() != <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1054</td> <td class="nbHitsUncovered"><a title="Line 1054: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1054: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (tmp == <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1055</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> tmp = lic.getUrl();</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1056</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 1050</td> <td class="nbHitsUncovered"><a title="Line 1050: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1050: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (lic.getUrl() != <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1051</td> <td class="nbHitsUncovered"><a title="Line 1051: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1051: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (tmp == <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1052</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> tmp = lic.getUrl();</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1053</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1057</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> tmp += <span class="string">": "</span> + lic.getUrl();</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1058</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 1054</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> tmp += <span class="string">": "</span> + lic.getUrl();</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1055</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1056</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1057</td> <td class="nbHitsUncovered"><a title="Line 1057: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1057: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (tmp == <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1058</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">continue</span>;</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1059</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1060</td> <td class="nbHitsUncovered"><a title="Line 1060: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1060: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (tmp == <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1061</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">continue</span>;</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1060</td> <td class="nbHitsUncovered"><a title="Line 1060: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1060: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (HTML_DETECTION_PATTERN.matcher(tmp).find()) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1061</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> tmp = Jsoup.parse(tmp).text();</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1062</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1063</td> <td class="nbHitsUncovered"><a title="Line 1063: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1063: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (HTML_DETECTION_PATTERN.matcher(tmp).find()) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1064</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> tmp = Jsoup.parse(tmp).text();</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1063</td> <td class="nbHitsUncovered"><a title="Line 1063: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1063: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (license == <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1064</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> license = tmp;</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1065</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1066</td> <td class="nbHitsUncovered"><a title="Line 1066: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1066: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (license == <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1067</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> license = tmp;</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1068</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1069</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> license += <span class="string">"\n"</span> + tmp;</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1070</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 1066</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> license += <span class="string">"\n"</span> + tmp;</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1067</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1071</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> }</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1072</td> <td class="nbHitsUncovered"><a title="Line 1072: Conditional coverage 50% (1/2)."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1072: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (license != <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1073</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> dependency.setLicense(license);</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1074</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 1068</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> }</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1069</td> <td class="nbHitsUncovered"><a title="Line 1069: Conditional coverage 50% (1/2)."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1069: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (license != <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1070</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> dependency.setLicense(license);</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1071</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 1075</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1072</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1076</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1073</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1077</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1078</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 1074</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1075</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 1079</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1076</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1080</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1077</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * Stores information about a class name.</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1081</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1078</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1082</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1079</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="keyword">protected</span> <span class="keyword">static</span> <span class="keyword">class</span> ClassNameInformation {</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1083</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1080</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 1084</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1081</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1085</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1082</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * <p></span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1086</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1083</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * Stores information about a given class name. This class will keep the fully qualified class name and a list of the</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1087</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1084</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * important parts of the package structure. Up to the first four levels of the package structure are stored, excluding a</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1088</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1085</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * leading "org" or "com". Example:</p></span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1089</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1086</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * <code>ClassNameInformation obj = new ClassNameInformation("org.owasp.dependencycheck.analyzer.JarAnalyzer");</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1090</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1087</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * System.out.println(obj.getName());</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1091</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1088</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * for (String p : obj.getPackageStructure())</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1092</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1089</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * System.out.println(p);</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1093</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1090</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * </code></span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1094</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1091</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * <p></span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1095</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1092</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * Would result in:</p></span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1096</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1093</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * <code>org.owasp.dependencycheck.analyzer.JarAnalyzer</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1097</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1094</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * owasp</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1098</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1095</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * dependencycheck</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1099</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1096</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * analyzer</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1100</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1097</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * jaranalyzer</code></span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1101</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1098</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1102</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1099</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @param className a fully qualified class name</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1103</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1100</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1104</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> ClassNameInformation(String className) {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1105</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> name = className;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1106</td> <td class="nbHitsUncovered"><a title="Line 1106: Conditional coverage 50% (1/2)."> 1535</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1106: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (name.contains(<span class="string">"/"</span>)) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1107</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String[] tmp = className.toLowerCase().split(<span class="string">"/"</span>);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1108</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> <span class="keyword">int</span> start = 0;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1109</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> <span class="keyword">int</span> end = 3;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1110</td> <td class="nbHitsUncovered"><a title="Line 1110: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 1535</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1110: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (<span class="string">"com"</span>.equals(tmp[0]) || <span class="string">"org"</span>.equals(tmp[0])) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1111</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> start = 1;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1112</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> end = 4;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1101</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> ClassNameInformation(String className) {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1102</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> name = className;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1103</td> <td class="nbHitsUncovered"><a title="Line 1103: Conditional coverage 50% (1/2)."> 1535</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1103: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (name.contains(<span class="string">"/"</span>)) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1104</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String[] tmp = className.toLowerCase().split(<span class="string">"/"</span>);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1105</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> <span class="keyword">int</span> start = 0;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1106</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> <span class="keyword">int</span> end = 3;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1107</td> <td class="nbHitsUncovered"><a title="Line 1107: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 1535</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1107: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (<span class="string">"com"</span>.equals(tmp[0]) || <span class="string">"org"</span>.equals(tmp[0])) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1108</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> start = 1;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1109</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> end = 4;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1110</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1111</td> <td class="nbHitsCovered"><a title="Line 1111: Conditional coverage 100% (2/2)."> 1535</a></td> <td class="src"><pre class="src"> <a title="Line 1111: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (tmp.length <= end) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1112</td> <td class="nbHitsCovered"> 345</td> <td class="src"><pre class="src"> end = tmp.length - 1;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1113</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1114</td> <td class="nbHitsCovered"><a title="Line 1114: Conditional coverage 100% (2/2)."> 1535</a></td> <td class="src"><pre class="src"> <a title="Line 1114: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (tmp.length <= end) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1115</td> <td class="nbHitsCovered"> 345</td> <td class="src"><pre class="src"> end = tmp.length - 1;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1114</td> <td class="nbHitsCovered"><a title="Line 1114: Conditional coverage 100% (2/2)."> 7330</a></td> <td class="src"><pre class="src"> <a title="Line 1114: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = start; i <= end; i++) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1115</td> <td class="nbHitsCovered"> 5795</td> <td class="src"><pre class="src"> packageStructure.add(tmp[i]);</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1116</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1117</td> <td class="nbHitsCovered"><a title="Line 1117: Conditional coverage 100% (2/2)."> 7330</a></td> <td class="src"><pre class="src"> <a title="Line 1117: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = start; i <= end; i++) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1118</td> <td class="nbHitsCovered"> 5795</td> <td class="src"><pre class="src"> packageStructure.add(tmp[i]);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1117</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1118</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> packageStructure.add(name);</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1119</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1120</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1121</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> packageStructure.add(name);</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1122</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1123</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1124</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 1120</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1121</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1125</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1122</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * The fully qualified class name.</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1126</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1123</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1127</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1124</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="keyword">private</span> String name;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1128</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1125</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 1129</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1126</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1130</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1127</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * Get the value of name</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1131</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1128</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1132</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1129</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @return the value of name</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1133</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1130</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1134</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1131</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="keyword">public</span> String getName() {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1135</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">return</span> name;</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1132</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">return</span> name;</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1133</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1134</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 1135</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1136</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1137</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 1138</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1139</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * Set the value of name</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1140</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1137</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1141</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1138</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @param name new value of name</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1142</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1139</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1143</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1140</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">void</span> setName(String name) {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1144</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">this</span>.name = name;</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1145</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> }</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1146</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 1141</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">this</span>.name = name;</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1142</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> }</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1143</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1147</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1144</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * Up to the first four levels of the package structure, excluding a leading "org" or "com".</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1145</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1146</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">final</span> ArrayList<String> packageStructure = <span class="keyword">new</span> ArrayList<String>();</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1147</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 1148</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1149</td> <td class="nbHitsCovered"> 1535</td> <td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">final</span> ArrayList<String> packageStructure = <span class="keyword">new</span> ArrayList<String>();</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1150</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 1151</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1152</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1149</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * Get the value of packageStructure</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1153</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1150</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1154</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1151</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @return the value of packageStructure</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1155</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1152</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1156</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1153</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="keyword">public</span> ArrayList<String> getPackageStructure() {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1157</td> <td class="nbHitsCovered"> 16797</td> <td class="src"><pre class="src"> <span class="keyword">return</span> packageStructure;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1158</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 1154</td> <td class="nbHitsCovered"> 16797</td> <td class="src"><pre class="src"> <span class="keyword">return</span> packageStructure;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1155</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1159</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1156</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1160</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1157</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 1161</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1158</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1162</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1159</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * Retrieves the next temporary directory to extract an archive too.</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1163</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1160</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1164</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1161</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @return a directory</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1165</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1162</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @throws AnalysisException thrown if unable to create temporary directory</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1166</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1163</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1167</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1164</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="keyword">private</span> File getNextTempDirectory() <span class="keyword">throws</span> AnalysisException {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1168</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> dirCount += 1;</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1169</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">final</span> File directory = <span class="keyword">new</span> File(tempFileLocation, String.valueOf(dirCount));</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1170</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 1165</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> dirCount += 1;</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1166</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">final</span> File directory = <span class="keyword">new</span> File(tempFileLocation, String.valueOf(dirCount));</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1167</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">//getting an exception for some directories not being able to be created; might be because the directory already exists?</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1171</td> <td class="nbHitsUncovered"><a title="Line 1171: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1171: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (directory.exists()) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1172</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">return</span> getNextTempDirectory();</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1173</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 1168</td> <td class="nbHitsUncovered"><a title="Line 1168: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1168: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (directory.exists()) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1169</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">return</span> getNextTempDirectory();</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1170</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1174</td> <td class="nbHitsUncovered"><a title="Line 1174: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1174: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (!directory.mkdirs()) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1175</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">final</span> String msg = String.format(<span class="string">"Unable to create temp directory '%s'."</span>, directory.getAbsolutePath());</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1176</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">throw</span> <span class="keyword">new</span> AnalysisException(msg);</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1177</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 1171</td> <td class="nbHitsUncovered"><a title="Line 1171: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1171: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (!directory.mkdirs()) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1172</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">final</span> String msg = String.format(<span class="string">"Unable to create temp directory '%s'."</span>, directory.getAbsolutePath());</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1173</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">throw</span> <span class="keyword">new</span> AnalysisException(msg);</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1174</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 1178</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">return</span> directory;</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1179</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLineCover"> 1175</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">return</span> directory;</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 1176</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 1180</td> <td class="nbHits"> </td>
|
||||
<tr> <td class="numLine"> 1177</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
</table>
|
||||
|
||||
<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 2.1.1 on 12/10/15 7:51 PM.</div>
|
||||
<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 2.1.1 on 1/31/16 8:34 AM.</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user