diff --git a/dependency-check-ant/apidocs/allclasses-frame.html b/dependency-check-ant/apidocs/allclasses-frame.html index 056fb8983..dcbb79c53 100644 --- a/dependency-check-ant/apidocs/allclasses-frame.html +++ b/dependency-check-ant/apidocs/allclasses-frame.html @@ -2,13 +2,13 @@ - + -All Classes (Dependency-Check Ant Task 1.0.4 API) +All Classes (Dependency-Check Ant Task 1.0.5 API) - + diff --git a/dependency-check-ant/apidocs/allclasses-noframe.html b/dependency-check-ant/apidocs/allclasses-noframe.html index 4551a0b71..f3af64e06 100644 --- a/dependency-check-ant/apidocs/allclasses-noframe.html +++ b/dependency-check-ant/apidocs/allclasses-noframe.html @@ -2,13 +2,13 @@ - + -All Classes (Dependency-Check Ant Task 1.0.4 API) +All Classes (Dependency-Check Ant Task 1.0.5 API) - + diff --git a/dependency-check-ant/apidocs/constant-values.html b/dependency-check-ant/apidocs/constant-values.html index e7481ef4e..a6d216826 100644 --- a/dependency-check-ant/apidocs/constant-values.html +++ b/dependency-check-ant/apidocs/constant-values.html @@ -2,13 +2,13 @@ - + -Constant Field Values (Dependency-Check Ant Task 1.0.4 API) +Constant Field Values (Dependency-Check Ant Task 1.0.5 API) - + @@ -16,7 +16,7 @@ Constant Field Values (Dependency-Check Ant Task 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Constant Field Values (Dependency-Check Ant Task 1.0.4 API)"; + parent.document.title="Constant Field Values (Dependency-Check Ant Task 1.0.5 API)"; } } diff --git a/dependency-check-ant/apidocs/deprecated-list.html b/dependency-check-ant/apidocs/deprecated-list.html index 9b424c09f..7053f6de6 100644 --- a/dependency-check-ant/apidocs/deprecated-list.html +++ b/dependency-check-ant/apidocs/deprecated-list.html @@ -2,13 +2,13 @@ - + -Deprecated List (Dependency-Check Ant Task 1.0.4 API) +Deprecated List (Dependency-Check Ant Task 1.0.5 API) - + @@ -16,7 +16,7 @@ Deprecated List (Dependency-Check Ant Task 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Deprecated List (Dependency-Check Ant Task 1.0.4 API)"; + parent.document.title="Deprecated List (Dependency-Check Ant Task 1.0.5 API)"; } } diff --git a/dependency-check-ant/apidocs/help-doc.html b/dependency-check-ant/apidocs/help-doc.html index 8af8e4e47..9cc849db0 100644 --- a/dependency-check-ant/apidocs/help-doc.html +++ b/dependency-check-ant/apidocs/help-doc.html @@ -2,13 +2,13 @@ - + -API Help (Dependency-Check Ant Task 1.0.4 API) +API Help (Dependency-Check Ant Task 1.0.5 API) - + @@ -16,7 +16,7 @@ API Help (Dependency-Check Ant Task 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="API Help (Dependency-Check Ant Task 1.0.4 API)"; + parent.document.title="API Help (Dependency-Check Ant Task 1.0.5 API)"; } } diff --git a/dependency-check-ant/apidocs/index-all.html b/dependency-check-ant/apidocs/index-all.html index 9126dd5b1..3e3e3c5bb 100644 --- a/dependency-check-ant/apidocs/index-all.html +++ b/dependency-check-ant/apidocs/index-all.html @@ -2,13 +2,13 @@ - + -Index (Dependency-Check Ant Task 1.0.4 API) +Index (Dependency-Check Ant Task 1.0.5 API) - + @@ -16,7 +16,7 @@ Index (Dependency-Check Ant Task 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Index (Dependency-Check Ant Task 1.0.4 API)"; + parent.document.title="Index (Dependency-Check Ant Task 1.0.5 API)"; } } @@ -125,12 +125,18 @@ Method in class org.owasp.dependencycheck.taskdefs.getLogFile() - Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask
Get the value of logFile. +
getProxyPassword() - +Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask +
Get the value of proxyPassword.
getProxyPort() - Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask
Get the value of proxyPort.
getProxyUrl() - Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask
Get the value of proxyUrl. +
getProxyUsername() - +Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask +
Get the value of proxyUsername.
getReportFormat() - Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask
Get the value of reportFormat. @@ -184,12 +190,18 @@ Method in class org.owasp.dependencycheck.taskdefs.setLogFile(String) - Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask
Set the value of logFile. +
setProxyPassword(String) - +Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask +
Set the value of proxyPassword.
setProxyPort(String) - Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask
Set the value of proxyPort.
setProxyUrl(String) - Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask
Set the value of proxyUrl. +
setProxyUsername(String) - +Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask +
Set the value of proxyUsername.
setRefid(Reference) - Method in class org.owasp.dependencycheck.taskdefs.DependencyCheckTask
Add a reference to a Path, FileSet, DirSet, or FileList defined diff --git a/dependency-check-ant/apidocs/index.html b/dependency-check-ant/apidocs/index.html index 241b6e571..a0da21945 100644 --- a/dependency-check-ant/apidocs/index.html +++ b/dependency-check-ant/apidocs/index.html @@ -2,10 +2,10 @@ - + -Dependency-Check Ant Task 1.0.4 API +Dependency-Check Ant Task 1.0.5 API diff --git a/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html index 5be02e079..43873caa2 100644 --- a/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html +++ b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html @@ -2,13 +2,13 @@ - + -DependencyCheckTask (Dependency-Check Ant Task 1.0.4 API) +DependencyCheckTask (Dependency-Check Ant Task 1.0.5 API) - + @@ -16,7 +16,7 @@ DependencyCheckTask (Dependency-Check Ant Task 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="DependencyCheckTask (Dependency-Check Ant Task 1.0.4 API)"; + parent.document.title="DependencyCheckTask (Dependency-Check Ant Task 1.0.5 API)"; } } @@ -246,6 +246,14 @@ An Ant task definition to execute dependency-check during an Ant build.  String +getProxyPassword() + +
+          Get the value of proxyPassword. + + + + String getProxyPort()
@@ -262,6 +270,14 @@ An Ant task definition to execute dependency-check during an Ant build.  String +getProxyUsername() + +
+          Get the value of proxyUsername. + + + + String getReportFormat()
@@ -342,6 +358,14 @@ An Ant task definition to execute dependency-check during an Ant build.  void +setProxyPassword(String proxyPassword) + +
+          Set the value of proxyPassword. + + + + void setProxyPort(String proxyPort)
@@ -358,6 +382,14 @@ An Ant task definition to execute dependency-check during an Ant build.  void +setProxyUsername(String proxyUsername) + +
+          Set the value of proxyUsername. + + + + void setRefid(org.apache.tools.ant.types.Reference r)
@@ -699,6 +731,60 @@ public void setProxyPort(

+getProxyUsername

+
+public String getProxyUsername()
+
+
Get the value of proxyUsername. +

+

+ +
Returns:
the value of proxyUsername
+
+
+
+ +

+setProxyUsername

+
+public void setProxyUsername(String proxyUsername)
+
+
Set the value of proxyUsername. +

+

+
Parameters:
proxyUsername - new value of proxyUsername
+
+
+
+ +

+getProxyPassword

+
+public String getProxyPassword()
+
+
Get the value of proxyPassword. +

+

+ +
Returns:
the value of proxyPassword
+
+
+
+ +

+setProxyPassword

+
+public void setProxyPassword(String proxyPassword)
+
+
Set the value of proxyPassword. +

+

+
Parameters:
proxyPassword - new value of proxyPassword
+
+
+
+

getConnectionTimeout

diff --git a/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/class-use/DependencyCheckTask.ReportFormats.html b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/class-use/DependencyCheckTask.ReportFormats.html
index 388d2d60a..76fcdea26 100644
--- a/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/class-use/DependencyCheckTask.ReportFormats.html
+++ b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/class-use/DependencyCheckTask.ReportFormats.html
@@ -2,13 +2,13 @@
 
 
 
-
+
 
 
-Uses of Class org.owasp.dependencycheck.taskdefs.DependencyCheckTask.ReportFormats (Dependency-Check Ant Task 1.0.4 API)
+Uses of Class org.owasp.dependencycheck.taskdefs.DependencyCheckTask.ReportFormats (Dependency-Check Ant Task 1.0.5 API)
 
 
-
+
 
 
 
@@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.taskdefs.DependencyCheckTask.ReportForma
 function windowTitle()
 {
     if (location.href.indexOf('is-external=true') == -1) {
-        parent.document.title="Uses of Class org.owasp.dependencycheck.taskdefs.DependencyCheckTask.ReportFormats (Dependency-Check Ant Task 1.0.4 API)";
+        parent.document.title="Uses of Class org.owasp.dependencycheck.taskdefs.DependencyCheckTask.ReportFormats (Dependency-Check Ant Task 1.0.5 API)";
     }
 }
 
diff --git a/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/class-use/DependencyCheckTask.html b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/class-use/DependencyCheckTask.html
index aea8c0f03..f88a66a65 100644
--- a/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/class-use/DependencyCheckTask.html
+++ b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/class-use/DependencyCheckTask.html
@@ -2,13 +2,13 @@
 
 
 
-
+
 
 
-Uses of Class org.owasp.dependencycheck.taskdefs.DependencyCheckTask (Dependency-Check Ant Task 1.0.4 API)
+Uses of Class org.owasp.dependencycheck.taskdefs.DependencyCheckTask (Dependency-Check Ant Task 1.0.5 API)
 
 
-
+
 
 
 
@@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.taskdefs.DependencyCheckTask (Dependency
 function windowTitle()
 {
     if (location.href.indexOf('is-external=true') == -1) {
-        parent.document.title="Uses of Class org.owasp.dependencycheck.taskdefs.DependencyCheckTask (Dependency-Check Ant Task 1.0.4 API)";
+        parent.document.title="Uses of Class org.owasp.dependencycheck.taskdefs.DependencyCheckTask (Dependency-Check Ant Task 1.0.5 API)";
     }
 }
 
diff --git a/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-frame.html b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-frame.html
index 080107d56..7c9ffe05b 100644
--- a/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-frame.html
+++ b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-frame.html
@@ -2,13 +2,13 @@
 
 
 
-
+
 
 
-org.owasp.dependencycheck.taskdefs (Dependency-Check Ant Task 1.0.4 API)
+org.owasp.dependencycheck.taskdefs (Dependency-Check Ant Task 1.0.5 API)
 
 
-
+
 
 
 
diff --git a/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-summary.html b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-summary.html
index 2d2bd762c..cdd891875 100644
--- a/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-summary.html
+++ b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-summary.html
@@ -2,13 +2,13 @@
 
 
 
-
+
 
 
-org.owasp.dependencycheck.taskdefs (Dependency-Check Ant Task 1.0.4 API)
+org.owasp.dependencycheck.taskdefs (Dependency-Check Ant Task 1.0.5 API)
 
 
-
+
 
 
 
@@ -16,7 +16,7 @@ org.owasp.dependencycheck.taskdefs (Dependency-Check Ant Task 1.0.4 API)
 function windowTitle()
 {
     if (location.href.indexOf('is-external=true') == -1) {
-        parent.document.title="org.owasp.dependencycheck.taskdefs (Dependency-Check Ant Task 1.0.4 API)";
+        parent.document.title="org.owasp.dependencycheck.taskdefs (Dependency-Check Ant Task 1.0.5 API)";
     }
 }
 
diff --git a/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-tree.html b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-tree.html
index a787dce80..da5856cfa 100644
--- a/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-tree.html
+++ b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-tree.html
@@ -2,13 +2,13 @@
 
 
 
-
+
 
 
-org.owasp.dependencycheck.taskdefs Class Hierarchy (Dependency-Check Ant Task 1.0.4 API)
+org.owasp.dependencycheck.taskdefs Class Hierarchy (Dependency-Check Ant Task 1.0.5 API)
 
 
-
+
 
 
 
@@ -16,7 +16,7 @@ org.owasp.dependencycheck.taskdefs Class Hierarchy (Dependency-Check Ant Task 1.
 function windowTitle()
 {
     if (location.href.indexOf('is-external=true') == -1) {
-        parent.document.title="org.owasp.dependencycheck.taskdefs Class Hierarchy (Dependency-Check Ant Task 1.0.4 API)";
+        parent.document.title="org.owasp.dependencycheck.taskdefs Class Hierarchy (Dependency-Check Ant Task 1.0.5 API)";
     }
 }
 
diff --git a/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-use.html b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-use.html
index 175a80e46..5f68894fa 100644
--- a/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-use.html
+++ b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-use.html
@@ -2,13 +2,13 @@
 
 
 
-
+
 
 
-Uses of Package org.owasp.dependencycheck.taskdefs (Dependency-Check Ant Task 1.0.4 API)
+Uses of Package org.owasp.dependencycheck.taskdefs (Dependency-Check Ant Task 1.0.5 API)
 
 
-
+
 
 
 
@@ -16,7 +16,7 @@ Uses of Package org.owasp.dependencycheck.taskdefs (Dependency-Check Ant Task 1.
 function windowTitle()
 {
     if (location.href.indexOf('is-external=true') == -1) {
-        parent.document.title="Uses of Package org.owasp.dependencycheck.taskdefs (Dependency-Check Ant Task 1.0.4 API)";
+        parent.document.title="Uses of Package org.owasp.dependencycheck.taskdefs (Dependency-Check Ant Task 1.0.5 API)";
     }
 }
 
diff --git a/dependency-check-ant/apidocs/overview-tree.html b/dependency-check-ant/apidocs/overview-tree.html
index cf89db145..1ab493a98 100644
--- a/dependency-check-ant/apidocs/overview-tree.html
+++ b/dependency-check-ant/apidocs/overview-tree.html
@@ -2,13 +2,13 @@
 
 
 
-
+
 
 
-Class Hierarchy (Dependency-Check Ant Task 1.0.4 API)
+Class Hierarchy (Dependency-Check Ant Task 1.0.5 API)
 
 
-
+
 
 
 
@@ -16,7 +16,7 @@ Class Hierarchy (Dependency-Check Ant Task 1.0.4 API)
 function windowTitle()
 {
     if (location.href.indexOf('is-external=true') == -1) {
-        parent.document.title="Class Hierarchy (Dependency-Check Ant Task 1.0.4 API)";
+        parent.document.title="Class Hierarchy (Dependency-Check Ant Task 1.0.5 API)";
     }
 }
 
diff --git a/dependency-check-ant/checkstyle.html b/dependency-check-ant/checkstyle.html
index d08c727e7..8824e6ab4 100644
--- a/dependency-check-ant/checkstyle.html
+++ b/dependency-check-ant/checkstyle.html
@@ -1,13 +1,13 @@
 
 
 
   
     
     
-    
+    
     
     dependency-check-ant - Checkstyle Results
     
@@ -54,7 +54,7 @@
                 
                     
                               
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-ant/cobertura/frame-sourcefiles-org.owasp.dependencycheck.taskdefs.html b/dependency-check-ant/cobertura/frame-sourcefiles-org.owasp.dependencycheck.taskdefs.html index 0c6a0bd37..56f967182 100644 --- a/dependency-check-ant/cobertura/frame-sourcefiles-org.owasp.dependencycheck.taskdefs.html +++ b/dependency-check-ant/cobertura/frame-sourcefiles-org.owasp.dependencycheck.taskdefs.html @@ -15,7 +15,7 @@ org.owasp.dependencycheck.taskdefs - +
    DependencyCheckTask (57%)DependencyCheckTask (55%)
    diff --git a/dependency-check-ant/cobertura/frame-sourcefiles.html b/dependency-check-ant/cobertura/frame-sourcefiles.html index df063431a..49bc1258a 100644 --- a/dependency-check-ant/cobertura/frame-sourcefiles.html +++ b/dependency-check-ant/cobertura/frame-sourcefiles.html @@ -15,7 +15,7 @@ All Packages - +
    DependencyCheckTask (57%)DependencyCheckTask (55%)
    diff --git a/dependency-check-ant/cobertura/frame-summary-org.owasp.dependencycheck.taskdefs.html b/dependency-check-ant/cobertura/frame-summary-org.owasp.dependencycheck.taskdefs.html index 6c50c891b..ff4b6b452 100644 --- a/dependency-check-ant/cobertura/frame-summary-org.owasp.dependencycheck.taskdefs.html +++ b/dependency-check-ant/cobertura/frame-summary-org.owasp.dependencycheck.taskdefs.html @@ -16,7 +16,7 @@ - +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.taskdefs2
    57%
    78/135
    41%
    23/56
    2.258
    org.owasp.dependencycheck.taskdefs2
    55%
    80/145
    39%
    25/64
    2.229
    - + diff --git a/dependency-check-ant/cobertura/frame-summary.html b/dependency-check-ant/cobertura/frame-summary.html index 868fedebd..fc693fba4 100644 --- a/dependency-check-ant/cobertura/frame-summary.html +++ b/dependency-check-ant/cobertura/frame-summary.html @@ -16,8 +16,8 @@ - - + +
    Package # Classes Line Coverage Branch Coverage Complexity
    All Packages2
    57%
    78/135
    41%
    23/56
    2.258
    org.owasp.dependencycheck.taskdefs2
    57%
    78/135
    41%
    23/56
    2.258
    All Packages2
    55%
    80/145
    39%
    25/64
    2.229
    org.owasp.dependencycheck.taskdefs2
    55%
    80/145
    39%
    25/64
    2.229
    - + diff --git a/dependency-check-ant/cobertura/org.owasp.dependencycheck.taskdefs.DependencyCheckTask.html b/dependency-check-ant/cobertura/org.owasp.dependencycheck.taskdefs.DependencyCheckTask.html index d4c626283..f1927e87e 100644 --- a/dependency-check-ant/cobertura/org.owasp.dependencycheck.taskdefs.DependencyCheckTask.html +++ b/dependency-check-ant/cobertura/org.owasp.dependencycheck.taskdefs.DependencyCheckTask.html @@ -12,8 +12,8 @@
     
    - - + +
    Classes in this File Line Coverage Branch Coverage Complexity
    DependencyCheckTask
    55%
    71/128
    38%
    21/54
    2.258
    DependencyCheckTask$ReportFormats
    100%
    7/7
    100%
    2/2
    2.258
    DependencyCheckTask
    52%
    73/138
    37%
    23/62
    2.229
    DependencyCheckTask$ReportFormats
    100%
    7/7
    100%
    2/2
    2.229
     
    @@ -616,311 +616,407 @@  324  0
             this.proxyPort = proxyPort;
     325  0
         }
     326   -
         /**
    +
     
     327   -
          * The Connection Timeout.
    +
         /**
     328   -
          */
    +
          * The Proxy username.
     329   -
         private String connectionTimeout;
    +
          */
     330   -
     
    +
         private String proxyUsername;
     331   -
         /**
    +
     
     332   -
          * Get the value of connectionTimeout.
    +
         /**
     333   -
          *
    +
          * Get the value of proxyUsername.
     334   -
          * @return the value of connectionTimeout
    +
          *
     335   -
          */
    +
          * @return the value of proxyUsername
     336   -
         public String getConnectionTimeout() {
    -  337  0
             return connectionTimeout;
    -  338   -
         }
    +
          */
    +  337   +
         public String getProxyUsername() {
    +  338  0
             return proxyUsername;
     339   -
     
    -  340   -
         /**
    -  341   -
          * Set the value of connectionTimeout.
    -  342   -
          *
    -  343   -
          * @param connectionTimeout new value of connectionTimeout
    -  344   -
          */
    -  345   -
         public void setConnectionTimeout(String connectionTimeout) {
    -  346  0
             this.connectionTimeout = connectionTimeout;
    -  347  0
         }
    -  348   -
         /**
    -  349   -
          * The file path used for verbose logging.
    -  350   -
          */
    -  351  4
         private String logFile = null;
    -  352   -
     
    -  353   -
         /**
    -  354   -
          * Get the value of logFile.
    -  355   -
          *
    -  356   -
          * @return the value of logFile
    -  357   -
          */
    -  358   -
         public String getLogFile() {
    -  359  0
             return logFile;
    -  360  
         }
    -  361   +  340  
     
    +  341   +
         /**
    +  342   +
          * Set the value of proxyUsername.
    +  343   +
          *
    +  344   +
          * @param proxyUsername new value of proxyUsername
    +  345   +
          */
    +  346   +
         public void setProxyUsername(String proxyUsername) {
    +  347  0
             this.proxyUsername = proxyUsername;
    +  348  0
         }
    +  349   +
     
    +  350   +
         /**
    +  351   +
          * The Proxy password.
    +  352   +
          */
    +  353   +
         private String proxyPassword;
    +  354   +
     
    +  355   +
         /**
    +  356   +
          * Get the value of proxyPassword.
    +  357   +
          *
    +  358   +
          * @return the value of proxyPassword
    +  359   +
          */
    +  360   +
         public String getProxyPassword() {
    +  361  0
             return proxyPassword;
     362   -
         /**
    +
         }
     363   -
          * Set the value of logFile.
    +
     
     364   -
          *
    +
         /**
     365   -
          * @param logFile new value of logFile
    +
          * Set the value of proxyPassword.
     366   -
          */
    -  367   -
         public void setLogFile(String logFile) {
    -  368  0
             this.logFile = logFile;
    -  369  0
         }
    -  370   -
     
    -  371   -
         @Override
    -  372   -
         public void execute() throws BuildException {
    -  373  4
             final InputStream in = DependencyCheckTask.class.getClassLoader().getResourceAsStream(LOG_PROPERTIES_FILE);
    -  374  4
             LogUtils.prepareLogger(in, logFile);
    -  375   -
     
    -  376  4
             dealWithReferences();
    -  377  4
             validateConfiguration();
    -  378  3
             populateSettings();
    -  379   -
     
    -  380  3
             final Engine engine = new Engine();
    -  381  3
             for (Resource resource : path) {
    -  382  5
                 final FileProvider provider = resource.as(FileProvider.class);
    -  383  5
                 if (provider != null) {
    -  384  5
                     final File file = provider.getFile();
    -  385  5
                     if (file != null && file.exists()) {
    -  386  4
                         engine.scan(file);
    -  387   -
                     }
    -  388   -
                 }
    -  389  5
             }
    -  390   -
             try {
    -  391  3
                 engine.analyzeDependencies();
    -  392  3
                 final ReportGenerator reporter = new ReportGenerator(applicationName, engine.getDependencies(), engine.getAnalyzers());
    -  393  3
                 reporter.generateReports(reportOutputDirectory, reportFormat);
    -  394   -
     
    -  395  3
                 if (this.failBuildOnCVSS <= 10) {
    -  396  0
                     checkForFailure(engine.getDependencies());
    -  397   -
                 }
    -  398  0
             } catch (IOException ex) {
    -  399  0
                 Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINE, null, ex);
    -  400  0
                 throw new BuildException("Unable to generate dependency-check report", ex);
    -  401  0
             } catch (Exception ex) {
    -  402  0
                 Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.SEVERE, null, ex);
    -  403  0
                 throw new BuildException("An exception occured; unable to continue task", ex);
    -  404  3
             }
    -  405  3
         }
    -  406   -
     
    -  407   -
         /**
    -  408   -
          * Validate the configuration to ensure the parameters have been properly
    -  409   -
          * configured/initialized.
    -  410  
          *
    -  411   -
          * @throws BuildException if the task was not configured correctly.
    -  412   +  367   +
          * @param proxyPassword new value of proxyPassword
    +  368  
          */
    -  413   -
         private void validateConfiguration() throws BuildException {
    -  414  4
             if (path == null) {
    -  415  1
                 throw new BuildException("No project dependencies have been defined to analyze.");
    -  416   -
             }
    -  417  3
             if (failBuildOnCVSS < 0 || failBuildOnCVSS > 11) {
    -  418  0
                 throw new BuildException("Invalid configuration, failBuildOnCVSS must be between 0 and 11.");
    -  419   -
             }
    -  420  3
         }
    -  421   +  369   +
         public void setProxyPassword(String proxyPassword) {
    +  370  0
             this.proxyPassword = proxyPassword;
    +  371  0
         }
    +  372  
     
    -  422   +  373  
         /**
    -  423   -
          * Takes the properties supplied and updates the dependency-check settings.
    -  424   -
          * Additionally, this sets the system properties required to change the
    -  425   -
          * proxy url, port, and connection timeout.
    -  426   +  374   +
          * The Connection Timeout.
    +  375  
          */
    -  427   -
         private void populateSettings() {
    -  428  3
             InputStream taskProperties = null;
    -  429   -
             try {
    -  430  3
                 taskProperties = this.getClass().getClassLoader().getResourceAsStream(PROPERTIES_FILE);
    -  431  3
                 Settings.mergeProperties(taskProperties);
    -  432  0
             } catch (IOException ex) {
    -  433  0
                 Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.WARNING, "Unable to load the dependency-check ant task.properties file.");
    -  434  0
                 Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINE, null, ex);
    +  376   +
         private String connectionTimeout;
    +  377   +
     
    +  378   +
         /**
    +  379   +
          * Get the value of connectionTimeout.
    +  380   +
          *
    +  381   +
          * @return the value of connectionTimeout
    +  382   +
          */
    +  383   +
         public String getConnectionTimeout() {
    +  384  0
             return connectionTimeout;
    +  385   +
         }
    +  386   +
     
    +  387   +
         /**
    +  388   +
          * Set the value of connectionTimeout.
    +  389   +
          *
    +  390   +
          * @param connectionTimeout new value of connectionTimeout
    +  391   +
          */
    +  392   +
         public void setConnectionTimeout(String connectionTimeout) {
    +  393  0
             this.connectionTimeout = connectionTimeout;
    +  394  0
         }
    +  395   +
         /**
    +  396   +
          * The file path used for verbose logging.
    +  397   +
          */
    +  398  4
         private String logFile = null;
    +  399   +
     
    +  400   +
         /**
    +  401   +
          * Get the value of logFile.
    +  402   +
          *
    +  403   +
          * @return the value of logFile
    +  404   +
          */
    +  405   +
         public String getLogFile() {
    +  406  0
             return logFile;
    +  407   +
         }
    +  408   +
     
    +  409   +
         /**
    +  410   +
          * Set the value of logFile.
    +  411   +
          *
    +  412   +
          * @param logFile new value of logFile
    +  413   +
          */
    +  414   +
         public void setLogFile(String logFile) {
    +  415  0
             this.logFile = logFile;
    +  416  0
         }
    +  417   +
     
    +  418   +
         @Override
    +  419   +
         public void execute() throws BuildException {
    +  420  4
             final InputStream in = DependencyCheckTask.class.getClassLoader().getResourceAsStream(LOG_PROPERTIES_FILE);
    +  421  4
             LogUtils.prepareLogger(in, logFile);
    +  422   +
     
    +  423  4
             dealWithReferences();
    +  424  4
             validateConfiguration();
    +  425  3
             populateSettings();
    +  426   +
     
    +  427  3
             final Engine engine = new Engine();
    +  428  3
             for (Resource resource : path) {
    +  429  5
                 final FileProvider provider = resource.as(FileProvider.class);
    +  430  5
                 if (provider != null) {
    +  431  5
                     final File file = provider.getFile();
    +  432  5
                     if (file != null && file.exists()) {
    +  433  4
                         engine.scan(file);
    +  434   +
                     }
     435   -
             } finally {
    -  436  3
                 if (taskProperties != null) {
    -  437   -
                     try {
    -  438  3
                         taskProperties.close();
    -  439  0
                     } catch (IOException ex) {
    -  440  0
                         Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINEST, null, ex);
    -  441  3
                     }
    -  442  
                 }
    -  443   -
             }
    -  444  3
             if (dataDirectory != null) {
    -  445  0
                 Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDirectory);
    -  446   -
             } else {
    -  447  3
                 final File jarPath = new File(DependencyCheckTask.class.getProtectionDomain().getCodeSource().getLocation().getPath());
    -  448  3
                 final File base = jarPath.getParentFile();
    -  449  3
                 final String sub = Settings.getString(Settings.KEYS.DATA_DIRECTORY);
    -  450  3
                 final File dataDir = new File(base, sub);
    -  451  3
                 Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDir.getAbsolutePath());
    -  452   -
             }
    +  436  5
             }
    +  437   +
             try {
    +  438  3
                 engine.analyzeDependencies();
    +  439  3
                 final ReportGenerator reporter = new ReportGenerator(applicationName, engine.getDependencies(), engine.getAnalyzers());
    +  440  3
                 reporter.generateReports(reportOutputDirectory, reportFormat);
    +  441   +
     
    +  442  3
                 if (this.failBuildOnCVSS <= 10) {
    +  443  0
                     checkForFailure(engine.getDependencies());
    +  444   +
                 }
    +  445  0
             } catch (IOException ex) {
    +  446  0
                 Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINE, null, ex);
    +  447  0
                 throw new BuildException("Unable to generate dependency-check report", ex);
    +  448  0
             } catch (Exception ex) {
    +  449  0
                 Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.SEVERE, null, ex);
    +  450  0
                 throw new BuildException("An exception occured; unable to continue task", ex);
    +  451  3
             }
    +  452  3
         }
     453  
     
    -  454  3
             Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, autoUpdate);
    +  454   +
         /**
     455   -
     
    -  456  3
             if (proxyUrl != null && !proxyUrl.isEmpty()) {
    -  457  0
                 Settings.setString(Settings.KEYS.PROXY_URL, proxyUrl);
    -  458   -
             }
    -  459  3
             if (proxyPort != null && !proxyPort.isEmpty()) {
    -  460  0
                 Settings.setString(Settings.KEYS.PROXY_PORT, proxyPort);
    -  461   -
             }
    -  462  3
             if (connectionTimeout != null && !connectionTimeout.isEmpty()) {
    -  463  0
                 Settings.setString(Settings.KEYS.CONNECTION_TIMEOUT, connectionTimeout);
    -  464   -
             }
    -  465  3
         }
    -  466   -
     
    -  467   -
         /**
    -  468   -
          * Checks to see if a vulnerability has been identified with a CVSS score
    -  469   -
          * that is above the threshold set in the configuration.
    -  470   +
          * Validate the configuration to ensure the parameters have been properly
    +  456   +
          * configured/initialized.
    +  457  
          *
    -  471   -
          * @param dependencies the list of dependency objects
    -  472   -
          * @throws BuildException thrown if a CVSS score is found that is higher
    -  473   -
          * then the threshold set
    -  474   +  458   +
          * @throws BuildException if the task was not configured correctly.
    +  459  
          */
    -  475   -
         private void checkForFailure(List<Dependency> dependencies) throws BuildException {
    -  476  0
             final StringBuilder ids = new StringBuilder();
    -  477  0
             for (Dependency d : dependencies) {
    -  478  0
                 for (Vulnerability v : d.getVulnerabilities()) {
    -  479  0
                     if (v.getCvssScore() >= failBuildOnCVSS) {
    -  480  0
                         if (ids.length() == 0) {
    -  481  0
                             ids.append(v.getName());
    -  482   -
                         } else {
    -  483  0
                             ids.append(", ").append(v.getName());
    -  484   -
                         }
    -  485   -
                     }
    -  486   -
                 }
    -  487   +  460   +
         private void validateConfiguration() throws BuildException {
    +  461  4
             if (path == null) {
    +  462  1
                 throw new BuildException("No project dependencies have been defined to analyze.");
    +  463  
             }
    -  488  0
             if (ids.length() > 0) {
    -  489  0
                 final String msg = String.format("%n%nDependency-Check Failure:%n"
    -  490   -
                         + "One or more dependencies were identified with vulnerabilities that have a CVSS score greater then '%.1f': %s%n"
    -  491   -
                         + "See the dependency-check report for more details.%n%n", failBuildOnCVSS, ids.toString());
    -  492  0
                 throw new BuildException(msg);
    -  493   +  464  3
             if (failBuildOnCVSS < 0 || failBuildOnCVSS > 11) {
    +  465  0
                 throw new BuildException("Invalid configuration, failBuildOnCVSS must be between 0 and 11.");
    +  466  
             }
    -  494  0
         }
    -  495   +  467  3
         }
    +  468  
     
    -  496   +  469  
         /**
    -  497   -
          * An enumeration of supported report formats: "ALL", "HTML", "XML", "VULN",
    -  498   -
          * etc..
    -  499   +  470   +
          * Takes the properties supplied and updates the dependency-check settings.
    +  471   +
          * Additionally, this sets the system properties required to change the
    +  472   +
          * proxy url, port, and connection timeout.
    +  473  
          */
    -  500  4
         public static class ReportFormats extends EnumeratedAttribute {
    -  501   -
     
    -  502   -
             /**
    -  503   -
              * Returns the list of values for the report format.
    -  504   -
              *
    -  505   -
              * @return the list of values for the report format
    -  506   -
              */
    -  507   -
             @Override
    -  508   -
             public String[] getValues() {
    -  509  4
                 int i = 0;
    -  510  4
                 final Format[] formats = Format.values();
    -  511  4
                 final String[] values = new String[formats.length];
    -  512  20
                 for (Format format : formats) {
    -  513  16
                     values[i++] = format.name();
    -  514   +  474   +
         private void populateSettings() {
    +  475  3
             InputStream taskProperties = null;
    +  476   +
             try {
    +  477  3
                 taskProperties = this.getClass().getClassLoader().getResourceAsStream(PROPERTIES_FILE);
    +  478  3
                 Settings.mergeProperties(taskProperties);
    +  479  0
             } catch (IOException ex) {
    +  480  0
                 Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.WARNING, "Unable to load the dependency-check ant task.properties file.");
    +  481  0
                 Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINE, null, ex);
    +  482   +
             } finally {
    +  483  3
                 if (taskProperties != null) {
    +  484   +
                     try {
    +  485  3
                         taskProperties.close();
    +  486  0
                     } catch (IOException ex) {
    +  487  0
                         Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINEST, null, ex);
    +  488  3
                     }
    +  489  
                 }
    -  515  4
                 return values;
    -  516   +  490  
             }
    +  491  3
             if (dataDirectory != null) {
    +  492  0
                 Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDirectory);
    +  493   +
             } else {
    +  494  3
                 final File jarPath = new File(DependencyCheckTask.class.getProtectionDomain().getCodeSource().getLocation().getPath());
    +  495  3
                 final File base = jarPath.getParentFile();
    +  496  3
                 final String sub = Settings.getString(Settings.KEYS.DATA_DIRECTORY);
    +  497  3
                 final File dataDir = new File(base, sub);
    +  498  3
                 Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDir.getAbsolutePath());
    +  499   +
             }
    +  500   +
     
    +  501  3
             Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, autoUpdate);
    +  502   +
     
    +  503  3
             if (proxyUrl != null && !proxyUrl.isEmpty()) {
    +  504  0
                 Settings.setString(Settings.KEYS.PROXY_URL, proxyUrl);
    +  505   +
             }
    +  506  3
             if (proxyPort != null && !proxyPort.isEmpty()) {
    +  507  0
                 Settings.setString(Settings.KEYS.PROXY_PORT, proxyPort);
    +  508   +
             }
    +  509  3
             if (proxyUsername != null && !proxyUsername.isEmpty()) {
    +  510  0
                 Settings.setString(Settings.KEYS.PROXY_USERNAME, proxyUsername);
    +  511   +
             }
    +  512  3
             if (proxyPassword != null && !proxyPassword.isEmpty()) {
    +  513  0
                 Settings.setString(Settings.KEYS.PROXY_PASSWORD, proxyPassword);
    +  514   +
             }
    +  515  3
             if (connectionTimeout != null && !connectionTimeout.isEmpty()) {
    +  516  0
                 Settings.setString(Settings.KEYS.CONNECTION_TIMEOUT, connectionTimeout);
     517   +
             }
    +  518  3
         }
    +  519   +
     
    +  520   +
         /**
    +  521   +
          * Checks to see if a vulnerability has been identified with a CVSS score
    +  522   +
          * that is above the threshold set in the configuration.
    +  523   +
          *
    +  524   +
          * @param dependencies the list of dependency objects
    +  525   +
          * @throws BuildException thrown if a CVSS score is found that is higher
    +  526   +
          * then the threshold set
    +  527   +
          */
    +  528   +
         private void checkForFailure(List<Dependency> dependencies) throws BuildException {
    +  529  0
             final StringBuilder ids = new StringBuilder();
    +  530  0
             for (Dependency d : dependencies) {
    +  531  0
                 for (Vulnerability v : d.getVulnerabilities()) {
    +  532  0
                     if (v.getCvssScore() >= failBuildOnCVSS) {
    +  533  0
                         if (ids.length() == 0) {
    +  534  0
                             ids.append(v.getName());
    +  535   +
                         } else {
    +  536  0
                             ids.append(", ").append(v.getName());
    +  537   +
                         }
    +  538   +
                     }
    +  539   +
                 }
    +  540   +
             }
    +  541  0
             if (ids.length() > 0) {
    +  542  0
                 final String msg = String.format("%n%nDependency-Check Failure:%n"
    +  543   +
                         + "One or more dependencies were identified with vulnerabilities that have a CVSS score greater then '%.1f': %s%n"
    +  544   +
                         + "See the dependency-check report for more details.%n%n", failBuildOnCVSS, ids.toString());
    +  545  0
                 throw new BuildException(msg);
    +  546   +
             }
    +  547  0
         }
    +  548   +
     
    +  549   +
         /**
    +  550   +
          * An enumeration of supported report formats: "ALL", "HTML", "XML", "VULN",
    +  551   +
          * etc..
    +  552   +
          */
    +  553  4
         public static class ReportFormats extends EnumeratedAttribute {
    +  554   +
     
    +  555   +
             /**
    +  556   +
              * Returns the list of values for the report format.
    +  557   +
              *
    +  558   +
              * @return the list of values for the report format
    +  559   +
              */
    +  560   +
             @Override
    +  561   +
             public String[] getValues() {
    +  562  4
                 int i = 0;
    +  563  4
                 final Format[] formats = Format.values();
    +  564  4
                 final String[] values = new String[formats.length];
    +  565  20
                 for (Format format : formats) {
    +  566  16
                     values[i++] = format.name();
    +  567   +
                 }
    +  568  4
                 return values;
    +  569   +
             }
    +  570  
         }
    -  518   +  571  
     }
    - + diff --git a/dependency-check-ant/configuration.html b/dependency-check-ant/configuration.html index 1f3375f98..4a2b86e25 100644 --- a/dependency-check-ant/configuration.html +++ b/dependency-check-ant/configuration.html @@ -1,13 +1,13 @@ - + dependency-check-ant - @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -231,6 +231,15 @@ +LogFile + +The file path to write verbose logging information. + +Optional + + + + ProxyUrl Defines the proxy used to connect to the Internet. @@ -238,17 +247,35 @@ Optional - + ProxyPort Defines the port for the proxy. +Optional + + + + +ProxyUsername + +Defines the proxy user name. + Optional +ProxyPassword + +Defines the proxy password. + +Optional + + + + ConnectionTimeout The connection timeout used when downloading data files from the Internet. diff --git a/dependency-check-ant/cpd.html b/dependency-check-ant/cpd.html index 8304b5b66..47ef1f7ed 100644 --- a/dependency-check-ant/cpd.html +++ b/dependency-check-ant/cpd.html @@ -1,13 +1,13 @@ - + dependency-check-ant - CPD Results @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-ant/dependency-updates-report.html b/dependency-check-ant/dependency-updates-report.html index 1ec7d55b3..349a6d769 100644 --- a/dependency-check-ant/dependency-updates-report.html +++ b/dependency-check-ant/dependency-updates-report.html @@ -1,13 +1,13 @@ - + dependency-check-ant - Dependency Updates Report @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -312,7 +312,7 @@ org.owasp dependency-check-core -1.0.4 +1.0.5 compile jar @@ -427,7 +427,7 @@ dependency-check-core Current Version -1.0.4 +1.0.5 Scope compile diff --git a/dependency-check-ant/findbugs.html b/dependency-check-ant/findbugs.html index ee657162b..800ca1201 100644 --- a/dependency-check-ant/findbugs.html +++ b/dependency-check-ant/findbugs.html @@ -1,13 +1,13 @@ - + dependency-check-ant - FindBugs Bug Detector Report @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -271,7 +271,7 @@ Inconsistent synchronization of org.owasp.dependencycheck.taskdefs.DependencyCheckTask.path; locked 44% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC -381 +428 Medium diff --git a/dependency-check-ant/index.html b/dependency-check-ant/index.html index f844743dc..c2130aceb 100644 --- a/dependency-check-ant/index.html +++ b/dependency-check-ant/index.html @@ -1,13 +1,13 @@ - + dependency-check-ant - About @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-ant/installation.html b/dependency-check-ant/installation.html index 114622f90..4f3d0423c 100644 --- a/dependency-check-ant/installation.html +++ b/dependency-check-ant/installation.html @@ -1,13 +1,13 @@ - + dependency-check-ant - @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -145,7 +145,7 @@

    Installation

    -

    Download dependency-check-ant from bintray here. To install dependency-check-ant place the dependency-check-ant-1.0.4.jar into the lib directory of your Ant instalation directory. Once installed you can add the taskdef to you build.xml and add the task to a new or existing target.

    +

    Download dependency-check-ant from bintray here. To install dependency-check-ant place the dependency-check-ant-1.0.5.jar into the lib directory of your Ant instalation directory. Once installed you can add the taskdef to you build.xml and add the task to a new or existing target.

    It is important to understand that the first time this task is executed it may take 20 minutes or more as it downloads and processes the data from the National Vulnerability Database (NVD) hosted by NIST: https://nvd.nist.gov

    After the first batch download, as long as the task is executed at least once every seven days the update will only take a few seconds.

    diff --git a/dependency-check-ant/license.html b/dependency-check-ant/license.html index 321607da2..ec2703e1d 100644 --- a/dependency-check-ant/license.html +++ b/dependency-check-ant/license.html @@ -1,13 +1,13 @@ - + dependency-check-ant - Project License @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-ant/plugin-updates-report.html b/dependency-check-ant/plugin-updates-report.html index 89dcf43c4..42339fca5 100644 --- a/dependency-check-ant/plugin-updates-report.html +++ b/dependency-check-ant/plugin-updates-report.html @@ -1,13 +1,13 @@ - + dependency-check-ant - Plugin Updates Report @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -689,7 +689,7 @@ 2.1 Newer versions -2.2 Next Minor
    2.2.1
    2.2.2
    2.3
    2.3.1
    2.3.2
    2.4
    2.4.1 Latest Minor +2.2 Next Minor
    2.2.1
    2.2.2
    2.3
    2.3.1
    2.3.2
    2.4
    2.4.1
    2.4.2 Latest Minor

    Plugin org.apache.maven.plugins:maven-resources-plugin

    diff --git a/dependency-check-ant/pmd.html b/dependency-check-ant/pmd.html index 923113dfc..bc3bacbc8 100644 --- a/dependency-check-ant/pmd.html +++ b/dependency-check-ant/pmd.html @@ -1,13 +1,13 @@ - + dependency-check-ant - PMD Results @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-ant/project-info.html b/dependency-check-ant/project-info.html index d3353e24c..50f39de91 100644 --- a/dependency-check-ant/project-info.html +++ b/dependency-check-ant/project-info.html @@ -1,13 +1,13 @@ - + dependency-check-ant - Project Information @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-ant/project-reports.html b/dependency-check-ant/project-reports.html index 396d97dd6..e1df876e8 100644 --- a/dependency-check-ant/project-reports.html +++ b/dependency-check-ant/project-reports.html @@ -1,13 +1,13 @@ - + dependency-check-ant - Generated Reports @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-ant/project-summary.html b/dependency-check-ant/project-summary.html index cb9d4c3a1..baab921e5 100644 --- a/dependency-check-ant/project-summary.html +++ b/dependency-check-ant/project-summary.html @@ -1,13 +1,13 @@ - + dependency-check-ant - Project Summary @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -210,7 +210,7 @@ - + diff --git a/dependency-check-ant/surefire-report.html b/dependency-check-ant/surefire-report.html index 08deffb68..f90721b47 100644 --- a/dependency-check-ant/surefire-report.html +++ b/dependency-check-ant/surefire-report.html @@ -1,13 +1,13 @@ - + dependency-check-ant - Surefire Report @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -266,7 +266,7 @@ function toggleDisplay(elementId) { -
    dependency-check-ant
    Version1.0.4
    1.0.5
    Type jar
    0 0 100%9.512

    +10.772

    Note: failures are anticipated and checked for with assertions while errors are unanticipated.


    Package List

    @@ -287,7 +287,7 @@ function toggleDisplay(elementId) { 0 0 100% -9.512
    +10.772

    Note: package statistics are not computed recursively, they only sum up all of its testsuites numbers.

    org.owasp.dependencycheck.taskdefs

    @@ -309,7 +309,7 @@ function toggleDisplay(elementId) { 0 0 100% -9.512

    +10.772

    Test Cases

    [Summary] [Package List] [Test Cases]

    @@ -319,19 +319,19 @@ function toggleDisplay(elementId) { testGetFailBuildOnCVSS -0.348 +0.459 testAddDirSet -3.735 +4.502 testAddFileSet -1.969 +3.329 testAddFileList -3.46

    +2.482
    diff --git a/dependency-check-ant/taglist.html b/dependency-check-ant/taglist.html index f8661ab7e..4881aa262 100644 --- a/dependency-check-ant/taglist.html +++ b/dependency-check-ant/taglist.html @@ -1,13 +1,13 @@ - + dependency-check-ant - Tag List report @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-ant/usage.html b/dependency-check-ant/usage.html index 8173470b4..37cc0babd 100644 --- a/dependency-check-ant/usage.html +++ b/dependency-check-ant/usage.html @@ -1,13 +1,13 @@ - + dependency-check-ant - @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-ant/xref-test/index.html b/dependency-check-ant/xref-test/index.html index 24005dcd5..078a0c055 100644 --- a/dependency-check-ant/xref-test/index.html +++ b/dependency-check-ant/xref-test/index.html @@ -3,7 +3,7 @@ - Dependency-Check Ant Task 1.0.4 Reference + Dependency-Check Ant Task 1.0.5 Reference diff --git a/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-frame.html b/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-frame.html index 308ea15f6..0cbf5be09 100644 --- a/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-frame.html +++ b/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Ant Task 1.0.4 Reference Package org.owasp.dependencycheck.taskdefs + Dependency-Check Ant Task 1.0.5 Reference Package org.owasp.dependencycheck.taskdefs diff --git a/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-summary.html b/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-summary.html index 6f2714fe5..1000cdd02 100644 --- a/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-summary.html +++ b/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Ant Task 1.0.4 Reference Package org.owasp.dependencycheck.taskdefs + Dependency-Check Ant Task 1.0.5 Reference Package org.owasp.dependencycheck.taskdefs diff --git a/dependency-check-ant/xref-test/overview-frame.html b/dependency-check-ant/xref-test/overview-frame.html index 31d4a0bcc..5575e7614 100644 --- a/dependency-check-ant/xref-test/overview-frame.html +++ b/dependency-check-ant/xref-test/overview-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Ant Task 1.0.4 Reference + Dependency-Check Ant Task 1.0.5 Reference diff --git a/dependency-check-ant/xref-test/overview-summary.html b/dependency-check-ant/xref-test/overview-summary.html index 161d787fc..2f05e62d8 100644 --- a/dependency-check-ant/xref-test/overview-summary.html +++ b/dependency-check-ant/xref-test/overview-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Ant Task 1.0.4 Reference + Dependency-Check Ant Task 1.0.5 Reference @@ -24,7 +24,7 @@ -

    Dependency-Check Ant Task 1.0.4 Reference

    +

    Dependency-Check Ant Task 1.0.5 Reference

    diff --git a/dependency-check-ant/xref/index.html b/dependency-check-ant/xref/index.html index 24005dcd5..078a0c055 100644 --- a/dependency-check-ant/xref/index.html +++ b/dependency-check-ant/xref/index.html @@ -3,7 +3,7 @@ - Dependency-Check Ant Task 1.0.4 Reference + Dependency-Check Ant Task 1.0.5 Reference diff --git a/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html b/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html index b850c5127..df780eeac 100644 --- a/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html +++ b/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html @@ -333,199 +333,252 @@ 323publicvoid setProxyPort(String proxyPort) { 324this.proxyPort = proxyPort; 325 } -326/** -327 * The Connection Timeout. -328 */ -329private String connectionTimeout; -330 -331/** -332 * Get the value of connectionTimeout. -333 * -334 * @return the value of connectionTimeout -335 */ -336public String getConnectionTimeout() { -337return connectionTimeout; -338 } -339 -340/** -341 * Set the value of connectionTimeout. -342 * -343 * @param connectionTimeout new value of connectionTimeout -344 */ -345publicvoid setConnectionTimeout(String connectionTimeout) { -346this.connectionTimeout = connectionTimeout; -347 } -348/** -349 * The file path used for verbose logging. -350 */ -351private String logFile = null; -352 -353/** -354 * Get the value of logFile. -355 * -356 * @return the value of logFile -357 */ -358public String getLogFile() { -359return logFile; -360 } -361 -362/** -363 * Set the value of logFile. -364 * -365 * @param logFile new value of logFile -366 */ -367publicvoid setLogFile(String logFile) { -368this.logFile = logFile; -369 } -370 -371 @Override -372publicvoid execute() throws BuildException { -373final InputStream in = DependencyCheckTask.class.getClassLoader().getResourceAsStream(LOG_PROPERTIES_FILE); -374 LogUtils.prepareLogger(in, logFile); -375 -376 dealWithReferences(); -377 validateConfiguration(); -378 populateSettings(); -379 -380final Engine engine = new Engine(); -381for (Resource resource : path) { -382final FileProvider provider = resource.as(FileProvider.class); -383if (provider != null) { -384final File file = provider.getFile(); -385if (file != null && file.exists()) { -386 engine.scan(file); -387 } -388 } -389 } -390try { -391 engine.analyzeDependencies(); -392final ReportGenerator reporter = new ReportGenerator(applicationName, engine.getDependencies(), engine.getAnalyzers()); -393 reporter.generateReports(reportOutputDirectory, reportFormat); -394 -395if (this.failBuildOnCVSS <= 10) { -396 checkForFailure(engine.getDependencies()); -397 } -398 } catch (IOException ex) { -399 Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINE, null, ex); -400thrownew BuildException("Unable to generate dependency-check report", ex); -401 } catch (Exception ex) { -402 Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.SEVERE, null, ex); -403thrownew BuildException("An exception occured; unable to continue task", ex); -404 } -405 } -406 -407/** -408 * Validate the configuration to ensure the parameters have been properly -409 * configured/initialized. -410 * -411 * @throws BuildException if the task was not configured correctly. -412 */ -413privatevoid validateConfiguration() throws BuildException { -414if (path == null) { -415thrownew BuildException("No project dependencies have been defined to analyze."); -416 } -417if (failBuildOnCVSS < 0 || failBuildOnCVSS > 11) { -418thrownew BuildException("Invalid configuration, failBuildOnCVSS must be between 0 and 11."); -419 } -420 } -421 -422/** -423 * Takes the properties supplied and updates the dependency-check settings. -424 * Additionally, this sets the system properties required to change the -425 * proxy url, port, and connection timeout. -426 */ -427privatevoid populateSettings() { -428 InputStream taskProperties = null; -429try { -430 taskProperties = this.getClass().getClassLoader().getResourceAsStream(PROPERTIES_FILE); -431 Settings.mergeProperties(taskProperties); -432 } catch (IOException ex) { -433 Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.WARNING, "Unable to load the dependency-check ant task.properties file."); -434 Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINE, null, ex); -435 } finally { -436if (taskProperties != null) { -437try { -438 taskProperties.close(); -439 } catch (IOException ex) { -440 Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINEST, null, ex); -441 } -442 } -443 } -444if (dataDirectory != null) { -445 Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDirectory); -446 } else { -447final File jarPath = new File(DependencyCheckTask.class.getProtectionDomain().getCodeSource().getLocation().getPath()); -448final File base = jarPath.getParentFile(); -449final String sub = Settings.getString(Settings.KEYS.DATA_DIRECTORY); -450final File dataDir = new File(base, sub); -451 Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDir.getAbsolutePath()); -452 } +326 +327/** +328 * The Proxy username. +329 */ +330private String proxyUsername; +331 +332/** +333 * Get the value of proxyUsername. +334 * +335 * @return the value of proxyUsername +336 */ +337public String getProxyUsername() { +338return proxyUsername; +339 } +340 +341/** +342 * Set the value of proxyUsername. +343 * +344 * @param proxyUsername new value of proxyUsername +345 */ +346publicvoid setProxyUsername(String proxyUsername) { +347this.proxyUsername = proxyUsername; +348 } +349 +350/** +351 * The Proxy password. +352 */ +353private String proxyPassword; +354 +355/** +356 * Get the value of proxyPassword. +357 * +358 * @return the value of proxyPassword +359 */ +360public String getProxyPassword() { +361return proxyPassword; +362 } +363 +364/** +365 * Set the value of proxyPassword. +366 * +367 * @param proxyPassword new value of proxyPassword +368 */ +369publicvoid setProxyPassword(String proxyPassword) { +370this.proxyPassword = proxyPassword; +371 } +372 +373/** +374 * The Connection Timeout. +375 */ +376private String connectionTimeout; +377 +378/** +379 * Get the value of connectionTimeout. +380 * +381 * @return the value of connectionTimeout +382 */ +383public String getConnectionTimeout() { +384return connectionTimeout; +385 } +386 +387/** +388 * Set the value of connectionTimeout. +389 * +390 * @param connectionTimeout new value of connectionTimeout +391 */ +392publicvoid setConnectionTimeout(String connectionTimeout) { +393this.connectionTimeout = connectionTimeout; +394 } +395/** +396 * The file path used for verbose logging. +397 */ +398private String logFile = null; +399 +400/** +401 * Get the value of logFile. +402 * +403 * @return the value of logFile +404 */ +405public String getLogFile() { +406return logFile; +407 } +408 +409/** +410 * Set the value of logFile. +411 * +412 * @param logFile new value of logFile +413 */ +414publicvoid setLogFile(String logFile) { +415this.logFile = logFile; +416 } +417 +418 @Override +419publicvoid execute() throws BuildException { +420final InputStream in = DependencyCheckTask.class.getClassLoader().getResourceAsStream(LOG_PROPERTIES_FILE); +421 LogUtils.prepareLogger(in, logFile); +422 +423 dealWithReferences(); +424 validateConfiguration(); +425 populateSettings(); +426 +427final Engine engine = new Engine(); +428for (Resource resource : path) { +429final FileProvider provider = resource.as(FileProvider.class); +430if (provider != null) { +431final File file = provider.getFile(); +432if (file != null && file.exists()) { +433 engine.scan(file); +434 } +435 } +436 } +437try { +438 engine.analyzeDependencies(); +439final ReportGenerator reporter = new ReportGenerator(applicationName, engine.getDependencies(), engine.getAnalyzers()); +440 reporter.generateReports(reportOutputDirectory, reportFormat); +441 +442if (this.failBuildOnCVSS <= 10) { +443 checkForFailure(engine.getDependencies()); +444 } +445 } catch (IOException ex) { +446 Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINE, null, ex); +447thrownew BuildException("Unable to generate dependency-check report", ex); +448 } catch (Exception ex) { +449 Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.SEVERE, null, ex); +450thrownew BuildException("An exception occured; unable to continue task", ex); +451 } +452 } 453 -454 Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, autoUpdate); -455 -456if (proxyUrl != null && !proxyUrl.isEmpty()) { -457 Settings.setString(Settings.KEYS.PROXY_URL, proxyUrl); -458 } -459if (proxyPort != null && !proxyPort.isEmpty()) { -460 Settings.setString(Settings.KEYS.PROXY_PORT, proxyPort); -461 } -462if (connectionTimeout != null && !connectionTimeout.isEmpty()) { -463 Settings.setString(Settings.KEYS.CONNECTION_TIMEOUT, connectionTimeout); -464 } -465 } -466 -467/** -468 * Checks to see if a vulnerability has been identified with a CVSS score -469 * that is above the threshold set in the configuration. -470 * -471 * @param dependencies the list of dependency objects -472 * @throws BuildException thrown if a CVSS score is found that is higher -473 * then the threshold set -474 */ -475privatevoid checkForFailure(List<Dependency> dependencies) throws BuildException { -476final StringBuilder ids = new StringBuilder(); -477for (Dependency d : dependencies) { -478for (Vulnerability v : d.getVulnerabilities()) { -479if (v.getCvssScore() >= failBuildOnCVSS) { -480if (ids.length() == 0) { -481 ids.append(v.getName()); -482 } else { -483 ids.append(", ").append(v.getName()); -484 } -485 } -486 } -487 } -488if (ids.length() > 0) { -489final String msg = String.format("%n%nDependency-Check Failure:%n" -490 + "One or more dependencies were identified with vulnerabilities that have a CVSS score greater then '%.1f': %s%n" -491 + "See the dependency-check report for more details.%n%n", failBuildOnCVSS, ids.toString()); -492thrownew BuildException(msg); -493 } -494 } -495 -496/** -497 * An enumeration of supported report formats: "ALL", "HTML", "XML", "VULN", -498 * etc.. -499 */ -500publicstaticclassReportFormatsextends EnumeratedAttribute { -501 -502/** -503 * Returns the list of values for the report format. -504 * -505 * @return the list of values for the report format -506 */ -507 @Override -508public String[] getValues() { -509int i = 0; -510final Format[] formats = Format.values(); -511final String[] values = new String[formats.length]; -512for (Format format : formats) { -513 values[i++] = format.name(); -514 } -515return values; -516 } -517 } -518 } +454/** +455 * Validate the configuration to ensure the parameters have been properly +456 * configured/initialized. +457 * +458 * @throws BuildException if the task was not configured correctly. +459 */ +460privatevoid validateConfiguration() throws BuildException { +461if (path == null) { +462thrownew BuildException("No project dependencies have been defined to analyze."); +463 } +464if (failBuildOnCVSS < 0 || failBuildOnCVSS > 11) { +465thrownew BuildException("Invalid configuration, failBuildOnCVSS must be between 0 and 11."); +466 } +467 } +468 +469/** +470 * Takes the properties supplied and updates the dependency-check settings. +471 * Additionally, this sets the system properties required to change the +472 * proxy url, port, and connection timeout. +473 */ +474privatevoid populateSettings() { +475 InputStream taskProperties = null; +476try { +477 taskProperties = this.getClass().getClassLoader().getResourceAsStream(PROPERTIES_FILE); +478 Settings.mergeProperties(taskProperties); +479 } catch (IOException ex) { +480 Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.WARNING, "Unable to load the dependency-check ant task.properties file."); +481 Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINE, null, ex); +482 } finally { +483if (taskProperties != null) { +484try { +485 taskProperties.close(); +486 } catch (IOException ex) { +487 Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINEST, null, ex); +488 } +489 } +490 } +491if (dataDirectory != null) { +492 Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDirectory); +493 } else { +494final File jarPath = new File(DependencyCheckTask.class.getProtectionDomain().getCodeSource().getLocation().getPath()); +495final File base = jarPath.getParentFile(); +496final String sub = Settings.getString(Settings.KEYS.DATA_DIRECTORY); +497final File dataDir = new File(base, sub); +498 Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDir.getAbsolutePath()); +499 } +500 +501 Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, autoUpdate); +502 +503if (proxyUrl != null && !proxyUrl.isEmpty()) { +504 Settings.setString(Settings.KEYS.PROXY_URL, proxyUrl); +505 } +506if (proxyPort != null && !proxyPort.isEmpty()) { +507 Settings.setString(Settings.KEYS.PROXY_PORT, proxyPort); +508 } +509if (proxyUsername != null && !proxyUsername.isEmpty()) { +510 Settings.setString(Settings.KEYS.PROXY_USERNAME, proxyUsername); +511 } +512if (proxyPassword != null && !proxyPassword.isEmpty()) { +513 Settings.setString(Settings.KEYS.PROXY_PASSWORD, proxyPassword); +514 } +515if (connectionTimeout != null && !connectionTimeout.isEmpty()) { +516 Settings.setString(Settings.KEYS.CONNECTION_TIMEOUT, connectionTimeout); +517 } +518 } +519 +520/** +521 * Checks to see if a vulnerability has been identified with a CVSS score +522 * that is above the threshold set in the configuration. +523 * +524 * @param dependencies the list of dependency objects +525 * @throws BuildException thrown if a CVSS score is found that is higher +526 * then the threshold set +527 */ +528privatevoid checkForFailure(List<Dependency> dependencies) throws BuildException { +529final StringBuilder ids = new StringBuilder(); +530for (Dependency d : dependencies) { +531for (Vulnerability v : d.getVulnerabilities()) { +532if (v.getCvssScore() >= failBuildOnCVSS) { +533if (ids.length() == 0) { +534 ids.append(v.getName()); +535 } else { +536 ids.append(", ").append(v.getName()); +537 } +538 } +539 } +540 } +541if (ids.length() > 0) { +542final String msg = String.format("%n%nDependency-Check Failure:%n" +543 + "One or more dependencies were identified with vulnerabilities that have a CVSS score greater then '%.1f': %s%n" +544 + "See the dependency-check report for more details.%n%n", failBuildOnCVSS, ids.toString()); +545thrownew BuildException(msg); +546 } +547 } +548 +549/** +550 * An enumeration of supported report formats: "ALL", "HTML", "XML", "VULN", +551 * etc.. +552 */ +553publicstaticclassReportFormatsextends EnumeratedAttribute { +554 +555/** +556 * Returns the list of values for the report format. +557 * +558 * @return the list of values for the report format +559 */ +560 @Override +561public String[] getValues() { +562int i = 0; +563final Format[] formats = Format.values(); +564final String[] values = new String[formats.length]; +565for (Format format : formats) { +566 values[i++] = format.name(); +567 } +568return values; +569 } +570 } +571 }
    diff --git a/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-frame.html b/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-frame.html index 442aa7d66..1f58c432e 100644 --- a/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-frame.html +++ b/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Ant Task 1.0.4 Reference Package org.owasp.dependencycheck.taskdefs + Dependency-Check Ant Task 1.0.5 Reference Package org.owasp.dependencycheck.taskdefs diff --git a/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-summary.html b/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-summary.html index 009bb97d5..6dcea53a0 100644 --- a/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-summary.html +++ b/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Ant Task 1.0.4 Reference Package org.owasp.dependencycheck.taskdefs + Dependency-Check Ant Task 1.0.5 Reference Package org.owasp.dependencycheck.taskdefs diff --git a/dependency-check-ant/xref/overview-frame.html b/dependency-check-ant/xref/overview-frame.html index 31d4a0bcc..5575e7614 100644 --- a/dependency-check-ant/xref/overview-frame.html +++ b/dependency-check-ant/xref/overview-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Ant Task 1.0.4 Reference + Dependency-Check Ant Task 1.0.5 Reference diff --git a/dependency-check-ant/xref/overview-summary.html b/dependency-check-ant/xref/overview-summary.html index 161d787fc..2f05e62d8 100644 --- a/dependency-check-ant/xref/overview-summary.html +++ b/dependency-check-ant/xref/overview-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Ant Task 1.0.4 Reference + Dependency-Check Ant Task 1.0.5 Reference @@ -24,7 +24,7 @@ -

    Dependency-Check Ant Task 1.0.4 Reference

    +

    Dependency-Check Ant Task 1.0.5 Reference

    diff --git a/dependency-check-cli/apidocs/allclasses-frame.html b/dependency-check-cli/apidocs/allclasses-frame.html index 2140049a2..76e69d10d 100644 --- a/dependency-check-cli/apidocs/allclasses-frame.html +++ b/dependency-check-cli/apidocs/allclasses-frame.html @@ -2,13 +2,13 @@ - + -All Classes (Dependency-Check Command Line 1.0.4 API) +All Classes (Dependency-Check Command Line 1.0.5 API) - + diff --git a/dependency-check-cli/apidocs/allclasses-noframe.html b/dependency-check-cli/apidocs/allclasses-noframe.html index 00c50759e..29c2984ca 100644 --- a/dependency-check-cli/apidocs/allclasses-noframe.html +++ b/dependency-check-cli/apidocs/allclasses-noframe.html @@ -2,13 +2,13 @@ - + -All Classes (Dependency-Check Command Line 1.0.4 API) +All Classes (Dependency-Check Command Line 1.0.5 API) - + diff --git a/dependency-check-cli/apidocs/constant-values.html b/dependency-check-cli/apidocs/constant-values.html index 997b3c6f8..37149909e 100644 --- a/dependency-check-cli/apidocs/constant-values.html +++ b/dependency-check-cli/apidocs/constant-values.html @@ -2,13 +2,13 @@ - + -Constant Field Values (Dependency-Check Command Line 1.0.4 API) +Constant Field Values (Dependency-Check Command Line 1.0.5 API) - + @@ -16,7 +16,7 @@ Constant Field Values (Dependency-Check Command Line 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Constant Field Values (Dependency-Check Command Line 1.0.4 API)"; + parent.document.title="Constant Field Values (Dependency-Check Command Line 1.0.5 API)"; } } @@ -200,6 +200,18 @@ org.owasp.* + + + + + + + + + + @@ -224,6 +236,18 @@ org.owasp.* + + + + + + + + + + diff --git a/dependency-check-cli/apidocs/deprecated-list.html b/dependency-check-cli/apidocs/deprecated-list.html index f21e52b42..931d28f4c 100644 --- a/dependency-check-cli/apidocs/deprecated-list.html +++ b/dependency-check-cli/apidocs/deprecated-list.html @@ -2,13 +2,13 @@ - + -Deprecated List (Dependency-Check Command Line 1.0.4 API) +Deprecated List (Dependency-Check Command Line 1.0.5 API) - + @@ -16,7 +16,7 @@ Deprecated List (Dependency-Check Command Line 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Deprecated List (Dependency-Check Command Line 1.0.4 API)"; + parent.document.title="Deprecated List (Dependency-Check Command Line 1.0.5 API)"; } } diff --git a/dependency-check-cli/apidocs/help-doc.html b/dependency-check-cli/apidocs/help-doc.html index 6efe0aa94..34f65dfcf 100644 --- a/dependency-check-cli/apidocs/help-doc.html +++ b/dependency-check-cli/apidocs/help-doc.html @@ -2,13 +2,13 @@ - + -API Help (Dependency-Check Command Line 1.0.4 API) +API Help (Dependency-Check Command Line 1.0.5 API) - + @@ -16,7 +16,7 @@ API Help (Dependency-Check Command Line 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="API Help (Dependency-Check Command Line 1.0.4 API)"; + parent.document.title="API Help (Dependency-Check Command Line 1.0.5 API)"; } } diff --git a/dependency-check-cli/apidocs/index-all.html b/dependency-check-cli/apidocs/index-all.html index 8ced834c9..d7a324820 100644 --- a/dependency-check-cli/apidocs/index-all.html +++ b/dependency-check-cli/apidocs/index-all.html @@ -2,13 +2,13 @@ - + -Index (Dependency-Check Command Line 1.0.4 API) +Index (Dependency-Check Command Line 1.0.5 API) - + @@ -16,7 +16,7 @@ Index (Dependency-Check Command Line 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Index (Dependency-Check Command Line 1.0.4 API)"; + parent.document.title="Index (Dependency-Check Command Line 1.0.5 API)"; } } @@ -108,10 +108,10 @@ Constructor for class org.owasp.dependencycheck.cli.CONNECTION_TIMEOUT - Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName -
    The CLI argument name indicating the proxy url. +
    The CLI argument name indicating the connection timeout.
    CONNECTION_TIMEOUT_SHORT - Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName -
    The short CLI argument name indicating the proxy url. +
    The short CLI argument name indicating the connection timeout.

    @@ -147,12 +147,18 @@ Method in class org.owasp.dependencycheck.cli.getPropertiesFile() - Method in class org.owasp.dependencycheck.cli.CliParser
    Returns the properties file specified on the command line. +
    getProxyPassword() - +Method in class org.owasp.dependencycheck.cli.CliParser +
    Returns the proxy password.
    getProxyPort() - Method in class org.owasp.dependencycheck.cli.CliParser
    Returns the proxy port.
    getProxyUrl() - Method in class org.owasp.dependencycheck.cli.CliParser
    Returns the proxy url. +
    getProxyUsername() - +Method in class org.owasp.dependencycheck.cli.CliParser +
    Returns the proxy username.
    getReportDirectory() - Method in class org.owasp.dependencycheck.cli.CliParser
    Returns the directory to write the reports to specified on the command @@ -258,6 +264,12 @@ Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName
    The short CLI argument name for setting the location of an additional properties file. +
    PROXY_PASSWORD - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The CLI argument name indicating the proxy password. +
    PROXY_PASSWORD_SHORT - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The short CLI argument name indicating the proxy password.
    PROXY_PORT - Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName
    The CLI argument name indicating the proxy port. @@ -270,6 +282,12 @@ Static variable in class org.owasp.dependencycheck.cli.PROXY_URL_SHORT - Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName
    The short CLI argument name indicating the proxy url. +
    PROXY_USERNAME - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The CLI argument name indicating the proxy username. +
    PROXY_USERNAME_SHORT - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The short CLI argument name indicating the proxy username.

    diff --git a/dependency-check-cli/apidocs/index.html b/dependency-check-cli/apidocs/index.html index 7ed203cb4..ee9f6f2f9 100644 --- a/dependency-check-cli/apidocs/index.html +++ b/dependency-check-cli/apidocs/index.html @@ -2,10 +2,10 @@ - + -Dependency-Check Command Line 1.0.4 API +Dependency-Check Command Line 1.0.5 API diff --git a/dependency-check-cli/apidocs/org/owasp/dependencycheck/class-use/App.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/class-use/App.html index 564bf329d..e0b72ee54 100644 --- a/dependency-check-cli/apidocs/org/owasp/dependencycheck/class-use/App.html +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/class-use/App.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.App (Dependency-Check Command Line 1.0.4 API) +Uses of Class org.owasp.dependencycheck.App (Dependency-Check Command Line 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.App (Dependency-Check Command Line 1.0.4 function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.App (Dependency-Check Command Line 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.App (Dependency-Check Command Line 1.0.5 API)"; } } diff --git a/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.ArgumentName.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.ArgumentName.html index 18b3fdc3f..88b43fe6b 100644 --- a/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.ArgumentName.html +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.ArgumentName.html @@ -2,13 +2,13 @@ - + -CliParser.ArgumentName (Dependency-Check Command Line 1.0.4 API) +CliParser.ArgumentName (Dependency-Check Command Line 1.0.5 API) - + @@ -16,7 +16,7 @@ CliParser.ArgumentName (Dependency-Check Command Line 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="CliParser.ArgumentName (Dependency-Check Command Line 1.0.4 API)"; + parent.document.title="CliParser.ArgumentName (Dependency-Check Command Line 1.0.5 API)"; } } @@ -145,7 +145,7 @@ A collection of static final strings that represent the possible command

    +          The CLI argument name indicating the connection timeout. +          The short CLI argument name indicating the connection timeout. + + + + + + + + + + + + + + + + + + + + + + + + -
    "p"
    +public static final StringPROXY_PASSWORD"proxypass"
    +public static final StringPROXY_PASSWORD_SHORT"pp"
    public static final String PROXY_PORT "u"
    +public static final StringPROXY_USERNAME"proxyuser"
    +public static final StringPROXY_USERNAME_SHORT"pu"
    public static final String SCAN CONNECTION_TIMEOUT
    -          The CLI argument name indicating the proxy url.
    @@ -153,7 +153,7 @@ A collection of static final strings that represent the possible command CONNECTION_TIMEOUT_SHORT
    -          The short CLI argument name indicating the proxy url.
    @@ -261,6 +261,22 @@ A collection of static final strings that represent the possible command
    static StringPROXY_PASSWORD + +
    +          The CLI argument name indicating the proxy password.
    +static StringPROXY_PASSWORD_SHORT + +
    +          The short CLI argument name indicating the proxy password.
    +static String PROXY_PORT
    @@ -293,6 +309,22 @@ A collection of static final strings that represent the possible command
    static StringPROXY_USERNAME + +
    +          The CLI argument name indicating the proxy username.
    +static StringPROXY_USERNAME_SHORT + +
    +          The short CLI argument name indicating the proxy username.
    +static String SCAN
    @@ -612,12 +644,60 @@ public static final

    +PROXY_USERNAME_SHORT

    +
    +public static final String PROXY_USERNAME_SHORT
    +
    +
    The short CLI argument name indicating the proxy username. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +PROXY_USERNAME

    +
    +public static final String PROXY_USERNAME
    +
    +
    The CLI argument name indicating the proxy username. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +PROXY_PASSWORD_SHORT

    +
    +public static final String PROXY_PASSWORD_SHORT
    +
    +
    The short CLI argument name indicating the proxy password. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +PROXY_PASSWORD

    +
    +public static final String PROXY_PASSWORD
    +
    +
    The CLI argument name indicating the proxy password. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    +

    CONNECTION_TIMEOUT_SHORT

     public static final String CONNECTION_TIMEOUT_SHORT
    -
    The short CLI argument name indicating the proxy url. +
    The short CLI argument name indicating the connection timeout.

    See Also:
    Constant Field Values
    @@ -629,7 +709,7 @@ CONNECTION_TIMEOUT
     public static final String CONNECTION_TIMEOUT
    -
    The CLI argument name indicating the proxy url. +
    The CLI argument name indicating the connection timeout.

    See Also:
    Constant Field Values
    diff --git a/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.html index c502579e6..fa2595e7b 100644 --- a/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.html +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.html @@ -2,13 +2,13 @@ - + -CliParser (Dependency-Check Command Line 1.0.4 API) +CliParser (Dependency-Check Command Line 1.0.5 API) - + @@ -16,7 +16,7 @@ CliParser (Dependency-Check Command Line 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="CliParser (Dependency-Check Command Line 1.0.4 API)"; + parent.document.title="CliParser (Dependency-Check Command Line 1.0.5 API)"; } } @@ -191,6 +191,14 @@ A utility to parse command line arguments for the DependencyCheck.
     StringgetProxyPassword() + +
    +          Returns the proxy password.
    + String getProxyPort()
    @@ -207,6 +215,14 @@ A utility to parse command line arguments for the DependencyCheck.
     StringgetProxyUsername() + +
    +          Returns the proxy username.
    + String getReportDirectory()
    @@ -509,6 +525,34 @@ public

    +getProxyUsername

    +
    +public String getProxyUsername()
    +
    +
    Returns the proxy username. +

    +

    + +
    Returns:
    the proxy username
    +
    +
    +
    + +

    +getProxyPassword

    +
    +public String getProxyPassword()
    +
    +
    Returns the proxy password. +

    +

    + +
    Returns:
    the proxy password
    +
    +
    +
    +

    getDataDirectory

    diff --git a/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/class-use/CliParser.ArgumentName.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/class-use/CliParser.ArgumentName.html
    index 3691614c5..05fc0c231 100644
    --- a/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/class-use/CliParser.ArgumentName.html
    +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/class-use/CliParser.ArgumentName.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Uses of Class org.owasp.dependencycheck.cli.CliParser.ArgumentName (Dependency-Check Command Line 1.0.4 API)
    +Uses of Class org.owasp.dependencycheck.cli.CliParser.ArgumentName (Dependency-Check Command Line 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.cli.CliParser.ArgumentName (Dependency-C
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="Uses of Class org.owasp.dependencycheck.cli.CliParser.ArgumentName (Dependency-Check Command Line 1.0.4 API)";
    +        parent.document.title="Uses of Class org.owasp.dependencycheck.cli.CliParser.ArgumentName (Dependency-Check Command Line 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/class-use/CliParser.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/class-use/CliParser.html
    index 5c7f40a39..41107d01c 100644
    --- a/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/class-use/CliParser.html
    +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/class-use/CliParser.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Uses of Class org.owasp.dependencycheck.cli.CliParser (Dependency-Check Command Line 1.0.4 API)
    +Uses of Class org.owasp.dependencycheck.cli.CliParser (Dependency-Check Command Line 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.cli.CliParser (Dependency-Check Command
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="Uses of Class org.owasp.dependencycheck.cli.CliParser (Dependency-Check Command Line 1.0.4 API)";
    +        parent.document.title="Uses of Class org.owasp.dependencycheck.cli.CliParser (Dependency-Check Command Line 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-frame.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-frame.html
    index b22725837..56595f684 100644
    --- a/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-frame.html
    +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-frame.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -org.owasp.dependencycheck.cli (Dependency-Check Command Line 1.0.4 API)
    +org.owasp.dependencycheck.cli (Dependency-Check Command Line 1.0.5 API)
     
     
    -
    +
     
     
     
    diff --git a/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-summary.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-summary.html
    index 95b2c2f8f..23d213f6d 100644
    --- a/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-summary.html
    +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-summary.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -org.owasp.dependencycheck.cli (Dependency-Check Command Line 1.0.4 API)
    +org.owasp.dependencycheck.cli (Dependency-Check Command Line 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ org.owasp.dependencycheck.cli (Dependency-Check Command Line 1.0.4 API)
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="org.owasp.dependencycheck.cli (Dependency-Check Command Line 1.0.4 API)";
    +        parent.document.title="org.owasp.dependencycheck.cli (Dependency-Check Command Line 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-tree.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-tree.html
    index f5eb0bb91..dca6afcbf 100644
    --- a/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-tree.html
    +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-tree.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -org.owasp.dependencycheck.cli Class Hierarchy (Dependency-Check Command Line 1.0.4 API)
    +org.owasp.dependencycheck.cli Class Hierarchy (Dependency-Check Command Line 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ org.owasp.dependencycheck.cli Class Hierarchy (Dependency-Check Command Line 1.0
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="org.owasp.dependencycheck.cli Class Hierarchy (Dependency-Check Command Line 1.0.4 API)";
    +        parent.document.title="org.owasp.dependencycheck.cli Class Hierarchy (Dependency-Check Command Line 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-use.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-use.html
    index d59944796..048ff6d77 100644
    --- a/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-use.html
    +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-use.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Uses of Package org.owasp.dependencycheck.cli (Dependency-Check Command Line 1.0.4 API)
    +Uses of Package org.owasp.dependencycheck.cli (Dependency-Check Command Line 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ Uses of Package org.owasp.dependencycheck.cli (Dependency-Check Command Line 1.0
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="Uses of Package org.owasp.dependencycheck.cli (Dependency-Check Command Line 1.0.4 API)";
    +        parent.document.title="Uses of Package org.owasp.dependencycheck.cli (Dependency-Check Command Line 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-frame.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-frame.html
    index 260e99a7d..ccd7885b0 100644
    --- a/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-frame.html
    +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-frame.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -org.owasp.dependencycheck (Dependency-Check Command Line 1.0.4 API)
    +org.owasp.dependencycheck (Dependency-Check Command Line 1.0.5 API)
     
     
    -
    +
     
     
     
    diff --git a/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-summary.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-summary.html
    index 4b4edaead..76b8b485e 100644
    --- a/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-summary.html
    +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-summary.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -org.owasp.dependencycheck (Dependency-Check Command Line 1.0.4 API)
    +org.owasp.dependencycheck (Dependency-Check Command Line 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ org.owasp.dependencycheck (Dependency-Check Command Line 1.0.4 API)
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="org.owasp.dependencycheck (Dependency-Check Command Line 1.0.4 API)";
    +        parent.document.title="org.owasp.dependencycheck (Dependency-Check Command Line 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-tree.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-tree.html
    index d7c9f8d23..d142c573a 100644
    --- a/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-tree.html
    +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-tree.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -org.owasp.dependencycheck Class Hierarchy (Dependency-Check Command Line 1.0.4 API)
    +org.owasp.dependencycheck Class Hierarchy (Dependency-Check Command Line 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ org.owasp.dependencycheck Class Hierarchy (Dependency-Check Command Line 1.0.4 A
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="org.owasp.dependencycheck Class Hierarchy (Dependency-Check Command Line 1.0.4 API)";
    +        parent.document.title="org.owasp.dependencycheck Class Hierarchy (Dependency-Check Command Line 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-use.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-use.html
    index ad8af6f88..7c0d33516 100644
    --- a/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-use.html
    +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-use.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Uses of Package org.owasp.dependencycheck (Dependency-Check Command Line 1.0.4 API)
    +Uses of Package org.owasp.dependencycheck (Dependency-Check Command Line 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ Uses of Package org.owasp.dependencycheck (Dependency-Check Command Line 1.0.4 A
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="Uses of Package org.owasp.dependencycheck (Dependency-Check Command Line 1.0.4 API)";
    +        parent.document.title="Uses of Package org.owasp.dependencycheck (Dependency-Check Command Line 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-cli/apidocs/overview-frame.html b/dependency-check-cli/apidocs/overview-frame.html
    index a632ca094..45dbbe0a6 100644
    --- a/dependency-check-cli/apidocs/overview-frame.html
    +++ b/dependency-check-cli/apidocs/overview-frame.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Overview List (Dependency-Check Command Line 1.0.4 API)
    +Overview List (Dependency-Check Command Line 1.0.5 API)
     
     
    -
    +
     
     
     
    diff --git a/dependency-check-cli/apidocs/overview-summary.html b/dependency-check-cli/apidocs/overview-summary.html
    index 743f7776e..cc0764a3f 100644
    --- a/dependency-check-cli/apidocs/overview-summary.html
    +++ b/dependency-check-cli/apidocs/overview-summary.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Overview (Dependency-Check Command Line 1.0.4 API)
    +Overview (Dependency-Check Command Line 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ Overview (Dependency-Check Command Line 1.0.4 API)
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="Overview (Dependency-Check Command Line 1.0.4 API)";
    +        parent.document.title="Overview (Dependency-Check Command Line 1.0.5 API)";
         }
     }
     
    @@ -82,7 +82,7 @@ function windowTitle()
     

    -Dependency-Check Command Line 1.0.4 API +Dependency-Check Command Line 1.0.5 API

    diff --git a/dependency-check-cli/apidocs/overview-tree.html b/dependency-check-cli/apidocs/overview-tree.html index d26aff4ea..3933857e3 100644 --- a/dependency-check-cli/apidocs/overview-tree.html +++ b/dependency-check-cli/apidocs/overview-tree.html @@ -2,13 +2,13 @@ - + -Class Hierarchy (Dependency-Check Command Line 1.0.4 API) +Class Hierarchy (Dependency-Check Command Line 1.0.5 API) - + @@ -16,7 +16,7 @@ Class Hierarchy (Dependency-Check Command Line 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Class Hierarchy (Dependency-Check Command Line 1.0.4 API)"; + parent.document.title="Class Hierarchy (Dependency-Check Command Line 1.0.5 API)"; } } diff --git a/dependency-check-cli/checkstyle.html b/dependency-check-cli/checkstyle.html index 1b3ce3716..f2361ce42 100644 --- a/dependency-check-cli/checkstyle.html +++ b/dependency-check-cli/checkstyle.html @@ -1,13 +1,13 @@ - + dependency-check-cli - Checkstyle Results @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -231,7 +231,7 @@
    14 0 01
    +4

    Files

    @@ -241,6 +241,11 @@ + + + + + @@ -248,14 +253,33 @@

    Details

    -

    src/main/java/org/owasp/dependencycheck/cli/CliParser.java

    +

    src/main/java/org/owasp/dependencycheck/App.java

    Warnings Errors
    src/main/java/org/owasp/dependencycheck/App.java003
    src/main/java/org/owasp/dependencycheck/cli/CliParser.java 0 0
    - + + + + + + + + + + +
    Violation Message Line
    ErrorsMore than 7 parameters (found 8).153
    ErrorsExpected @param tag for 'proxyUser'.154
    ErrorsExpected @param tag for 'proxyPass'.154
    +
    +

    src/main/java/org/owasp/dependencycheck/cli/CliParser.java

    + + + + + + +
    ViolationMessageLine
    Errors Line is longer than 150 characters (found 160). 103
    diff --git a/dependency-check-cli/checkstyle.rss b/dependency-check-cli/checkstyle.rss index 556aa7170..83f20a894 100644 --- a/dependency-check-cli/checkstyle.rss +++ b/dependency-check-cli/checkstyle.rss @@ -9,7 +9,7 @@ ©2012 - 2013 OWASP File: 14, - Errors: 1, + Errors: 4, Warnings: 0, Infos: 0 @@ -122,7 +122,7 @@ 0 - 0 + 3 diff --git a/dependency-check-cli/cobertura/frame-sourcefiles-org.owasp.dependencycheck.cli.html b/dependency-check-cli/cobertura/frame-sourcefiles-org.owasp.dependencycheck.cli.html index e504cdf3d..d8822950c 100644 --- a/dependency-check-cli/cobertura/frame-sourcefiles-org.owasp.dependencycheck.cli.html +++ b/dependency-check-cli/cobertura/frame-sourcefiles-org.owasp.dependencycheck.cli.html @@ -15,7 +15,7 @@ org.owasp.dependencycheck.cli - +
    CliParser (77%)CliParser (76%)
    diff --git a/dependency-check-cli/cobertura/frame-sourcefiles.html b/dependency-check-cli/cobertura/frame-sourcefiles.html index 16fc06010..7b4e2c99b 100644 --- a/dependency-check-cli/cobertura/frame-sourcefiles.html +++ b/dependency-check-cli/cobertura/frame-sourcefiles.html @@ -18,7 +18,7 @@ All Packages App (0%) -CliParser (77%) +CliParser (76%) diff --git a/dependency-check-cli/cobertura/frame-summary-org.owasp.dependencycheck.cli.html b/dependency-check-cli/cobertura/frame-summary-org.owasp.dependencycheck.cli.html index d2be7c131..3c2d5ba83 100644 --- a/dependency-check-cli/cobertura/frame-summary-org.owasp.dependencycheck.cli.html +++ b/dependency-check-cli/cobertura/frame-summary-org.owasp.dependencycheck.cli.html @@ -16,7 +16,7 @@ - +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.cli2
    77%
    67/87
    71%
    23/32
    1.773
    org.owasp.dependencycheck.cli2
    76%
    71/93
    71%
    23/32
    1.708
    - + diff --git a/dependency-check-cli/cobertura/frame-summary-org.owasp.dependencycheck.html b/dependency-check-cli/cobertura/frame-summary-org.owasp.dependencycheck.html index cba19f03f..34cb7fe91 100644 --- a/dependency-check-cli/cobertura/frame-summary-org.owasp.dependencycheck.html +++ b/dependency-check-cli/cobertura/frame-summary-org.owasp.dependencycheck.html @@ -16,8 +16,8 @@ - - + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck1
    0%
    0/69
    0%
    0/24
    6
    org.owasp.dependencycheck.cli2
    77%
    67/87
    71%
    23/32
    1.773
    org.owasp.dependencycheck1
    0%
    0/73
    0%
    0/32
    7
    org.owasp.dependencycheck.cli2
    76%
    71/93
    71%
    23/32
    1.708
    - + diff --git a/dependency-check-cli/cobertura/frame-summary.html b/dependency-check-cli/cobertura/frame-summary.html index 9b95e5ed5..dc5340300 100644 --- a/dependency-check-cli/cobertura/frame-summary.html +++ b/dependency-check-cli/cobertura/frame-summary.html @@ -16,9 +16,9 @@ - - - + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    All Packages3
    42%
    67/156
    41%
    23/56
    2.423
    org.owasp.dependencycheck1
    0%
    0/69
    0%
    0/24
    6
    org.owasp.dependencycheck.cli2
    77%
    67/87
    71%
    23/32
    1.773
    All Packages3
    42%
    71/166
    35%
    23/64
    2.464
    org.owasp.dependencycheck1
    0%
    0/73
    0%
    0/32
    7
    org.owasp.dependencycheck.cli2
    76%
    71/93
    71%
    23/32
    1.708
    - + diff --git a/dependency-check-cli/cobertura/org.owasp.dependencycheck.App.html b/dependency-check-cli/cobertura/org.owasp.dependencycheck.App.html index eb9901bf8..6c3a5fd16 100644 --- a/dependency-check-cli/cobertura/org.owasp.dependencycheck.App.html +++ b/dependency-check-cli/cobertura/org.owasp.dependencycheck.App.html @@ -12,7 +12,7 @@
     
    - +
    Classes in this File Line Coverage Branch Coverage Complexity
    App
    0%
    0/69
    0%
    0/24
    6
    App
    0%
    0/73
    0%
    0/32
    7
     
    @@ -197,141 +197,151 @@  99  0
             } else if (cli.isRunScan()) {
     100  0
                 updateSettings(cli.isAutoUpdate(), cli.getConnectionTimeout(), cli.getProxyUrl(),
     101   -
                         cli.getProxyPort(), cli.getDataDirectory(), cli.getPropertiesFile());
    -  102  0
                 runScan(cli.getReportDirectory(), cli.getReportFormat(), cli.getApplicationName(), cli.getScanFiles());
    -  103   +
                         cli.getProxyPort(), cli.getProxyUsername(), cli.getProxyPassword(),
    +  102   +
                         cli.getDataDirectory(), cli.getPropertiesFile());
    +  103  0
                 runScan(cli.getReportDirectory(), cli.getReportFormat(), cli.getApplicationName(), cli.getScanFiles());
    +  104  
             } else {
    -  104  0
                 cli.printHelp();
    -  105   +  105  0
                 cli.printHelp();
    +  106  
             }
    -  106  0
         }
    -  107   -
     
    +  107  0
         }
     108   -
         /**
    +
     
     109   -
          * Scans the specified directories and writes the dependency reports to the
    -  110   -
          * reportDirectory.
    -  111   -
          *
    -  112   -
          * @param reportDirectory the path to the directory where the reports will
    -  113   -
          * be written
    -  114   -
          * @param outputFormat the output format of the report
    -  115   -
          * @param applicationName the application name for the report
    -  116   -
          * @param files the files/directories to scan
    -  117   -
          */
    -  118   -
         private void runScan(String reportDirectory, String outputFormat, String applicationName, String[] files) {
    -  119  0
             final Engine scanner = new Engine();
    -  120   -
     
    -  121  0
             for (String file : files) {
    -  122  0
                 scanner.scan(file);
    -  123   -
             }
    -  124   -
     
    -  125  0
             scanner.analyzeDependencies();
    -  126  0
             final List<Dependency> dependencies = scanner.getDependencies();
    -  127   -
     
    -  128  0
             final ReportGenerator report = new ReportGenerator(applicationName, dependencies, scanner.getAnalyzers());
    -  129   -
             try {
    -  130  0
                 report.generateReports(reportDirectory, outputFormat);
    -  131  0
             } catch (IOException ex) {
    -  132  0
                 Logger.getLogger(App.class.getName()).log(Level.SEVERE, "There was an IO error while attempting to generate the report.");
    -  133  0
                 Logger.getLogger(App.class.getName()).log(Level.INFO, null, ex);
    -  134  0
             } catch (Exception ex) {
    -  135  0
                 Logger.getLogger(App.class.getName()).log(Level.SEVERE, "There was an error while attempting to generate the report.");
    -  136  0
                 Logger.getLogger(App.class.getName()).log(Level.INFO, null, ex);
    -  137  0
             }
    -  138  0
         }
    -  139   -
     
    -  140  
         /**
    -  141   -
          * Updates the global Settings.
    -  142   +  110   +
          * Scans the specified directories and writes the dependency reports to the
    +  111   +
          * reportDirectory.
    +  112  
          *
    -  143   -
          * @param autoUpdate whether or not to update cached web data sources
    -  144   -
          * @param connectionTimeout the timeout to use when downloading resources
    -  145   -
          * (null or blank will use default)
    -  146   -
          * @param proxyUrl the proxy url (null or blank means no proxy will be used)
    -  147   -
          * @param proxyPort the proxy port (null or blank means no port will be
    -  148   -
          * used)
    -  149   -
          * @param dataDirectory the directory to store/retrieve persistent data from
    -  150   -
          * @param propertiesFile the properties file to utilize
    -  151   +  113   +
          * @param reportDirectory the path to the directory where the reports will
    +  114   +
          * be written
    +  115   +
          * @param outputFormat the output format of the report
    +  116   +
          * @param applicationName the application name for the report
    +  117   +
          * @param files the files/directories to scan
    +  118  
          */
    -  152   -
         private void updateSettings(boolean autoUpdate, String connectionTimeout, String proxyUrl,
    -  153   -
                 String proxyPort, String dataDirectory, File propertiesFile) {
    -  154   +  119   +
         private void runScan(String reportDirectory, String outputFormat, String applicationName, String[] files) {
    +  120  0
             final Engine scanner = new Engine();
    +  121  
     
    -  155  0
             if (propertiesFile != null) {
    -  156   +  122  0
             for (String file : files) {
    +  123  0
                 scanner.scan(file);
    +  124   +
             }
    +  125   +
     
    +  126  0
             scanner.analyzeDependencies();
    +  127  0
             final List<Dependency> dependencies = scanner.getDependencies();
    +  128   +
     
    +  129  0
             final ReportGenerator report = new ReportGenerator(applicationName, dependencies, scanner.getAnalyzers());
    +  130   +
             try {
    +  131  0
                 report.generateReports(reportDirectory, outputFormat);
    +  132  0
             } catch (IOException ex) {
    +  133  0
                 Logger.getLogger(App.class.getName()).log(Level.SEVERE, "There was an IO error while attempting to generate the report.");
    +  134  0
                 Logger.getLogger(App.class.getName()).log(Level.INFO, null, ex);
    +  135  0
             } catch (Exception ex) {
    +  136  0
                 Logger.getLogger(App.class.getName()).log(Level.SEVERE, "There was an error while attempting to generate the report.");
    +  137  0
                 Logger.getLogger(App.class.getName()).log(Level.INFO, null, ex);
    +  138  0
             }
    +  139  0
         }
    +  140   +
     
    +  141   +
         /**
    +  142   +
          * Updates the global Settings.
    +  143   +
          *
    +  144   +
          * @param autoUpdate whether or not to update cached web data sources
    +  145   +
          * @param connectionTimeout the timeout to use when downloading resources
    +  146   +
          * (null or blank will use default)
    +  147   +
          * @param proxyUrl the proxy url (null or blank means no proxy will be used)
    +  148   +
          * @param proxyPort the proxy port (null or blank means no port will be
    +  149   +
          * used)
    +  150   +
          * @param dataDirectory the directory to store/retrieve persistent data from
    +  151   +
          * @param propertiesFile the properties file to utilize
    +  152   +
          */
    +  153   +
         private void updateSettings(boolean autoUpdate, String connectionTimeout, String proxyUrl, String proxyPort,
    +  154   +
                                     String proxyUser, String proxyPass, String dataDirectory, File propertiesFile) {
    +  155   +
     
    +  156  0
             if (propertiesFile != null) {
    +  157  
                 try {
    -  157  0
                     Settings.mergeProperties(propertiesFile);
    -  158  0
                 } catch (FileNotFoundException ex) {
    -  159  0
                     final String msg = String.format("Unable to load properties file '%s'", propertiesFile.getPath());
    -  160  0
                     Logger.getLogger(App.class.getName()).log(Level.SEVERE, msg);
    -  161  0
                     Logger.getLogger(App.class.getName()).log(Level.FINE, null, ex);
    -  162  0
                 } catch (IOException ex) {
    -  163  0
                     final String msg = String.format("Unable to find properties file '%s'", propertiesFile.getPath());
    -  164  0
                     Logger.getLogger(App.class.getName()).log(Level.SEVERE, msg);
    -  165  0
                     Logger.getLogger(App.class.getName()).log(Level.FINE, null, ex);
    -  166  0
                 }
    -  167   +  158  0
                     Settings.mergeProperties(propertiesFile);
    +  159  0
                 } catch (FileNotFoundException ex) {
    +  160  0
                     final String msg = String.format("Unable to load properties file '%s'", propertiesFile.getPath());
    +  161  0
                     Logger.getLogger(App.class.getName()).log(Level.SEVERE, msg);
    +  162  0
                     Logger.getLogger(App.class.getName()).log(Level.FINE, null, ex);
    +  163  0
                 } catch (IOException ex) {
    +  164  0
                     final String msg = String.format("Unable to find properties file '%s'", propertiesFile.getPath());
    +  165  0
                     Logger.getLogger(App.class.getName()).log(Level.SEVERE, msg);
    +  166  0
                     Logger.getLogger(App.class.getName()).log(Level.FINE, null, ex);
    +  167  0
                 }
    +  168  
             }
    -  168  0
             if (dataDirectory != null) {
    -  169  0
                 Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDirectory);
    -  170  0
             } else if (System.getProperty("basedir") != null) {
    -  171  0
                 final File dataDir = new File(System.getProperty("basedir"), "data");
    -  172  0
                 Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDir.getAbsolutePath());
    -  173  0
             } else {
    -  174  0
                 final File jarPath = new File(App.class.getProtectionDomain().getCodeSource().getLocation().getPath());
    -  175  0
                 final File base = jarPath.getParentFile();
    -  176  0
                 final String sub = Settings.getString(Settings.KEYS.DATA_DIRECTORY);
    -  177  0
                 final File dataDir = new File(base, sub);
    -  178  0
                 Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDir.getAbsolutePath());
    -  179   +  169  0
             if (dataDirectory != null) {
    +  170  0
                 Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDirectory);
    +  171  0
             } else if (System.getProperty("basedir") != null) {
    +  172  0
                 final File dataDir = new File(System.getProperty("basedir"), "data");
    +  173  0
                 Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDir.getAbsolutePath());
    +  174  0
             } else {
    +  175  0
                 final File jarPath = new File(App.class.getProtectionDomain().getCodeSource().getLocation().getPath());
    +  176  0
                 final File base = jarPath.getParentFile();
    +  177  0
                 final String sub = Settings.getString(Settings.KEYS.DATA_DIRECTORY);
    +  178  0
                 final File dataDir = new File(base, sub);
    +  179  0
                 Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDir.getAbsolutePath());
    +  180  
             }
    -  180  0
             Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, autoUpdate);
    -  181  0
             if (proxyUrl != null && !proxyUrl.isEmpty()) {
    -  182  0
                 Settings.setString(Settings.KEYS.PROXY_URL, proxyUrl);
    -  183   +  181  0
             Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, autoUpdate);
    +  182  0
             if (proxyUrl != null && !proxyUrl.isEmpty()) {
    +  183  0
                 Settings.setString(Settings.KEYS.PROXY_URL, proxyUrl);
    +  184  
             }
    -  184  0
             if (proxyPort != null && !proxyPort.isEmpty()) {
    -  185  0
                 Settings.setString(Settings.KEYS.PROXY_PORT, proxyPort);
    -  186   +  185  0
             if (proxyPort != null && !proxyPort.isEmpty()) {
    +  186  0
                 Settings.setString(Settings.KEYS.PROXY_PORT, proxyPort);
    +  187  
             }
    -  187  0
             if (connectionTimeout != null && !connectionTimeout.isEmpty()) {
    -  188  0
                 Settings.setString(Settings.KEYS.CONNECTION_TIMEOUT, connectionTimeout);
    -  189   +  188  0
             if (proxyUser != null && !proxyUser.isEmpty()) {
    +  189  0
                 Settings.setString(Settings.KEYS.PROXY_USERNAME, proxyUser);
    +  190  
             }
    -  190  0
         }
    -  191   +  191  0
             if (proxyPass != null && !proxyPass.isEmpty()) {
    +  192  0
                 Settings.setString(Settings.KEYS.PROXY_PASSWORD, proxyPass);
    +  193   +
             }
    +  194  0
             if (connectionTimeout != null && !connectionTimeout.isEmpty()) {
    +  195  0
                 Settings.setString(Settings.KEYS.CONNECTION_TIMEOUT, connectionTimeout);
    +  196   +
             }
    +  197  0
         }
    +  198  
     }
    - + diff --git a/dependency-check-cli/cobertura/org.owasp.dependencycheck.cli.CliParser.html b/dependency-check-cli/cobertura/org.owasp.dependencycheck.cli.CliParser.html index af9f52205..fdbef4be0 100644 --- a/dependency-check-cli/cobertura/org.owasp.dependencycheck.cli.CliParser.html +++ b/dependency-check-cli/cobertura/org.owasp.dependencycheck.cli.CliParser.html @@ -12,8 +12,8 @@
     
    - - + +
    Classes in this File Line Coverage Branch Coverage Complexity
    CliParser
    77%
    67/86
    71%
    23/32
    1.773
    CliParser$ArgumentName
    0%
    0/1
    N/A
    1.773
    CliParser
    77%
    71/92
    71%
    23/32
    1.708
    CliParser$ArgumentName
    0%
    0/1
    N/A
    1.708
     
    @@ -334,188 +334,185 @@
                     .create(ArgumentName.PROXY_PORT_SHORT);
     177  
     
    -  178  9
             final Option path = OptionBuilder.withArgName("path").hasArg().withLongOpt(ArgumentName.SCAN)
    +  178  9
             final Option proxyUsername = OptionBuilder.withArgName("user").hasArg().withLongOpt(ArgumentName.PROXY_USERNAME)
     179   -
                     .withDescription("The path to scan - this option can be specified multiple times.")
    +
                     .withDescription("The proxy username to use when downloading resources.")
     180   -
                     .create(ArgumentName.SCAN_SHORT);
    +
                     .create(ArgumentName.PROXY_USERNAME_SHORT);
     181  
     
    -  182  9
             final Option props = OptionBuilder.withArgName("file").hasArg().withLongOpt(ArgumentName.PROP)
    +  182  9
             final Option proxyPassword = OptionBuilder.withArgName("pass").hasArg().withLongOpt(ArgumentName.PROXY_PASSWORD)
     183   -
                     .withDescription("A property file to load.")
    +
                     .withDescription("The proxy password to use when downloading resources.")
     184   -
                     .create(ArgumentName.PROP_SHORT);
    +
                     .create(ArgumentName.PROXY_PASSWORD_SHORT);
     185  
     
    -  186  9
             final Option data = OptionBuilder.withArgName("path").hasArg().withLongOpt(ArgumentName.DATA_DIRECTORY)
    +  186  9
             final Option path = OptionBuilder.withArgName("path").hasArg().withLongOpt(ArgumentName.SCAN)
     187   -
                     .withDescription("The location of the data directory used to store persistent data. This option should generally not be set.")
    +
                     .withDescription("The path to scan - this option can be specified multiple times.")
     188   -
                     .create(ArgumentName.DATA_DIRECTORY_SHORT);
    +
                     .create(ArgumentName.SCAN_SHORT);
     189  
     
    -  190  9
             final Option out = OptionBuilder.withArgName("folder").hasArg().withLongOpt(ArgumentName.OUT)
    +  190  9
             final Option props = OptionBuilder.withArgName("file").hasArg().withLongOpt(ArgumentName.PROP)
     191   -
                     .withDescription("The folder to write reports to. This defaults to the current directory.")
    +
                     .withDescription("A property file to load.")
     192   -
                     .create(ArgumentName.OUT_SHORT);
    +
                     .create(ArgumentName.PROP_SHORT);
     193  
     
    -  194  9
             final Option outputFormat = OptionBuilder.withArgName("format").hasArg().withLongOpt(ArgumentName.OUTPUT_FORMAT)
    +  194  9
             final Option data = OptionBuilder.withArgName("path").hasArg().withLongOpt(ArgumentName.DATA_DIRECTORY)
     195   -
                     .withDescription("The output format to write to (XML, HTML, VULN, ALL). The default is HTML.")
    +
                     .withDescription("The location of the data directory used to store persistent data. This option should generally not be set.")
     196   -
                     .create(ArgumentName.OUTPUT_FORMAT_SHORT);
    +
                     .create(ArgumentName.DATA_DIRECTORY_SHORT);
     197  
     
    -  198  9
             final Option verboseLog = OptionBuilder.withArgName("file").hasArg().withLongOpt(ArgumentName.VERBOSE_LOG)
    +  198  9
             final Option out = OptionBuilder.withArgName("folder").hasArg().withLongOpt(ArgumentName.OUT)
     199   -
                     .withDescription("The file path to write verbose logging information.")
    +
                     .withDescription("The folder to write reports to. This defaults to the current directory.")
     200   -
                     .create(ArgumentName.VERBOSE_LOG_SHORT);
    +
                     .create(ArgumentName.OUT_SHORT);
     201  
     
    -  202  9
             final OptionGroup og = new OptionGroup();
    -  203  9
             og.addOption(path);
    +  202  9
             final Option outputFormat = OptionBuilder.withArgName("format").hasArg().withLongOpt(ArgumentName.OUTPUT_FORMAT)
    +  203   +
                     .withDescription("The output format to write to (XML, HTML, VULN, ALL). The default is HTML.")
     204   +
                     .create(ArgumentName.OUTPUT_FORMAT_SHORT);
    +  205  
     
    -  205  9
             final Options opts = new Options();
    -  206  9
             opts.addOptionGroup(og);
    -  207  9
             opts.addOption(out);
    -  208  9
             opts.addOption(outputFormat);
    -  209  9
             opts.addOption(appName);
    -  210  9
             opts.addOption(version);
    -  211  9
             opts.addOption(help);
    -  212  9
             opts.addOption(noUpdate);
    -  213  9
             opts.addOption(props);
    -  214  9
             opts.addOption(data);
    -  215  9
             opts.addOption(verboseLog);
    -  216  9
             opts.addOption(proxyPort);
    -  217  9
             opts.addOption(proxyUrl);
    -  218  9
             opts.addOption(connectionTimeout);
    -  219   +  206  9
             final Option verboseLog = OptionBuilder.withArgName("file").hasArg().withLongOpt(ArgumentName.VERBOSE_LOG)
    +  207   +
                     .withDescription("The file path to write verbose logging information.")
    +  208   +
                     .create(ArgumentName.VERBOSE_LOG_SHORT);
    +  209  
     
    -  220  9
             return opts;
    -  221   -
         }
    -  222   +  210  9
             final OptionGroup og = new OptionGroup();
    +  211  9
             og.addOption(path);
    +  212  
     
    -  223   -
         /**
    -  224   -
          * Determines if the 'version' command line argument was passed in.
    -  225   -
          *
    -  226   -
          * @return whether or not the 'version' command line argument was passed in
    -  227   -
          */
    -  228   -
         public boolean isGetVersion() {
    -  229  7
             return (line != null) && line.hasOption(ArgumentName.VERSION);
    -  230   -
         }
    +  213  9
             final Options opts = new Options();
    +  214  9
             opts.addOptionGroup(og);
    +  215  9
             opts.addOption(out);
    +  216  9
             opts.addOption(outputFormat);
    +  217  9
             opts.addOption(appName);
    +  218  9
             opts.addOption(version);
    +  219  9
             opts.addOption(help);
    +  220  9
             opts.addOption(noUpdate);
    +  221  9
             opts.addOption(props);
    +  222  9
             opts.addOption(data);
    +  223  9
             opts.addOption(verboseLog);
    +  224  9
             opts.addOption(proxyPort);
    +  225  9
             opts.addOption(proxyUrl);
    +  226  9
             opts.addOption(proxyUsername);
    +  227  9
             opts.addOption(proxyPassword);
    +  228  9
             opts.addOption(connectionTimeout);
    +  229   +
     
    +  230  9
             return opts;
     231   -
     
    +
         }
     232   -
         /**
    +
     
     233   -
          * Determines if the 'help' command line argument was passed in.
    +
         /**
     234   -
          *
    +
          * Determines if the 'version' command line argument was passed in.
     235   -
          * @return whether or not the 'help' command line argument was passed in
    -  236   -
          */
    -  237   -
         public boolean isGetHelp() {
    -  238  7
             return (line != null) && line.hasOption(ArgumentName.HELP);
    -  239   -
         }
    -  240   -
     
    -  241   -
         /**
    -  242   -
          * Determines if the 'scan' command line argument was passed in.
    -  243  
          *
    -  244   -
          * @return whether or not the 'scan' command line argument was passed in
    -  245   +  236   +
          * @return whether or not the 'version' command line argument was passed in
    +  237  
          */
    -  246   -
         public boolean isRunScan() {
    -  247  15
             return (line != null) && isValid && line.hasOption(ArgumentName.SCAN);
    -  248   +  238   +
         public boolean isGetVersion() {
    +  239  7
             return (line != null) && line.hasOption(ArgumentName.VERSION);
    +  240  
         }
    -  249   +  241  
     
    -  250   +  242  
         /**
    -  251   -
          * Displays the command line help message to the standard output.
    -  252   +  243   +
          * Determines if the 'help' command line argument was passed in.
    +  244   +
          *
    +  245   +
          * @return whether or not the 'help' command line argument was passed in
    +  246  
          */
    -  253   -
         public void printHelp() {
    -  254  2
             final HelpFormatter formatter = new HelpFormatter();
    -  255  2
             final String nl = System.getProperty("line.separator");
    -  256   +  247   +
         public boolean isGetHelp() {
    +  248  7
             return (line != null) && line.hasOption(ArgumentName.HELP);
    +  249   +
         }
    +  250  
     
    -  257  2
             formatter.printHelp(Settings.getString("application.name", "DependencyCheck"),
    +  251   +
         /**
    +  252   +
          * Determines if the 'scan' command line argument was passed in.
    +  253   +
          *
    +  254   +
          * @return whether or not the 'scan' command line argument was passed in
    +  255   +
          */
    +  256   +
         public boolean isRunScan() {
    +  257  15
             return (line != null) && isValid && line.hasOption(ArgumentName.SCAN);
     258   -
                     nl + Settings.getString("application.name", "DependencyCheck")
    +
         }
     259   -
                     + " can be used to identify if there are any known CVE vulnerabilities in libraries utilized by an application. "
    +
     
     260   -
                     + Settings.getString("application.name", "DependencyCheck")
    +
         /**
     261   -
                     + " will automatically update required data from the Internet, such as the CVE and CPE data files from nvd.nist.gov." + nl + nl,
    +
          * Displays the command line help message to the standard output.
     262   -
                     options,
    +
          */
     263   -
                     "",
    -  264   -
                     true);
    -  265  2
         }
    +
         public void printHelp() {
    +  264  2
             final HelpFormatter formatter = new HelpFormatter();
    +  265  2
             final String nl = System.getProperty("line.separator");
     266  
     
    -  267   -
         /**
    +  267  2
             formatter.printHelp(Settings.getString("application.name", "DependencyCheck"),
     268   -
          * Retrieves the file command line parameter(s) specified for the 'scan'
    +
                     nl + Settings.getString("application.name", "DependencyCheck")
     269   -
          * argument.
    +
                     + " can be used to identify if there are any known CVE vulnerabilities in libraries utilized by an application. "
     270   -
          *
    +
                     + Settings.getString("application.name", "DependencyCheck")
     271   -
          * @return the file paths specified on the command line for scan
    +
                     + " will automatically update required data from the Internet, such as the CVE and CPE data files from nvd.nist.gov." + nl + nl,
     272   -
          */
    +
                     options,
     273   -
         public String[] getScanFiles() {
    -  274  3
             return line.getOptionValues(ArgumentName.SCAN);
    -  275   -
         }
    +
                     "",
    +  274   +
                     true);
    +  275  2
         }
     276  
     
     277  
         /**
     278   -
          * Returns the directory to write the reports to specified on the command
    +
          * Retrieves the file command line parameter(s) specified for the 'scan'
     279   -
          * line.
    +
          * argument.
     280  
          *
     281   -
          * @return the path to the reports directory.
    +
          * @return the file paths specified on the command line for scan
     282  
          */
     283   -
         public String getReportDirectory() {
    -  284  1
             return line.getOptionValue(ArgumentName.OUT, ".");
    +
         public String[] getScanFiles() {
    +  284  3
             return line.getOptionValues(ArgumentName.SCAN);
     285  
         }
     286   @@ -523,18 +520,18 @@  287  
         /**
     288   -
          * Returns the output format specified on the command line. Defaults to HTML
    +
          * Returns the directory to write the reports to specified on the command
     289   -
          * if no format was specified.
    +
          * line.
     290  
          *
     291   -
          * @return the output format name.
    +
          * @return the path to the reports directory.
     292  
          */
     293   -
         public String getReportFormat() {
    -  294  0
             return line.getOptionValue(ArgumentName.OUTPUT_FORMAT, "HTML");
    +
         public String getReportDirectory() {
    +  294  1
             return line.getOptionValue(ArgumentName.OUT, ".");
     295  
         }
     296   @@ -542,416 +539,501 @@  297  
         /**
     298   -
          * Returns the application name specified on the command line.
    +
          * Returns the output format specified on the command line. Defaults to HTML
     299   -
          *
    +
          * if no format was specified.
     300   -
          * @return the application name.
    +
          *
     301   -
          */
    +
          * @return the output format name.
     302   -
         public String getApplicationName() {
    -  303  0
             return line.getOptionValue(ArgumentName.APP_NAME);
    -  304   -
         }
    +
          */
    +  303   +
         public String getReportFormat() {
    +  304  0
             return line.getOptionValue(ArgumentName.OUTPUT_FORMAT, "HTML");
     305   -
     
    +
         }
     306   -
         /**
    +
     
     307   -
          * Returns the connection timeout.
    +
         /**
     308   -
          *
    +
          * Returns the application name specified on the command line.
     309   -
          * @return the connection timeout
    +
          *
     310   -
          */
    +
          * @return the application name.
     311   -
         public String getConnectionTimeout() {
    -  312  0
             return line.getOptionValue(ArgumentName.CONNECTION_TIMEOUT);
    -  313   -
         }
    +
          */
    +  312   +
         public String getApplicationName() {
    +  313  0
             return line.getOptionValue(ArgumentName.APP_NAME);
     314   -
     
    +
         }
     315   -
         /**
    +
     
     316   -
          * Returns the proxy url.
    +
         /**
     317   -
          *
    +
          * Returns the connection timeout.
     318   -
          * @return the proxy url
    +
          *
     319   -
          */
    +
          * @return the connection timeout
     320   -
         public String getProxyUrl() {
    -  321  0
             return line.getOptionValue(ArgumentName.PROXY_URL);
    -  322   -
         }
    +
          */
    +  321   +
         public String getConnectionTimeout() {
    +  322  0
             return line.getOptionValue(ArgumentName.CONNECTION_TIMEOUT);
     323   -
     
    +
         }
     324   -
         /**
    +
     
     325   -
          * Returns the proxy port.
    +
         /**
     326   -
          *
    +
          * Returns the proxy url.
     327   -
          * @return the proxy port
    +
          *
     328   -
          */
    +
          * @return the proxy url
     329   -
         public String getProxyPort() {
    -  330  0
             return line.getOptionValue(ArgumentName.PROXY_PORT);
    -  331   -
         }
    +
          */
    +  330   +
         public String getProxyUrl() {
    +  331  0
             return line.getOptionValue(ArgumentName.PROXY_URL);
     332   -
     
    +
         }
     333   -
         /**
    +
     
     334   -
          * Get the value of dataDirectory.
    +
         /**
     335   -
          *
    +
          * Returns the proxy port.
     336   -
          * @return the value of dataDirectory
    +
          *
     337   -
          */
    +
          * @return the proxy port
     338   -
         public String getDataDirectory() {
    -  339  0
             return line.getOptionValue(ArgumentName.DATA_DIRECTORY);
    -  340   -
         }
    +
          */
    +  339   +
         public String getProxyPort() {
    +  340  0
             return line.getOptionValue(ArgumentName.PROXY_PORT);
     341   -
     
    +
         }
     342   -
         /**
    +
     
     343   -
          * Returns the properties file specified on the command line.
    +
         /**
     344   -
          *
    +
          * Returns the proxy username.
     345   -
          * @return the properties file specified on the command line
    +
          *
     346   -
          */
    +
          * @return the proxy username
     347   -
         public File getPropertiesFile() {
    -  348  0
             final String path = line.getOptionValue(ArgumentName.PROP);
    -  349  0
             if (path != null) {
    -  350  0
                 return new File(path);
    +
          */
    +  348   +
         public String getProxyUsername() {
    +  349  0
             return line.getOptionValue(ArgumentName.PROXY_USERNAME);
    +  350   +
         }
     351   -
             }
    -  352  0
             return null;
    +
     
    +  352   +
         /**
     353   -
         }
    +
          * Returns the proxy password.
     354   -
     
    +
          *
     355   -
         /**
    +
          * @return the proxy password
     356   -
          * Returns the path to the verbose log file.
    +
          */
     357   -
          *
    -  358   -
          * @return the path to the verbose log file
    +
         public String getProxyPassword() {
    +  358  0
             return line.getOptionValue(ArgumentName.PROXY_PASSWORD);
     359   -
          */
    +
         }
     360   -
         public String getVerboseLog() {
    -  361  0
             return line.getOptionValue(ArgumentName.VERBOSE_LOG);
    +
     
    +  361   +
         /**
     362   -
         }
    +
          * Get the value of dataDirectory.
     363   -
     
    -  364   -
         /**
    -  365   -
          * <p>Prints the manifest information to standard output.</p>
    -  366   -
          * <ul><li>Implementation-Title: ${pom.name}</li>
    -  367   -
          * <li>Implementation-Version: ${pom.version}</li></ul>
    -  368   -
          */
    -  369   -
         public void printVersionInfo() {
    -  370  1
             final String version = String.format("%s version %s",
    -  371   -
                     Settings.getString("application.name", "DependencyCheck"),
    -  372   -
                     Settings.getString("application.version", "Unknown"));
    -  373  1
             System.out.println(version);
    -  374  1
         }
    -  375   -
     
    -  376   -
         /**
    -  377   -
          * Checks if the auto update feature has been disabled. If it has been
    -  378   -
          * disabled via the command line this will return false.
    -  379  
          *
    -  380   -
          * @return if auto-update is allowed.
    -  381   +  364   +
          * @return the value of dataDirectory
    +  365  
          */
    -  382   -
         public boolean isAutoUpdate() {
    -  383  0
             return (line == null) || !line.hasOption(ArgumentName.DISABLE_AUTO_UPDATE);
    -  384   +  366   +
         public String getDataDirectory() {
    +  367  0
             return line.getOptionValue(ArgumentName.DATA_DIRECTORY);
    +  368  
         }
    -  385   +  369  
     
    -  386   +  370  
         /**
    -  387   -
          * A collection of static final strings that represent the possible command
    -  388   -
          * line arguments.
    -  389   +  371   +
          * Returns the properties file specified on the command line.
    +  372   +
          *
    +  373   +
          * @return the properties file specified on the command line
    +  374  
          */
    -  390  9
         public static class ArgumentName {
    +  375   +
         public File getPropertiesFile() {
    +  376  0
             final String path = line.getOptionValue(ArgumentName.PROP);
    +  377  0
             if (path != null) {
    +  378  0
                 return new File(path);
    +  379   +
             }
    +  380  0
             return null;
    +  381   +
         }
    +  382   +
     
    +  383   +
         /**
    +  384   +
          * Returns the path to the verbose log file.
    +  385   +
          *
    +  386   +
          * @return the path to the verbose log file
    +  387   +
          */
    +  388   +
         public String getVerboseLog() {
    +  389  0
             return line.getOptionValue(ArgumentName.VERBOSE_LOG);
    +  390   +
         }
     391  
     
     392   -
             /**
    +
         /**
     393   -
              * The long CLI argument name specifying the directory/file to scan.
    +
          * <p>Prints the manifest information to standard output.</p>
     394   -
              */
    +
          * <ul><li>Implementation-Title: ${pom.name}</li>
     395   -
             public static final String SCAN = "scan";
    +
          * <li>Implementation-Version: ${pom.version}</li></ul>
     396   -
             /**
    +
          */
     397   -
              * The short CLI argument name specifying the directory/file to scan.
    -  398   -
              */
    +
         public void printVersionInfo() {
    +  398  1
             final String version = String.format("%s version %s",
     399   -
             public static final String SCAN_SHORT = "s";
    +
                     Settings.getString("application.name", "DependencyCheck"),
     400   -
             /**
    -  401   -
              * The long CLI argument name specifying that the CPE/CVE/etc. data
    -  402   -
              * should not be automatically updated.
    +
                     Settings.getString("application.version", "Unknown"));
    +  401  1
             System.out.println(version);
    +  402  1
         }
     403   -
              */
    +
     
     404   -
             public static final String DISABLE_AUTO_UPDATE = "noupdate";
    +
         /**
     405   -
             /**
    +
          * Checks if the auto update feature has been disabled. If it has been
     406   -
              * The short CLI argument name specifying that the CPE/CVE/etc. data
    +
          * disabled via the command line this will return false.
     407   -
              * should not be automatically updated.
    +
          *
     408   -
              */
    +
          * @return if auto-update is allowed.
     409   -
             public static final String DISABLE_AUTO_UPDATE_SHORT = "n";
    +
          */
     410   -
             /**
    -  411   -
              * The long CLI argument name specifying the directory to write the
    +
         public boolean isAutoUpdate() {
    +  411  0
             return (line == null) || !line.hasOption(ArgumentName.DISABLE_AUTO_UPDATE);
     412   -
              * reports to.
    +
         }
     413   -
              */
    +
     
     414   -
             public static final String OUT = "out";
    +
         /**
     415   -
             /**
    +
          * A collection of static final strings that represent the possible command
     416   -
              * The short CLI argument name specifying the directory to write the
    +
          * line arguments.
     417   -
              * reports to.
    -  418   -
              */
    +
          */
    +  418  9
         public static class ArgumentName {
     419   -
             public static final String OUT_SHORT = "o";
    +
     
     420  
             /**
     421   -
              * The long CLI argument name specifying the output format to write the
    +
              * The long CLI argument name specifying the directory/file to scan.
     422   -
              * reports to.
    +
              */
     423   -
              */
    +
             public static final String SCAN = "scan";
     424   -
             public static final String OUTPUT_FORMAT = "format";
    +
             /**
     425   -
             /**
    +
              * The short CLI argument name specifying the directory/file to scan.
     426   -
              * The short CLI argument name specifying the output format to write the
    +
              */
     427   -
              * reports to.
    +
             public static final String SCAN_SHORT = "s";
     428   -
              */
    +
             /**
     429   -
             public static final String OUTPUT_FORMAT_SHORT = "f";
    +
              * The long CLI argument name specifying that the CPE/CVE/etc. data
     430   -
             /**
    +
              * should not be automatically updated.
     431   -
              * The long CLI argument name specifying the name of the application to
    +
              */
     432   -
              * be scanned.
    +
             public static final String DISABLE_AUTO_UPDATE = "noupdate";
     433   -
              */
    +
             /**
     434   -
             public static final String APP_NAME = "app";
    +
              * The short CLI argument name specifying that the CPE/CVE/etc. data
     435   -
             /**
    +
              * should not be automatically updated.
     436   -
              * The short CLI argument name specifying the name of the application to
    +
              */
     437   -
              * be scanned.
    +
             public static final String DISABLE_AUTO_UPDATE_SHORT = "n";
     438   -
              */
    +
             /**
     439   -
             public static final String APP_NAME_SHORT = "a";
    +
              * The long CLI argument name specifying the directory to write the
     440   -
             /**
    +
              * reports to.
     441   -
              * The long CLI argument name asking for help.
    -  442  
              */
    +  442   +
             public static final String OUT = "out";
     443   -
             public static final String HELP = "help";
    -  444  
             /**
    +  444   +
              * The short CLI argument name specifying the directory to write the
     445   -
              * The short CLI argument name asking for help.
    +
              * reports to.
     446  
              */
     447   -
             public static final String HELP_SHORT = "h";
    +
             public static final String OUT_SHORT = "o";
     448  
             /**
     449   -
              * The long CLI argument name asking for the version.
    +
              * The long CLI argument name specifying the output format to write the
     450   -
              */
    +
              * reports to.
     451   -
             public static final String VERSION_SHORT = "v";
    +
              */
     452   -
             /**
    +
             public static final String OUTPUT_FORMAT = "format";
     453   -
              * The short CLI argument name asking for the version.
    +
             /**
     454   -
              */
    +
              * The short CLI argument name specifying the output format to write the
     455   -
             public static final String VERSION = "version";
    +
              * reports to.
     456   -
             /**
    +
              */
     457   -
              * The short CLI argument name indicating the proxy port.
    +
             public static final String OUTPUT_FORMAT_SHORT = "f";
     458   -
              */
    +
             /**
     459   -
             public static final String PROXY_PORT_SHORT = "p";
    +
              * The long CLI argument name specifying the name of the application to
     460   -
             /**
    +
              * be scanned.
     461   -
              * The CLI argument name indicating the proxy port.
    -  462  
              */
    +  462   +
             public static final String APP_NAME = "app";
     463   -
             public static final String PROXY_PORT = "proxyport";
    -  464  
             /**
    +  464   +
              * The short CLI argument name specifying the name of the application to
     465   -
              * The short CLI argument name indicating the proxy url.
    +
              * be scanned.
     466  
              */
     467   -
             public static final String PROXY_URL_SHORT = "u";
    +
             public static final String APP_NAME_SHORT = "a";
     468  
             /**
     469   -
              * The CLI argument name indicating the proxy url.
    +
              * The long CLI argument name asking for help.
     470  
              */
     471   -
             public static final String PROXY_URL = "proxyurl";
    +
             public static final String HELP = "help";
     472  
             /**
     473   -
              * The short CLI argument name indicating the proxy url.
    +
              * The short CLI argument name asking for help.
     474  
              */
     475   -
             public static final String CONNECTION_TIMEOUT_SHORT = "c";
    +
             public static final String HELP_SHORT = "h";
     476  
             /**
     477   -
              * The CLI argument name indicating the proxy url.
    +
              * The long CLI argument name asking for the version.
     478  
              */
     479   -
             public static final String CONNECTION_TIMEOUT = "connectiontimeout";
    +
             public static final String VERSION_SHORT = "v";
     480  
             /**
     481   -
              * The short CLI argument name for setting the location of an additional
    +
              * The short CLI argument name asking for the version.
     482   -
              * properties file.
    +
              */
     483   -
              */
    +
             public static final String VERSION = "version";
     484   -
             public static final String PROP_SHORT = "p";
    +
             /**
     485   -
             /**
    +
              * The short CLI argument name indicating the proxy port.
     486   -
              * The CLI argument name for setting the location of an additional
    +
              */
     487   -
              * properties file.
    +
             public static final String PROXY_PORT_SHORT = "p";
     488   -
              */
    +
             /**
     489   -
             public static final String PROP = "propertyfile";
    +
              * The CLI argument name indicating the proxy port.
     490   -
             /**
    +
              */
     491   -
              * The CLI argument name for setting the location of the data directory.
    +
             public static final String PROXY_PORT = "proxyport";
     492   -
              */
    +
             /**
     493   -
             public static final String DATA_DIRECTORY = "data";
    +
              * The short CLI argument name indicating the proxy url.
     494   -
             /**
    +
              */
     495   -
              * The short CLI argument name for setting the location of the data
    +
             public static final String PROXY_URL_SHORT = "u";
     496   -
              * directory.
    +
             /**
     497   -
              */
    +
              * The CLI argument name indicating the proxy url.
     498   -
             public static final String DATA_DIRECTORY_SHORT = "d";
    -  499   -
             /**
    -  500   -
              * The CLI argument name for setting the location of the data directory.
    -  501  
              */
    -  502   -
             public static final String VERBOSE_LOG = "log";
    -  503   +  499   +
             public static final String PROXY_URL = "proxyurl";
    +  500  
             /**
    +  501   +
              * The short CLI argument name indicating the proxy username.
    +  502   +
              */
    +  503   +
             public static final String PROXY_USERNAME_SHORT = "pu";
     504   -
              * The short CLI argument name for setting the location of the data
    +
             /**
     505   -
              * directory.
    +
              * The CLI argument name indicating the proxy username.
     506  
              */
     507   -
             public static final String VERBOSE_LOG_SHORT = "l";
    +
             public static final String PROXY_USERNAME = "proxyuser";
     508   -
         }
    +
             /**
     509   +
              * The short CLI argument name indicating the proxy password.
    +  510   +
              */
    +  511   +
             public static final String PROXY_PASSWORD_SHORT = "pp";
    +  512   +
             /**
    +  513   +
              * The CLI argument name indicating the proxy password.
    +  514   +
              */
    +  515   +
             public static final String PROXY_PASSWORD = "proxypass";
    +  516   +
             /**
    +  517   +
              * The short CLI argument name indicating the connection timeout.
    +  518   +
              */
    +  519   +
             public static final String CONNECTION_TIMEOUT_SHORT = "c";
    +  520   +
             /**
    +  521   +
              * The CLI argument name indicating the connection timeout.
    +  522   +
              */
    +  523   +
             public static final String CONNECTION_TIMEOUT = "connectiontimeout";
    +  524   +
             /**
    +  525   +
              * The short CLI argument name for setting the location of an additional
    +  526   +
              * properties file.
    +  527   +
              */
    +  528   +
             public static final String PROP_SHORT = "p";
    +  529   +
             /**
    +  530   +
              * The CLI argument name for setting the location of an additional
    +  531   +
              * properties file.
    +  532   +
              */
    +  533   +
             public static final String PROP = "propertyfile";
    +  534   +
             /**
    +  535   +
              * The CLI argument name for setting the location of the data directory.
    +  536   +
              */
    +  537   +
             public static final String DATA_DIRECTORY = "data";
    +  538   +
             /**
    +  539   +
              * The short CLI argument name for setting the location of the data
    +  540   +
              * directory.
    +  541   +
              */
    +  542   +
             public static final String DATA_DIRECTORY_SHORT = "d";
    +  543   +
             /**
    +  544   +
              * The CLI argument name for setting the location of the data directory.
    +  545   +
              */
    +  546   +
             public static final String VERBOSE_LOG = "log";
    +  547   +
             /**
    +  548   +
              * The short CLI argument name for setting the location of the data
    +  549   +
              * directory.
    +  550   +
              */
    +  551   +
             public static final String VERBOSE_LOG_SHORT = "l";
    +  552   +
         }
    +  553  
     }
    - + diff --git a/dependency-check-cli/cpd.html b/dependency-check-cli/cpd.html index d69a69538..6a5f97197 100644 --- a/dependency-check-cli/cpd.html +++ b/dependency-check-cli/cpd.html @@ -1,13 +1,13 @@ - + dependency-check-cli - CPD Results @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-cli/dependency-updates-report.html b/dependency-check-cli/dependency-updates-report.html index d634336a6..3e7b4084d 100644 --- a/dependency-check-cli/dependency-updates-report.html +++ b/dependency-check-cli/dependency-updates-report.html @@ -1,13 +1,13 @@ - + dependency-check-cli - Dependency Updates Report @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -286,7 +286,7 @@ org.owasp dependency-check-core -1.0.4 +1.0.5 compile jar @@ -371,7 +371,7 @@ dependency-check-core Current Version -1.0.4 +1.0.5 Scope compile diff --git a/dependency-check-cli/findbugs.html b/dependency-check-cli/findbugs.html index 16dcd7560..5077eff4c 100644 --- a/dependency-check-cli/findbugs.html +++ b/dependency-check-cli/findbugs.html @@ -1,13 +1,13 @@ - + dependency-check-cli - FindBugs Bug Detector Report @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-cli/index.html b/dependency-check-cli/index.html index a16b060f5..c38471964 100644 --- a/dependency-check-cli/index.html +++ b/dependency-check-cli/index.html @@ -1,13 +1,13 @@ - + dependency-check-cli - About @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-cli/installation.html b/dependency-check-cli/installation.html index 329ca098c..15e449694 100644 --- a/dependency-check-cli/installation.html +++ b/dependency-check-cli/installation.html @@ -1,13 +1,13 @@ - + dependency-check-cli - @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -132,7 +132,7 @@

    Installation & Usage

    -

    Downlod the dependency-check command line tool here. Extract the zip file to a location on your computer and put the ‘bin’ directory into the path environment variable. On *nix systems you will likely need to make the shell script executable:

    +

    Downlod the dependency-check command line tool here. Extract the zip file to a location on your computer and put the ‘bin’ directory into the path environment variable. On *nix systems you will likely need to make the shell script executable:

    $ chmod +777 dependency-check.sh
    diff --git a/dependency-check-cli/license.html b/dependency-check-cli/license.html
    index ed3ab4119..2ab3df0ae 100644
    --- a/dependency-check-cli/license.html
    +++ b/dependency-check-cli/license.html
    @@ -1,13 +1,13 @@
     
     
     
       
         
         
    -    
    +    
         
         dependency-check-cli - Project License
         
    @@ -54,7 +54,7 @@
                     
                         
                                   
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-cli/plugin-updates-report.html b/dependency-check-cli/plugin-updates-report.html index 8dbf376f6..77823798c 100644 --- a/dependency-check-cli/plugin-updates-report.html +++ b/dependency-check-cli/plugin-updates-report.html @@ -1,13 +1,13 @@ - + dependency-check-cli - Plugin Updates Report @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -675,7 +675,7 @@ 2.1 Newer versions -2.2 Next Minor
    2.2.1
    2.2.2
    2.3
    2.3.1
    2.3.2
    2.4
    2.4.1 Latest Minor +2.2 Next Minor
    2.2.1
    2.2.2
    2.3
    2.3.1
    2.3.2
    2.4
    2.4.1
    2.4.2 Latest Minor

    Plugin org.apache.maven.plugins:maven-resources-plugin

    @@ -801,7 +801,7 @@ -
    1.4
    Newer versions1.5 Next Minor
    +1.5 Next Minor
    1.6 Latest Minor

    Plugin org.codehaus.mojo:cobertura-maven-plugin

    diff --git a/dependency-check-cli/pmd.html b/dependency-check-cli/pmd.html index ae8b03f51..7f393c859 100644 --- a/dependency-check-cli/pmd.html +++ b/dependency-check-cli/pmd.html @@ -1,13 +1,13 @@ - + dependency-check-cli - PMD Results @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -229,16 +229,16 @@ - + - + - + -
    Line
    Useless parentheses.229
    239
    Useless parentheses.238
    248
    Useless parentheses.247
    257
    Useless parentheses.383
    +411 diff --git a/dependency-check-cli/project-info.html b/dependency-check-cli/project-info.html index 15f54cf79..4bfa68b2d 100644 --- a/dependency-check-cli/project-info.html +++ b/dependency-check-cli/project-info.html @@ -1,13 +1,13 @@ - + dependency-check-cli - Project Information @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-cli/project-reports.html b/dependency-check-cli/project-reports.html index 8c960c15e..a1367f753 100644 --- a/dependency-check-cli/project-reports.html +++ b/dependency-check-cli/project-reports.html @@ -1,13 +1,13 @@ - + dependency-check-cli - Generated Reports @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-cli/project-summary.html b/dependency-check-cli/project-summary.html index 767db38b5..7fd03750b 100644 --- a/dependency-check-cli/project-summary.html +++ b/dependency-check-cli/project-summary.html @@ -1,13 +1,13 @@ - + dependency-check-cli - Project Summary @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -196,7 +196,7 @@ dependency-check-cli Version -1.0.4 +1.0.5 Type jar diff --git a/dependency-check-cli/surefire-report.html b/dependency-check-cli/surefire-report.html index b8a7ca6f3..8c6368898 100644 --- a/dependency-check-cli/surefire-report.html +++ b/dependency-check-cli/surefire-report.html @@ -1,13 +1,13 @@ - + dependency-check-cli - Surefire Report @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -309,11 +309,11 @@ function toggleDisplay(elementId) { testParse_printVersionInfo -0.002 +0.001 testParse_help -0 +0.001 testParse_scan @@ -325,7 +325,7 @@ function toggleDisplay(elementId) { testParse_unknown -0 +0.001 testParse_version @@ -337,7 +337,7 @@ function toggleDisplay(elementId) { testParse_scan_withFileExists -0.002
    +0.001
    diff --git a/dependency-check-cli/taglist.html b/dependency-check-cli/taglist.html index df145ee57..8fb28d402 100644 --- a/dependency-check-cli/taglist.html +++ b/dependency-check-cli/taglist.html @@ -1,13 +1,13 @@ - + dependency-check-cli - Tag List report @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-cli/xref-test/index.html b/dependency-check-cli/xref-test/index.html index 29a51f98a..3ec156bbd 100644 --- a/dependency-check-cli/xref-test/index.html +++ b/dependency-check-cli/xref-test/index.html @@ -3,7 +3,7 @@ - Dependency-Check Command Line 1.0.4 Reference + Dependency-Check Command Line 1.0.5 Reference diff --git a/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-frame.html b/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-frame.html index 8f35ea223..75c66a947 100644 --- a/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-frame.html +++ b/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Command Line 1.0.4 Reference Package org.owasp.dependencycheck.cli + Dependency-Check Command Line 1.0.5 Reference Package org.owasp.dependencycheck.cli diff --git a/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-summary.html b/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-summary.html index a0fcad0d3..7426b73b3 100644 --- a/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-summary.html +++ b/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Command Line 1.0.4 Reference Package org.owasp.dependencycheck.cli + Dependency-Check Command Line 1.0.5 Reference Package org.owasp.dependencycheck.cli diff --git a/dependency-check-cli/xref-test/overview-frame.html b/dependency-check-cli/xref-test/overview-frame.html index 42943977e..e24e92a3f 100644 --- a/dependency-check-cli/xref-test/overview-frame.html +++ b/dependency-check-cli/xref-test/overview-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Command Line 1.0.4 Reference + Dependency-Check Command Line 1.0.5 Reference diff --git a/dependency-check-cli/xref-test/overview-summary.html b/dependency-check-cli/xref-test/overview-summary.html index 2a6184aa9..865b757a4 100644 --- a/dependency-check-cli/xref-test/overview-summary.html +++ b/dependency-check-cli/xref-test/overview-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Command Line 1.0.4 Reference + Dependency-Check Command Line 1.0.5 Reference @@ -24,7 +24,7 @@ -

    Dependency-Check Command Line 1.0.4 Reference

    +

    Dependency-Check Command Line 1.0.5 Reference

    diff --git a/dependency-check-cli/xref/index.html b/dependency-check-cli/xref/index.html index 29a51f98a..3ec156bbd 100644 --- a/dependency-check-cli/xref/index.html +++ b/dependency-check-cli/xref/index.html @@ -3,7 +3,7 @@ - Dependency-Check Command Line 1.0.4 Reference + Dependency-Check Command Line 1.0.5 Reference diff --git a/dependency-check-cli/xref/org/owasp/dependencycheck/App.html b/dependency-check-cli/xref/org/owasp/dependencycheck/App.html index 69c340ebe..f2fda3493 100644 --- a/dependency-check-cli/xref/org/owasp/dependencycheck/App.html +++ b/dependency-check-cli/xref/org/owasp/dependencycheck/App.html @@ -108,97 +108,104 @@ 98 cli.printVersionInfo(); 99 } elseif (cli.isRunScan()) { 100 updateSettings(cli.isAutoUpdate(), cli.getConnectionTimeout(), cli.getProxyUrl(), -101 cli.getProxyPort(), cli.getDataDirectory(), cli.getPropertiesFile()); -102 runScan(cli.getReportDirectory(), cli.getReportFormat(), cli.getApplicationName(), cli.getScanFiles()); -103 } else { -104 cli.printHelp(); -105 } -106 } -107 -108/** -109 * Scans the specified directories and writes the dependency reports to the -110 * reportDirectory. -111 * -112 * @param reportDirectory the path to the directory where the reports will -113 * be written -114 * @param outputFormat the output format of the report -115 * @param applicationName the application name for the report -116 * @param files the files/directories to scan -117 */ -118privatevoid runScan(String reportDirectory, String outputFormat, String applicationName, String[] files) { -119final Engine scanner = new Engine(); -120 -121for (String file : files) { -122 scanner.scan(file); -123 } -124 -125 scanner.analyzeDependencies(); -126final List<Dependency> dependencies = scanner.getDependencies(); -127 -128final ReportGenerator report = new ReportGenerator(applicationName, dependencies, scanner.getAnalyzers()); -129try { -130 report.generateReports(reportDirectory, outputFormat); -131 } catch (IOException ex) { -132 Logger.getLogger(App.class.getName()).log(Level.SEVERE, "There was an IO error while attempting to generate the report."); -133 Logger.getLogger(App.class.getName()).log(Level.INFO, null, ex); -134 } catch (Exception ex) { -135 Logger.getLogger(App.class.getName()).log(Level.SEVERE, "There was an error while attempting to generate the report."); -136 Logger.getLogger(App.class.getName()).log(Level.INFO, null, ex); -137 } -138 } -139 -140/** -141 * Updates the global Settings. -142 * -143 * @param autoUpdate whether or not to update cached web data sources -144 * @param connectionTimeout the timeout to use when downloading resources -145 * (null or blank will use default) -146 * @param proxyUrl the proxy url (null or blank means no proxy will be used) -147 * @param proxyPort the proxy port (null or blank means no port will be -148 * used) -149 * @param dataDirectory the directory to store/retrieve persistent data from -150 * @param propertiesFile the properties file to utilize -151 */ -152privatevoid updateSettings(boolean autoUpdate, String connectionTimeout, String proxyUrl, -153 String proxyPort, String dataDirectory, File propertiesFile) { -154 -155if (propertiesFile != null) { -156try { -157 Settings.mergeProperties(propertiesFile); -158 } catch (FileNotFoundException ex) { -159final String msg = String.format("Unable to load properties file '%s'", propertiesFile.getPath()); -160 Logger.getLogger(App.class.getName()).log(Level.SEVERE, msg); -161 Logger.getLogger(App.class.getName()).log(Level.FINE, null, ex); -162 } catch (IOException ex) { -163final String msg = String.format("Unable to find properties file '%s'", propertiesFile.getPath()); -164 Logger.getLogger(App.class.getName()).log(Level.SEVERE, msg); -165 Logger.getLogger(App.class.getName()).log(Level.FINE, null, ex); -166 } -167 } -168if (dataDirectory != null) { -169 Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDirectory); -170 } elseif (System.getProperty("basedir") != null) { -171final File dataDir = new File(System.getProperty("basedir"), "data"); -172 Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDir.getAbsolutePath()); -173 } else { -174final File jarPath = new File(App.class.getProtectionDomain().getCodeSource().getLocation().getPath()); -175final File base = jarPath.getParentFile(); -176final String sub = Settings.getString(Settings.KEYS.DATA_DIRECTORY); -177final File dataDir = new File(base, sub); -178 Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDir.getAbsolutePath()); -179 } -180 Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, autoUpdate); -181if (proxyUrl != null && !proxyUrl.isEmpty()) { -182 Settings.setString(Settings.KEYS.PROXY_URL, proxyUrl); -183 } -184if (proxyPort != null && !proxyPort.isEmpty()) { -185 Settings.setString(Settings.KEYS.PROXY_PORT, proxyPort); -186 } -187if (connectionTimeout != null && !connectionTimeout.isEmpty()) { -188 Settings.setString(Settings.KEYS.CONNECTION_TIMEOUT, connectionTimeout); -189 } -190 } -191 } +101 cli.getProxyPort(), cli.getProxyUsername(), cli.getProxyPassword(), +102 cli.getDataDirectory(), cli.getPropertiesFile()); +103 runScan(cli.getReportDirectory(), cli.getReportFormat(), cli.getApplicationName(), cli.getScanFiles()); +104 } else { +105 cli.printHelp(); +106 } +107 } +108 +109/** +110 * Scans the specified directories and writes the dependency reports to the +111 * reportDirectory. +112 * +113 * @param reportDirectory the path to the directory where the reports will +114 * be written +115 * @param outputFormat the output format of the report +116 * @param applicationName the application name for the report +117 * @param files the files/directories to scan +118 */ +119privatevoid runScan(String reportDirectory, String outputFormat, String applicationName, String[] files) { +120final Engine scanner = new Engine(); +121 +122for (String file : files) { +123 scanner.scan(file); +124 } +125 +126 scanner.analyzeDependencies(); +127final List<Dependency> dependencies = scanner.getDependencies(); +128 +129final ReportGenerator report = new ReportGenerator(applicationName, dependencies, scanner.getAnalyzers()); +130try { +131 report.generateReports(reportDirectory, outputFormat); +132 } catch (IOException ex) { +133 Logger.getLogger(App.class.getName()).log(Level.SEVERE, "There was an IO error while attempting to generate the report."); +134 Logger.getLogger(App.class.getName()).log(Level.INFO, null, ex); +135 } catch (Exception ex) { +136 Logger.getLogger(App.class.getName()).log(Level.SEVERE, "There was an error while attempting to generate the report."); +137 Logger.getLogger(App.class.getName()).log(Level.INFO, null, ex); +138 } +139 } +140 +141/** +142 * Updates the global Settings. +143 * +144 * @param autoUpdate whether or not to update cached web data sources +145 * @param connectionTimeout the timeout to use when downloading resources +146 * (null or blank will use default) +147 * @param proxyUrl the proxy url (null or blank means no proxy will be used) +148 * @param proxyPort the proxy port (null or blank means no port will be +149 * used) +150 * @param dataDirectory the directory to store/retrieve persistent data from +151 * @param propertiesFile the properties file to utilize +152 */ +153privatevoid updateSettings(boolean autoUpdate, String connectionTimeout, String proxyUrl, String proxyPort, +154 String proxyUser, String proxyPass, String dataDirectory, File propertiesFile) { +155 +156if (propertiesFile != null) { +157try { +158 Settings.mergeProperties(propertiesFile); +159 } catch (FileNotFoundException ex) { +160final String msg = String.format("Unable to load properties file '%s'", propertiesFile.getPath()); +161 Logger.getLogger(App.class.getName()).log(Level.SEVERE, msg); +162 Logger.getLogger(App.class.getName()).log(Level.FINE, null, ex); +163 } catch (IOException ex) { +164final String msg = String.format("Unable to find properties file '%s'", propertiesFile.getPath()); +165 Logger.getLogger(App.class.getName()).log(Level.SEVERE, msg); +166 Logger.getLogger(App.class.getName()).log(Level.FINE, null, ex); +167 } +168 } +169if (dataDirectory != null) { +170 Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDirectory); +171 } elseif (System.getProperty("basedir") != null) { +172final File dataDir = new File(System.getProperty("basedir"), "data"); +173 Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDir.getAbsolutePath()); +174 } else { +175final File jarPath = new File(App.class.getProtectionDomain().getCodeSource().getLocation().getPath()); +176final File base = jarPath.getParentFile(); +177final String sub = Settings.getString(Settings.KEYS.DATA_DIRECTORY); +178final File dataDir = new File(base, sub); +179 Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDir.getAbsolutePath()); +180 } +181 Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, autoUpdate); +182if (proxyUrl != null && !proxyUrl.isEmpty()) { +183 Settings.setString(Settings.KEYS.PROXY_URL, proxyUrl); +184 } +185if (proxyPort != null && !proxyPort.isEmpty()) { +186 Settings.setString(Settings.KEYS.PROXY_PORT, proxyPort); +187 } +188if (proxyUser != null && !proxyUser.isEmpty()) { +189 Settings.setString(Settings.KEYS.PROXY_USERNAME, proxyUser); +190 } +191if (proxyPass != null && !proxyPass.isEmpty()) { +192 Settings.setString(Settings.KEYS.PROXY_PASSWORD, proxyPass); +193 } +194if (connectionTimeout != null && !connectionTimeout.isEmpty()) { +195 Settings.setString(Settings.KEYS.CONNECTION_TIMEOUT, connectionTimeout); +196 } +197 } +198 }
    diff --git a/dependency-check-cli/xref/org/owasp/dependencycheck/cli/CliParser.html b/dependency-check-cli/xref/org/owasp/dependencycheck/cli/CliParser.html index ddc4a8793..4dff1321e 100644 --- a/dependency-check-cli/xref/org/owasp/dependencycheck/cli/CliParser.html +++ b/dependency-check-cli/xref/org/owasp/dependencycheck/cli/CliParser.html @@ -185,338 +185,382 @@ 175 .withDescription("The proxy port to use when downloading resources.") 176 .create(ArgumentName.PROXY_PORT_SHORT); 177 -178final Option path = OptionBuilder.withArgName("path").hasArg().withLongOpt(ArgumentName.SCAN) -179 .withDescription("The path to scan - this option can be specified multiple times.") -180 .create(ArgumentName.SCAN_SHORT); +178final Option proxyUsername = OptionBuilder.withArgName("user").hasArg().withLongOpt(ArgumentName.PROXY_USERNAME) +179 .withDescription("The proxy username to use when downloading resources.") +180 .create(ArgumentName.PROXY_USERNAME_SHORT); 181 -182final Option props = OptionBuilder.withArgName("file").hasArg().withLongOpt(ArgumentName.PROP) -183 .withDescription("A property file to load.") -184 .create(ArgumentName.PROP_SHORT); +182final Option proxyPassword = OptionBuilder.withArgName("pass").hasArg().withLongOpt(ArgumentName.PROXY_PASSWORD) +183 .withDescription("The proxy password to use when downloading resources.") +184 .create(ArgumentName.PROXY_PASSWORD_SHORT); 185 -186final Option data = OptionBuilder.withArgName("path").hasArg().withLongOpt(ArgumentName.DATA_DIRECTORY) -187 .withDescription("The location of the data directory used to store persistent data. This option should generally not be set.") -188 .create(ArgumentName.DATA_DIRECTORY_SHORT); +186final Option path = OptionBuilder.withArgName("path").hasArg().withLongOpt(ArgumentName.SCAN) +187 .withDescription("The path to scan - this option can be specified multiple times.") +188 .create(ArgumentName.SCAN_SHORT); 189 -190final Option out = OptionBuilder.withArgName("folder").hasArg().withLongOpt(ArgumentName.OUT) -191 .withDescription("The folder to write reports to. This defaults to the current directory.") -192 .create(ArgumentName.OUT_SHORT); +190final Option props = OptionBuilder.withArgName("file").hasArg().withLongOpt(ArgumentName.PROP) +191 .withDescription("A property file to load.") +192 .create(ArgumentName.PROP_SHORT); 193 -194final Option outputFormat = OptionBuilder.withArgName("format").hasArg().withLongOpt(ArgumentName.OUTPUT_FORMAT) -195 .withDescription("The output format to write to (XML, HTML, VULN, ALL). The default is HTML.") -196 .create(ArgumentName.OUTPUT_FORMAT_SHORT); +194final Option data = OptionBuilder.withArgName("path").hasArg().withLongOpt(ArgumentName.DATA_DIRECTORY) +195 .withDescription("The location of the data directory used to store persistent data. This option should generally not be set.") +196 .create(ArgumentName.DATA_DIRECTORY_SHORT); 197 -198final Option verboseLog = OptionBuilder.withArgName("file").hasArg().withLongOpt(ArgumentName.VERBOSE_LOG) -199 .withDescription("The file path to write verbose logging information.") -200 .create(ArgumentName.VERBOSE_LOG_SHORT); +198final Option out = OptionBuilder.withArgName("folder").hasArg().withLongOpt(ArgumentName.OUT) +199 .withDescription("The folder to write reports to. This defaults to the current directory.") +200 .create(ArgumentName.OUT_SHORT); 201 -202final OptionGroup og = new OptionGroup(); -203 og.addOption(path); -204 -205final Options opts = new Options(); -206 opts.addOptionGroup(og); -207 opts.addOption(out); -208 opts.addOption(outputFormat); -209 opts.addOption(appName); -210 opts.addOption(version); -211 opts.addOption(help); -212 opts.addOption(noUpdate); -213 opts.addOption(props); -214 opts.addOption(data); -215 opts.addOption(verboseLog); -216 opts.addOption(proxyPort); -217 opts.addOption(proxyUrl); -218 opts.addOption(connectionTimeout); -219 -220return opts; -221 } -222 -223/** -224 * Determines if the 'version' command line argument was passed in. -225 * -226 * @return whether or not the 'version' command line argument was passed in -227 */ -228publicboolean isGetVersion() { -229return (line != null) && line.hasOption(ArgumentName.VERSION); -230 } -231 -232/** -233 * Determines if the 'help' command line argument was passed in. -234 * -235 * @return whether or not the 'help' command line argument was passed in -236 */ -237publicboolean isGetHelp() { -238return (line != null) && line.hasOption(ArgumentName.HELP); -239 } -240 -241/** -242 * Determines if the 'scan' command line argument was passed in. -243 * -244 * @return whether or not the 'scan' command line argument was passed in -245 */ -246publicboolean isRunScan() { -247return (line != null) && isValid && line.hasOption(ArgumentName.SCAN); -248 } -249 -250/** -251 * Displays the command line help message to the standard output. -252 */ -253publicvoid printHelp() { -254final HelpFormatter formatter = new HelpFormatter(); -255final String nl = System.getProperty("line.separator"); -256 -257 formatter.printHelp(Settings.getString("application.name", "DependencyCheck"), -258 nl + Settings.getString("application.name", "DependencyCheck") -259 + " can be used to identify if there are any known CVE vulnerabilities in libraries utilized by an application. " -260 + Settings.getString("application.name", "DependencyCheck") -261 + " will automatically update required data from the Internet, such as the CVE and CPE data files from nvd.nist.gov." + nl + nl, -262 options, -263"", -264true); -265 } +202final Option outputFormat = OptionBuilder.withArgName("format").hasArg().withLongOpt(ArgumentName.OUTPUT_FORMAT) +203 .withDescription("The output format to write to (XML, HTML, VULN, ALL). The default is HTML.") +204 .create(ArgumentName.OUTPUT_FORMAT_SHORT); +205 +206final Option verboseLog = OptionBuilder.withArgName("file").hasArg().withLongOpt(ArgumentName.VERBOSE_LOG) +207 .withDescription("The file path to write verbose logging information.") +208 .create(ArgumentName.VERBOSE_LOG_SHORT); +209 +210final OptionGroup og = new OptionGroup(); +211 og.addOption(path); +212 +213final Options opts = new Options(); +214 opts.addOptionGroup(og); +215 opts.addOption(out); +216 opts.addOption(outputFormat); +217 opts.addOption(appName); +218 opts.addOption(version); +219 opts.addOption(help); +220 opts.addOption(noUpdate); +221 opts.addOption(props); +222 opts.addOption(data); +223 opts.addOption(verboseLog); +224 opts.addOption(proxyPort); +225 opts.addOption(proxyUrl); +226 opts.addOption(proxyUsername); +227 opts.addOption(proxyPassword); +228 opts.addOption(connectionTimeout); +229 +230return opts; +231 } +232 +233/** +234 * Determines if the 'version' command line argument was passed in. +235 * +236 * @return whether or not the 'version' command line argument was passed in +237 */ +238publicboolean isGetVersion() { +239return (line != null) && line.hasOption(ArgumentName.VERSION); +240 } +241 +242/** +243 * Determines if the 'help' command line argument was passed in. +244 * +245 * @return whether or not the 'help' command line argument was passed in +246 */ +247publicboolean isGetHelp() { +248return (line != null) && line.hasOption(ArgumentName.HELP); +249 } +250 +251/** +252 * Determines if the 'scan' command line argument was passed in. +253 * +254 * @return whether or not the 'scan' command line argument was passed in +255 */ +256publicboolean isRunScan() { +257return (line != null) && isValid && line.hasOption(ArgumentName.SCAN); +258 } +259 +260/** +261 * Displays the command line help message to the standard output. +262 */ +263publicvoid printHelp() { +264final HelpFormatter formatter = new HelpFormatter(); +265final String nl = System.getProperty("line.separator"); 266 -267/** -268 * Retrieves the file command line parameter(s) specified for the 'scan' -269 * argument. -270 * -271 * @return the file paths specified on the command line for scan -272 */ -273public String[] getScanFiles() { -274return line.getOptionValues(ArgumentName.SCAN); +267 formatter.printHelp(Settings.getString("application.name", "DependencyCheck"), +268 nl + Settings.getString("application.name", "DependencyCheck") +269 + " can be used to identify if there are any known CVE vulnerabilities in libraries utilized by an application. " +270 + Settings.getString("application.name", "DependencyCheck") +271 + " will automatically update required data from the Internet, such as the CVE and CPE data files from nvd.nist.gov." + nl + nl, +272 options, +273"", +274true); 275 } 276277/** -278 * Returns the directory to write the reports to specified on the command -279 * line. +278 * Retrieves the file command line parameter(s) specified for the 'scan' +279 * argument.280 * -281 * @return the path to the reports directory. +281 * @return the file paths specified on the command line for scan282 */ -283public String getReportDirectory() { -284return line.getOptionValue(ArgumentName.OUT, "."); +283public String[] getScanFiles() { +284return line.getOptionValues(ArgumentName.SCAN); 285 } 286287/** -288 * Returns the output format specified on the command line. Defaults to HTML -289 * if no format was specified. +288 * Returns the directory to write the reports to specified on the command +289 * line.290 * -291 * @return the output format name. +291 * @return the path to the reports directory.292 */ -293public String getReportFormat() { -294return line.getOptionValue(ArgumentName.OUTPUT_FORMAT, "HTML"); +293public String getReportDirectory() { +294return line.getOptionValue(ArgumentName.OUT, "."); 295 } 296297/** -298 * Returns the application name specified on the command line. -299 * -300 * @return the application name. -301 */ -302public String getApplicationName() { -303return line.getOptionValue(ArgumentName.APP_NAME); -304 } -305 -306/** -307 * Returns the connection timeout. -308 * -309 * @return the connection timeout -310 */ -311public String getConnectionTimeout() { -312return line.getOptionValue(ArgumentName.CONNECTION_TIMEOUT); -313 } -314 -315/** -316 * Returns the proxy url. -317 * -318 * @return the proxy url -319 */ -320public String getProxyUrl() { -321return line.getOptionValue(ArgumentName.PROXY_URL); -322 } -323 -324/** -325 * Returns the proxy port. -326 * -327 * @return the proxy port -328 */ -329public String getProxyPort() { -330return line.getOptionValue(ArgumentName.PROXY_PORT); -331 } -332 -333/** -334 * Get the value of dataDirectory. -335 * -336 * @return the value of dataDirectory -337 */ -338public String getDataDirectory() { -339return line.getOptionValue(ArgumentName.DATA_DIRECTORY); -340 } -341 -342/** -343 * Returns the properties file specified on the command line. -344 * -345 * @return the properties file specified on the command line -346 */ -347public File getPropertiesFile() { -348final String path = line.getOptionValue(ArgumentName.PROP); -349if (path != null) { -350returnnew File(path); -351 } -352returnnull; -353 } -354 -355/** -356 * Returns the path to the verbose log file. -357 * -358 * @return the path to the verbose log file -359 */ -360public String getVerboseLog() { -361return line.getOptionValue(ArgumentName.VERBOSE_LOG); -362 } -363 -364/** -365 * <p>Prints the manifest information to standard output.</p> -366 * <ul><li>Implementation-Title: ${pom.name}</li> -367 * <li>Implementation-Version: ${pom.version}</li></ul> -368 */ -369publicvoid printVersionInfo() { -370final String version = String.format("%s version %s", -371 Settings.getString("application.name", "DependencyCheck"), -372 Settings.getString("application.version", "Unknown")); -373 System.out.println(version); -374 } -375 -376/** -377 * Checks if the auto update feature has been disabled. If it has been -378 * disabled via the command line this will return false. -379 * -380 * @return if auto-update is allowed. -381 */ -382publicboolean isAutoUpdate() { -383return (line == null) || !line.hasOption(ArgumentName.DISABLE_AUTO_UPDATE); -384 } -385 -386/** -387 * A collection of static final strings that represent the possible command -388 * line arguments. -389 */ -390publicstaticclassArgumentName { +298 * Returns the output format specified on the command line. Defaults to HTML +299 * if no format was specified. +300 * +301 * @return the output format name. +302 */ +303public String getReportFormat() { +304return line.getOptionValue(ArgumentName.OUTPUT_FORMAT, "HTML"); +305 } +306 +307/** +308 * Returns the application name specified on the command line. +309 * +310 * @return the application name. +311 */ +312public String getApplicationName() { +313return line.getOptionValue(ArgumentName.APP_NAME); +314 } +315 +316/** +317 * Returns the connection timeout. +318 * +319 * @return the connection timeout +320 */ +321public String getConnectionTimeout() { +322return line.getOptionValue(ArgumentName.CONNECTION_TIMEOUT); +323 } +324 +325/** +326 * Returns the proxy url. +327 * +328 * @return the proxy url +329 */ +330public String getProxyUrl() { +331return line.getOptionValue(ArgumentName.PROXY_URL); +332 } +333 +334/** +335 * Returns the proxy port. +336 * +337 * @return the proxy port +338 */ +339public String getProxyPort() { +340return line.getOptionValue(ArgumentName.PROXY_PORT); +341 } +342 +343/** +344 * Returns the proxy username. +345 * +346 * @return the proxy username +347 */ +348public String getProxyUsername() { +349return line.getOptionValue(ArgumentName.PROXY_USERNAME); +350 } +351 +352/** +353 * Returns the proxy password. +354 * +355 * @return the proxy password +356 */ +357public String getProxyPassword() { +358return line.getOptionValue(ArgumentName.PROXY_PASSWORD); +359 } +360 +361/** +362 * Get the value of dataDirectory. +363 * +364 * @return the value of dataDirectory +365 */ +366public String getDataDirectory() { +367return line.getOptionValue(ArgumentName.DATA_DIRECTORY); +368 } +369 +370/** +371 * Returns the properties file specified on the command line. +372 * +373 * @return the properties file specified on the command line +374 */ +375public File getPropertiesFile() { +376final String path = line.getOptionValue(ArgumentName.PROP); +377if (path != null) { +378returnnew File(path); +379 } +380returnnull; +381 } +382 +383/** +384 * Returns the path to the verbose log file. +385 * +386 * @return the path to the verbose log file +387 */ +388public String getVerboseLog() { +389return line.getOptionValue(ArgumentName.VERBOSE_LOG); +390 } 391 -392/** -393 * The long CLI argument name specifying the directory/file to scan. -394 */ -395publicstaticfinal String SCAN = "scan"; -396/** -397 * The short CLI argument name specifying the directory/file to scan. -398 */ -399publicstaticfinal String SCAN_SHORT = "s"; -400/** -401 * The long CLI argument name specifying that the CPE/CVE/etc. data -402 * should not be automatically updated. -403 */ -404publicstaticfinal String DISABLE_AUTO_UPDATE = "noupdate"; -405/** -406 * The short CLI argument name specifying that the CPE/CVE/etc. data -407 * should not be automatically updated. -408 */ -409publicstaticfinal String DISABLE_AUTO_UPDATE_SHORT = "n"; -410/** -411 * The long CLI argument name specifying the directory to write the -412 * reports to. -413 */ -414publicstaticfinal String OUT = "out"; -415/** -416 * The short CLI argument name specifying the directory to write the -417 * reports to. -418 */ -419publicstaticfinal String OUT_SHORT = "o"; +392/** +393 * <p>Prints the manifest information to standard output.</p> +394 * <ul><li>Implementation-Title: ${pom.name}</li> +395 * <li>Implementation-Version: ${pom.version}</li></ul> +396 */ +397publicvoid printVersionInfo() { +398final String version = String.format("%s version %s", +399 Settings.getString("application.name", "DependencyCheck"), +400 Settings.getString("application.version", "Unknown")); +401 System.out.println(version); +402 } +403 +404/** +405 * Checks if the auto update feature has been disabled. If it has been +406 * disabled via the command line this will return false. +407 * +408 * @return if auto-update is allowed. +409 */ +410publicboolean isAutoUpdate() { +411return (line == null) || !line.hasOption(ArgumentName.DISABLE_AUTO_UPDATE); +412 } +413 +414/** +415 * A collection of static final strings that represent the possible command +416 * line arguments. +417 */ +418publicstaticclassArgumentName { +419420/** -421 * The long CLI argument name specifying the output format to write the -422 * reports to. -423 */ -424publicstaticfinal String OUTPUT_FORMAT = "format"; -425/** -426 * The short CLI argument name specifying the output format to write the -427 * reports to. -428 */ -429publicstaticfinal String OUTPUT_FORMAT_SHORT = "f"; -430/** -431 * The long CLI argument name specifying the name of the application to -432 * be scanned. -433 */ -434publicstaticfinal String APP_NAME = "app"; -435/** -436 * The short CLI argument name specifying the name of the application to -437 * be scanned. -438 */ -439publicstaticfinal String APP_NAME_SHORT = "a"; -440/** -441 * The long CLI argument name asking for help. -442 */ -443publicstaticfinal String HELP = "help"; -444/** -445 * The short CLI argument name asking for help. +421 * The long CLI argument name specifying the directory/file to scan. +422 */ +423publicstaticfinal String SCAN = "scan"; +424/** +425 * The short CLI argument name specifying the directory/file to scan. +426 */ +427publicstaticfinal String SCAN_SHORT = "s"; +428/** +429 * The long CLI argument name specifying that the CPE/CVE/etc. data +430 * should not be automatically updated. +431 */ +432publicstaticfinal String DISABLE_AUTO_UPDATE = "noupdate"; +433/** +434 * The short CLI argument name specifying that the CPE/CVE/etc. data +435 * should not be automatically updated. +436 */ +437publicstaticfinal String DISABLE_AUTO_UPDATE_SHORT = "n"; +438/** +439 * The long CLI argument name specifying the directory to write the +440 * reports to. +441 */ +442publicstaticfinal String OUT = "out"; +443/** +444 * The short CLI argument name specifying the directory to write the +445 * reports to.446 */ -447publicstaticfinal String HELP_SHORT = "h"; +447publicstaticfinal String OUT_SHORT = "o"; 448/** -449 * The long CLI argument name asking for the version. -450 */ -451publicstaticfinal String VERSION_SHORT = "v"; -452/** -453 * The short CLI argument name asking for the version. -454 */ -455publicstaticfinal String VERSION = "version"; -456/** -457 * The short CLI argument name indicating the proxy port. -458 */ -459publicstaticfinal String PROXY_PORT_SHORT = "p"; -460/** -461 * The CLI argument name indicating the proxy port. -462 */ -463publicstaticfinal String PROXY_PORT = "proxyport"; -464/** -465 * The short CLI argument name indicating the proxy url. +449 * The long CLI argument name specifying the output format to write the +450 * reports to. +451 */ +452publicstaticfinal String OUTPUT_FORMAT = "format"; +453/** +454 * The short CLI argument name specifying the output format to write the +455 * reports to. +456 */ +457publicstaticfinal String OUTPUT_FORMAT_SHORT = "f"; +458/** +459 * The long CLI argument name specifying the name of the application to +460 * be scanned. +461 */ +462publicstaticfinal String APP_NAME = "app"; +463/** +464 * The short CLI argument name specifying the name of the application to +465 * be scanned.466 */ -467publicstaticfinal String PROXY_URL_SHORT = "u"; +467publicstaticfinal String APP_NAME_SHORT = "a"; 468/** -469 * The CLI argument name indicating the proxy url. +469 * The long CLI argument name asking for help.470 */ -471publicstaticfinal String PROXY_URL = "proxyurl"; +471publicstaticfinal String HELP = "help"; 472/** -473 * The short CLI argument name indicating the proxy url. +473 * The short CLI argument name asking for help.474 */ -475publicstaticfinal String CONNECTION_TIMEOUT_SHORT = "c"; +475publicstaticfinal String HELP_SHORT = "h"; 476/** -477 * The CLI argument name indicating the proxy url. +477 * The long CLI argument name asking for the version.478 */ -479publicstaticfinal String CONNECTION_TIMEOUT = "connectiontimeout"; +479publicstaticfinal String VERSION_SHORT = "v"; 480/** -481 * The short CLI argument name for setting the location of an additional -482 * properties file. -483 */ -484publicstaticfinal String PROP_SHORT = "p"; -485/** -486 * The CLI argument name for setting the location of an additional -487 * properties file. -488 */ -489publicstaticfinal String PROP = "propertyfile"; -490/** -491 * The CLI argument name for setting the location of the data directory. -492 */ -493publicstaticfinal String DATA_DIRECTORY = "data"; -494/** -495 * The short CLI argument name for setting the location of the data -496 * directory. -497 */ -498publicstaticfinal String DATA_DIRECTORY_SHORT = "d"; -499/** -500 * The CLI argument name for setting the location of the data directory. -501 */ -502publicstaticfinal String VERBOSE_LOG = "log"; -503/** -504 * The short CLI argument name for setting the location of the data -505 * directory. +481 * The short CLI argument name asking for the version. +482 */ +483publicstaticfinal String VERSION = "version"; +484/** +485 * The short CLI argument name indicating the proxy port. +486 */ +487publicstaticfinal String PROXY_PORT_SHORT = "p"; +488/** +489 * The CLI argument name indicating the proxy port. +490 */ +491publicstaticfinal String PROXY_PORT = "proxyport"; +492/** +493 * The short CLI argument name indicating the proxy url. +494 */ +495publicstaticfinal String PROXY_URL_SHORT = "u"; +496/** +497 * The CLI argument name indicating the proxy url. +498 */ +499publicstaticfinal String PROXY_URL = "proxyurl"; +500/** +501 * The short CLI argument name indicating the proxy username. +502 */ +503publicstaticfinal String PROXY_USERNAME_SHORT = "pu"; +504/** +505 * The CLI argument name indicating the proxy username.506 */ -507publicstaticfinal String VERBOSE_LOG_SHORT = "l"; -508 } -509 } +507publicstaticfinal String PROXY_USERNAME = "proxyuser"; +508/** +509 * The short CLI argument name indicating the proxy password. +510 */ +511publicstaticfinal String PROXY_PASSWORD_SHORT = "pp"; +512/** +513 * The CLI argument name indicating the proxy password. +514 */ +515publicstaticfinal String PROXY_PASSWORD = "proxypass"; +516/** +517 * The short CLI argument name indicating the connection timeout. +518 */ +519publicstaticfinal String CONNECTION_TIMEOUT_SHORT = "c"; +520/** +521 * The CLI argument name indicating the connection timeout. +522 */ +523publicstaticfinal String CONNECTION_TIMEOUT = "connectiontimeout"; +524/** +525 * The short CLI argument name for setting the location of an additional +526 * properties file. +527 */ +528publicstaticfinal String PROP_SHORT = "p"; +529/** +530 * The CLI argument name for setting the location of an additional +531 * properties file. +532 */ +533publicstaticfinal String PROP = "propertyfile"; +534/** +535 * The CLI argument name for setting the location of the data directory. +536 */ +537publicstaticfinal String DATA_DIRECTORY = "data"; +538/** +539 * The short CLI argument name for setting the location of the data +540 * directory. +541 */ +542publicstaticfinal String DATA_DIRECTORY_SHORT = "d"; +543/** +544 * The CLI argument name for setting the location of the data directory. +545 */ +546publicstaticfinal String VERBOSE_LOG = "log"; +547/** +548 * The short CLI argument name for setting the location of the data +549 * directory. +550 */ +551publicstaticfinal String VERBOSE_LOG_SHORT = "l"; +552 } +553 }
    diff --git a/dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-frame.html b/dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-frame.html index 513cd9823..f0c611b97 100644 --- a/dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-frame.html +++ b/dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Command Line 1.0.4 Reference Package org.owasp.dependencycheck.cli + Dependency-Check Command Line 1.0.5 Reference Package org.owasp.dependencycheck.cli diff --git a/dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-summary.html b/dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-summary.html index 555da4e2d..8896e822f 100644 --- a/dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-summary.html +++ b/dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Command Line 1.0.4 Reference Package org.owasp.dependencycheck.cli + Dependency-Check Command Line 1.0.5 Reference Package org.owasp.dependencycheck.cli diff --git a/dependency-check-cli/xref/org/owasp/dependencycheck/package-frame.html b/dependency-check-cli/xref/org/owasp/dependencycheck/package-frame.html index ce227200f..13328cbf5 100644 --- a/dependency-check-cli/xref/org/owasp/dependencycheck/package-frame.html +++ b/dependency-check-cli/xref/org/owasp/dependencycheck/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Command Line 1.0.4 Reference Package org.owasp.dependencycheck + Dependency-Check Command Line 1.0.5 Reference Package org.owasp.dependencycheck diff --git a/dependency-check-cli/xref/org/owasp/dependencycheck/package-summary.html b/dependency-check-cli/xref/org/owasp/dependencycheck/package-summary.html index 510b84df4..850438291 100644 --- a/dependency-check-cli/xref/org/owasp/dependencycheck/package-summary.html +++ b/dependency-check-cli/xref/org/owasp/dependencycheck/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Command Line 1.0.4 Reference Package org.owasp.dependencycheck + Dependency-Check Command Line 1.0.5 Reference Package org.owasp.dependencycheck diff --git a/dependency-check-cli/xref/overview-frame.html b/dependency-check-cli/xref/overview-frame.html index 2d34f40cb..598e2f36c 100644 --- a/dependency-check-cli/xref/overview-frame.html +++ b/dependency-check-cli/xref/overview-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Command Line 1.0.4 Reference + Dependency-Check Command Line 1.0.5 Reference diff --git a/dependency-check-cli/xref/overview-summary.html b/dependency-check-cli/xref/overview-summary.html index cc4b5422a..bc48c8014 100644 --- a/dependency-check-cli/xref/overview-summary.html +++ b/dependency-check-cli/xref/overview-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Command Line 1.0.4 Reference + Dependency-Check Command Line 1.0.5 Reference @@ -24,7 +24,7 @@ -

    Dependency-Check Command Line 1.0.4 Reference

    +

    Dependency-Check Command Line 1.0.5 Reference

    diff --git a/dependency-check-core/apidocs/allclasses-frame.html b/dependency-check-core/apidocs/allclasses-frame.html index b67572fb2..f243e3a6e 100644 --- a/dependency-check-core/apidocs/allclasses-frame.html +++ b/dependency-check-core/apidocs/allclasses-frame.html @@ -2,13 +2,13 @@ - + -All Classes (Dependency-Check Core 1.0.4 API) +All Classes (Dependency-Check Core 1.0.5 API) - + @@ -48,6 +48,8 @@ All Classes (Dependency-Check Core 1.0.4 API)
    ArchiveAnalyzer
    +ArchiveExtractionException +
    BaseIndex
    BatchUpdateTask @@ -226,6 +228,8 @@ All Classes (Dependency-Check Core 1.0.4 API)
    Model.Repositories
    +NoDataException +
    NonClosingStream
    Notifier diff --git a/dependency-check-core/apidocs/allclasses-noframe.html b/dependency-check-core/apidocs/allclasses-noframe.html index de93bcfe6..a512336c4 100644 --- a/dependency-check-core/apidocs/allclasses-noframe.html +++ b/dependency-check-core/apidocs/allclasses-noframe.html @@ -2,13 +2,13 @@ - + -All Classes (Dependency-Check Core 1.0.4 API) +All Classes (Dependency-Check Core 1.0.5 API) - + @@ -48,6 +48,8 @@ All Classes (Dependency-Check Core 1.0.4 API)
    ArchiveAnalyzer
    +ArchiveExtractionException +
    BaseIndex
    BatchUpdateTask @@ -226,6 +228,8 @@ All Classes (Dependency-Check Core 1.0.4 API)
    Model.Repositories
    +NoDataException +
    NonClosingStream
    Notifier diff --git a/dependency-check-core/apidocs/constant-values.html b/dependency-check-core/apidocs/constant-values.html index 2480059e0..2cf76cb98 100644 --- a/dependency-check-core/apidocs/constant-values.html +++ b/dependency-check-core/apidocs/constant-values.html @@ -2,13 +2,13 @@ - + -Constant Field Values (Dependency-Check Core 1.0.4 API) +Constant Field Values (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Constant Field Values (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Constant Field Values (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Constant Field Values (Dependency-Check Core 1.0.5 API)"; } } @@ -548,6 +548,12 @@ org.owasp.* + + + + + @@ -560,6 +566,12 @@ org.owasp.* + + + + + diff --git a/dependency-check-core/apidocs/deprecated-list.html b/dependency-check-core/apidocs/deprecated-list.html index 222540e80..9dab12474 100644 --- a/dependency-check-core/apidocs/deprecated-list.html +++ b/dependency-check-core/apidocs/deprecated-list.html @@ -2,13 +2,13 @@ - + -Deprecated List (Dependency-Check Core 1.0.4 API) +Deprecated List (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Deprecated List (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Deprecated List (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Deprecated List (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/help-doc.html b/dependency-check-core/apidocs/help-doc.html index a71f15eea..d7dae90cd 100644 --- a/dependency-check-core/apidocs/help-doc.html +++ b/dependency-check-core/apidocs/help-doc.html @@ -2,13 +2,13 @@ - + -API Help (Dependency-Check Core 1.0.4 API) +API Help (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ API Help (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="API Help (Dependency-Check Core 1.0.4 API)"; + parent.document.title="API Help (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/index-all.html b/dependency-check-core/apidocs/index-all.html index 7939547ac..d73b69c4b 100644 --- a/dependency-check-core/apidocs/index-all.html +++ b/dependency-check-core/apidocs/index-all.html @@ -2,13 +2,13 @@ - + -Index (Dependency-Check Core 1.0.4 API) +Index (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Index (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Index (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Index (Dependency-Check Core 1.0.5 API)"; } } @@ -275,15 +275,22 @@ Variable in class org.owasp.dependencycheck.jaxb.pom.generated.archive - Variable in class org.owasp.dependencycheck.jaxb.pom.generated.MailingList
      -
    ArchiveAnalyzer - Class in org.owasp.dependencycheck.analyzer
    An analyzer that works on archive files: - - ZIP - if it is determined to be a JAR, WAR or EAR a copy is made - and the copy is given the correct extension so that it will be correctly - analyzed. - WAR - the WAR contents are extracted and added as dependencies to - the scan.
    ArchiveAnalyzer() - +
    ArchiveAnalyzer - Class in org.owasp.dependencycheck.analyzer
    An analyzer that extracts files from archives and ensures any supported + files contained within the archive are added to the dependency list.
    ArchiveAnalyzer() - Constructor for class org.owasp.dependencycheck.analyzer.ArchiveAnalyzer
      +
    ArchiveExtractionException - Exception in org.owasp.dependencycheck.analyzer
    An exception thrown when the analysis of a dependency fails.
    ArchiveExtractionException() - +Constructor for exception org.owasp.dependencycheck.analyzer.ArchiveExtractionException +
    Creates a new AnalysisException. +
    ArchiveExtractionException(String) - +Constructor for exception org.owasp.dependencycheck.analyzer.ArchiveExtractionException +
    Creates a new AnalysisException. +
    ArchiveExtractionException(Throwable) - +Constructor for exception org.owasp.dependencycheck.analyzer.ArchiveExtractionException +
    Creates a new AnalysisException. +
    ArchiveExtractionException(String, Throwable) - +Constructor for exception org.owasp.dependencycheck.analyzer.ArchiveExtractionException +
    Creates a new DownloadFailedException.
    artifactId - Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Dependency
      @@ -2808,6 +2815,9 @@ Static method in class org.owasp.dependencycheck.utils.isUsed() - Method in class org.owasp.dependencycheck.dependency.Evidence
    Get the value of used. +
    isVerboseLoggingEnabled() - +Static method in class org.owasp.dependencycheck.utils.LogUtils +
    Get the value of verboseLoggingEnabled.
    isVersNode() - Method in class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.Element
    Checks if the handler is at the VERS node. @@ -3053,6 +3063,18 @@ Static method in class org.owasp.dependencycheck.analyzer.next() - Method in class org.owasp.dependencycheck.data.update.Updateable
    Returns the next item in the collection. +
    NoDataException - Exception in org.owasp.dependencycheck.data
    An exception used when the data needed does not exist to perform analysis.
    NoDataException() - +Constructor for exception org.owasp.dependencycheck.data.NoDataException +
    Creates a new NoDataException. +
    NoDataException(String) - +Constructor for exception org.owasp.dependencycheck.data.NoDataException +
    Creates a new NoDataException. +
    NoDataException(Throwable) - +Constructor for exception org.owasp.dependencycheck.data.NoDataException +
    Creates a new NoDataException. +
    NoDataException(String, Throwable) - +Constructor for exception org.owasp.dependencycheck.data.NoDataException +
    Creates a new NoDataException.
    NonClosingStream - Class in org.owasp.dependencycheck.utils
    NonClosingStream is a stream filter which prevents another class that processes the stream from closing it.
    NonClosingStream(InputStream) - Constructor for class org.owasp.dependencycheck.utils.NonClosingStream @@ -3069,6 +3091,9 @@ Constructor for class org.owasp.dependencycheck.jaxb.pom.generated.notifiers - Variable in class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement
      +
    numDocs() - +Method in class org.owasp.dependencycheck.data.cpe.CpeIndexReader +
    Returns the number of CPE entries stored in the index.
    NVD - Static variable in class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.Element
    A node type in the NVD CVE Schema 1.2. @@ -3421,6 +3446,9 @@ Variable in class org.owasp.dependencycheck.jaxb.pom.generated.property - Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Activation
      +
    PROXY_PASSWORD - +Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS +
    The properties key for the proxy password.
    PROXY_PORT - Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS
    The properties key for the proxy port - this must be an integer @@ -3428,6 +3456,9 @@ Static variable in class org.owasp.dependencycheck.utils.PROXY_URL - Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS
    The properties key for the proxy url. +
    PROXY_USERNAME - +Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS +
    The properties key for the proxy username.

    diff --git a/dependency-check-core/apidocs/index.html b/dependency-check-core/apidocs/index.html index 3c68e5db9..03aec2471 100644 --- a/dependency-check-core/apidocs/index.html +++ b/dependency-check-core/apidocs/index.html @@ -2,10 +2,10 @@ - + -Dependency-Check Core 1.0.4 API +Dependency-Check Core 1.0.5 API diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AbstractAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AbstractAnalyzer.html index 53700319c..9d483f9d9 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AbstractAnalyzer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AbstractAnalyzer.html @@ -2,13 +2,13 @@ - + -AbstractAnalyzer (Dependency-Check Core 1.0.4 API) +AbstractAnalyzer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ AbstractAnalyzer (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="AbstractAnalyzer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="AbstractAnalyzer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalysisException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalysisException.html index 603d442f1..40a7eccaa 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalysisException.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalysisException.html @@ -2,13 +2,13 @@ - + -AnalysisException (Dependency-Check Core 1.0.4 API) +AnalysisException (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ AnalysisException (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="AnalysisException (Dependency-Check Core 1.0.4 API)"; + parent.document.title="AnalysisException (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalysisPhase.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalysisPhase.html index a540cfee7..642947446 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalysisPhase.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalysisPhase.html @@ -2,13 +2,13 @@ - + -AnalysisPhase (Dependency-Check Core 1.0.4 API) +AnalysisPhase (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ AnalysisPhase (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="AnalysisPhase (Dependency-Check Core 1.0.4 API)"; + parent.document.title="AnalysisPhase (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/Analyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/Analyzer.html index dc1507e3c..e30c218d6 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/Analyzer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/Analyzer.html @@ -2,13 +2,13 @@ - + -Analyzer (Dependency-Check Core 1.0.4 API) +Analyzer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Analyzer (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Analyzer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Analyzer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalyzerService.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalyzerService.html index ccc2a6193..b87749458 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalyzerService.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalyzerService.html @@ -2,13 +2,13 @@ - + -AnalyzerService (Dependency-Check Core 1.0.4 API) +AnalyzerService (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ AnalyzerService (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="AnalyzerService (Dependency-Check Core 1.0.4 API)"; + parent.document.title="AnalyzerService (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html index cc4cd919f..cf3054f68 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html @@ -2,13 +2,13 @@ - + -ArchiveAnalyzer (Dependency-Check Core 1.0.4 API) +ArchiveAnalyzer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ ArchiveAnalyzer (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="ArchiveAnalyzer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="ArchiveAnalyzer (Dependency-Check Core 1.0.5 API)"; } } @@ -57,7 +57,7 @@ function windowTitle()

    NEXT CLASSNEXT CLASS +          An analyzer that extracts files from archives and ensures any supported + files contained within the archive are added to the dependency list. +          An analyzer that extracts files from archives and ensures any supported + files contained within the archive are added to the dependency list. +AnalysisException +
    +ArchiveExtractionException
    "database.drive"
    +public static final StringPROXY_PASSWORD"proxy.password"
    public static final String PROXY_PORT "proxy.url"
    +public static final StringPROXY_USERNAME"proxy.username"
    public static final String TEMP_DIRECTORY
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisException.html index 721e9d16b..0287b7f4d 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisException.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisException.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.analyzer.AnalysisException (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.analyzer.AnalysisException (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.analyzer.AnalysisException (Dependency-C function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.AnalysisException (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.AnalysisException (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisPhase.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisPhase.html index f0cd79dd8..156fba9b7 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisPhase.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisPhase.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.analyzer.AnalysisPhase (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.analyzer.AnalysisPhase (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.analyzer.AnalysisPhase (Dependency-Check function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.AnalysisPhase (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.AnalysisPhase (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/Analyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/Analyzer.html index ccd99eb55..0c1621431 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/Analyzer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/Analyzer.html @@ -2,13 +2,13 @@ - + -Uses of Interface org.owasp.dependencycheck.analyzer.Analyzer (Dependency-Check Core 1.0.4 API) +Uses of Interface org.owasp.dependencycheck.analyzer.Analyzer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Interface org.owasp.dependencycheck.analyzer.Analyzer (Dependency-Check function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Interface org.owasp.dependencycheck.analyzer.Analyzer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Interface org.owasp.dependencycheck.analyzer.Analyzer (Dependency-Check Core 1.0.5 API)"; } } @@ -182,13 +182,8 @@ Uses of ArchiveAnalyzer
    -          An analyzer that works on archive files: - - ZIP - if it is determined to be a JAR, WAR or EAR a copy is made - and the copy is given the correct extension so that it will be correctly - analyzed. - WAR - the WAR contents are extracted and added as dependencies to - the scan.
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalyzerService.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalyzerService.html index 0382ec278..81d23ba3c 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalyzerService.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalyzerService.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.analyzer.AnalyzerService (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.analyzer.AnalyzerService (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.analyzer.AnalyzerService (Dependency-Che function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.AnalyzerService (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.AnalyzerService (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/ArchiveAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/ArchiveAnalyzer.html index 9b03f8b13..5c670c760 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/ArchiveAnalyzer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/ArchiveAnalyzer.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.analyzer.ArchiveAnalyzer (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.analyzer.ArchiveAnalyzer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.analyzer.ArchiveAnalyzer (Dependency-Che function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.ArchiveAnalyzer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.ArchiveAnalyzer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/CPEAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/CPEAnalyzer.html index 978f4cce3..46a57c58f 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/CPEAnalyzer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/CPEAnalyzer.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.analyzer.CPEAnalyzer (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.analyzer.CPEAnalyzer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.analyzer.CPEAnalyzer (Dependency-Check C function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.CPEAnalyzer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.CPEAnalyzer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/DependencyBundlingAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/DependencyBundlingAnalyzer.html index 40a860107..bd1ba84de 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/DependencyBundlingAnalyzer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/DependencyBundlingAnalyzer.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer (Dep function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/FalsePositiveAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/FalsePositiveAnalyzer.html index 99e4ee6e6..ef3b8637c 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/FalsePositiveAnalyzer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/FalsePositiveAnalyzer.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer (Dependen function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/FileNameAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/FileNameAnalyzer.html index 5dee54c3f..306bf2942 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/FileNameAnalyzer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/FileNameAnalyzer.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.analyzer.FileNameAnalyzer (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.analyzer.FileNameAnalyzer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.analyzer.FileNameAnalyzer (Dependency-Ch function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.FileNameAnalyzer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.FileNameAnalyzer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/HintAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/HintAnalyzer.html index cd794e08d..fa2fc88ad 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/HintAnalyzer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/HintAnalyzer.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.analyzer.HintAnalyzer (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.analyzer.HintAnalyzer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.analyzer.HintAnalyzer (Dependency-Check function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.HintAnalyzer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.HintAnalyzer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JarAnalyzer.ClassNameInformation.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JarAnalyzer.ClassNameInformation.html index e14f04996..58f771982 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JarAnalyzer.ClassNameInformation.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JarAnalyzer.ClassNameInformation.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.analyzer.JarAnalyzer.ClassNameInformation (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.analyzer.JarAnalyzer.ClassNameInformation (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.analyzer.JarAnalyzer.ClassNameInformatio function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.JarAnalyzer.ClassNameInformation (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.JarAnalyzer.ClassNameInformation (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JarAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JarAnalyzer.html index 0ca293708..4f4faf468 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JarAnalyzer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JarAnalyzer.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.analyzer.JarAnalyzer (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.analyzer.JarAnalyzer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.analyzer.JarAnalyzer (Dependency-Check C function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.JarAnalyzer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.JarAnalyzer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JavaScriptAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JavaScriptAnalyzer.html index 4b56d975f..6106ca2b0 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JavaScriptAnalyzer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JavaScriptAnalyzer.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer (Dependency- function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/NvdCveAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/NvdCveAnalyzer.html index e261e5fe0..6ec88d30a 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/NvdCveAnalyzer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/NvdCveAnalyzer.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.analyzer.NvdCveAnalyzer (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.analyzer.NvdCveAnalyzer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.analyzer.NvdCveAnalyzer (Dependency-Chec function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.NvdCveAnalyzer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.analyzer.NvdCveAnalyzer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-frame.html index cd2019df5..a80be1214 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-frame.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-frame.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.analyzer (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.analyzer (Dependency-Check Core 1.0.5 API) - + @@ -79,7 +79,9 @@ Enums  Exceptions 
    -AnalysisException
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-summary.html index 6d365c72b..6e34763fa 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-summary.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-summary.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.analyzer (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.analyzer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.analyzer (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.analyzer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.analyzer (Dependency-Check Core 1.0.5 API)"; } } @@ -125,13 +125,8 @@ Package org.owasp.dependencycheck.analyzer ArchiveAnalyzer -An analyzer that works on archive files: - - ZIP - if it is determined to be a JAR, WAR or EAR a copy is made - and the copy is given the correct extension so that it will be correctly - analyzed. - WAR - the WAR contents are extracted and added as dependencies to - the scan. +An analyzer that extracts files from archives and ensures any supported + files contained within the archive are added to the dependency list. CPEAnalyzer @@ -203,6 +198,10 @@ Package org.owasp.dependencycheck.analyzer AnalysisException An exception thrown when the analysis of a dependency fails. + +ArchiveExtractionException +An exception thrown when the analysis of a dependency fails. +   diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-tree.html index a39d5f0b1..d68c5fcb1 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-tree.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-tree.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.analyzer Class Hierarchy (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.analyzer Class Hierarchy (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.analyzer Class Hierarchy (Dependency-Check Core 1.0.4 function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.analyzer Class Hierarchy (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.analyzer Class Hierarchy (Dependency-Check Core 1.0.5 API)"; } } @@ -107,7 +107,7 @@ Class Hierarchy
  • java.lang.Throwable (implements java.io.Serializable) diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-use.html index b18b1351b..833226df7 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-use.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-use.html @@ -2,13 +2,13 @@ - + -Uses of Package org.owasp.dependencycheck.analyzer (Dependency-Check Core 1.0.4 API) +Uses of Package org.owasp.dependencycheck.analyzer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Package org.owasp.dependencycheck.analyzer (Dependency-Check Core 1.0.4 function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Package org.owasp.dependencycheck.analyzer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Package org.owasp.dependencycheck.analyzer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/class-use/Engine.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/class-use/Engine.html index d02adbba5..da455e6ab 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/class-use/Engine.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/class-use/Engine.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.Engine (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.Engine (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.Engine (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.Engine (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.Engine (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/DirectoryLockException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/DirectoryLockException.html index 33b078942..bd2b1298e 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/DirectoryLockException.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/DirectoryLockException.html @@ -2,13 +2,13 @@ - + -DirectoryLockException (Dependency-Check Core 1.0.4 API) +DirectoryLockException (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ DirectoryLockException (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="DirectoryLockException (Dependency-Check Core 1.0.4 API)"; + parent.document.title="DirectoryLockException (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/DirectorySpinLock.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/DirectorySpinLock.html index 78a113b25..995ac969b 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/DirectorySpinLock.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/DirectorySpinLock.html @@ -2,13 +2,13 @@ - + -DirectorySpinLock (Dependency-Check Core 1.0.4 API) +DirectorySpinLock (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ DirectorySpinLock (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="DirectorySpinLock (Dependency-Check Core 1.0.4 API)"; + parent.document.title="DirectorySpinLock (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/InvalidDirectoryException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/InvalidDirectoryException.html index 61ab68cd2..56f9b262d 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/InvalidDirectoryException.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/InvalidDirectoryException.html @@ -2,13 +2,13 @@ - + -InvalidDirectoryException (Dependency-Check Core 1.0.4 API) +InvalidDirectoryException (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ InvalidDirectoryException (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="InvalidDirectoryException (Dependency-Check Core 1.0.4 API)"; + parent.document.title="InvalidDirectoryException (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/DirectoryLockException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/DirectoryLockException.html index a3ca2ed4d..b58465ebe 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/DirectoryLockException.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/DirectoryLockException.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.concurrency.DirectoryLockException (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.concurrency.DirectoryLockException (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.concurrency.DirectoryLockException (Depe function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.concurrency.DirectoryLockException (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.concurrency.DirectoryLockException (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/DirectorySpinLock.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/DirectorySpinLock.html index 3d6b8a5d3..ab27ca7b9 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/DirectorySpinLock.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/DirectorySpinLock.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.concurrency.DirectorySpinLock (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.concurrency.DirectorySpinLock (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.concurrency.DirectorySpinLock (Dependenc function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.concurrency.DirectorySpinLock (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.concurrency.DirectorySpinLock (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/InvalidDirectoryException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/InvalidDirectoryException.html index cd5929aa7..9e218b7e7 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/InvalidDirectoryException.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/class-use/InvalidDirectoryException.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.concurrency.InvalidDirectoryException (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.concurrency.InvalidDirectoryException (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.concurrency.InvalidDirectoryException (D function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.concurrency.InvalidDirectoryException (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.concurrency.InvalidDirectoryException (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-frame.html index acf2825b0..7773df9ae 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-frame.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-frame.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.concurrency (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.concurrency (Dependency-Check Core 1.0.5 API) - + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-summary.html index 81f90bb95..c0ade3ef7 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-summary.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-summary.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.concurrency (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.concurrency (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.concurrency (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.concurrency (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.concurrency (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-tree.html index d40550cde..449c83074 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-tree.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-tree.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.concurrency Class Hierarchy (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.concurrency Class Hierarchy (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.concurrency Class Hierarchy (Dependency-Check Core 1.0 function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.concurrency Class Hierarchy (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.concurrency Class Hierarchy (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-use.html index bbaec4610..2a56b4b32 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-use.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/concurrency/package-use.html @@ -2,13 +2,13 @@ - + -Uses of Package org.owasp.dependencycheck.concurrency (Dependency-Check Core 1.0.4 API) +Uses of Package org.owasp.dependencycheck.concurrency (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Package org.owasp.dependencycheck.concurrency (Dependency-Check Core 1.0 function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Package org.owasp.dependencycheck.concurrency (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Package org.owasp.dependencycheck.concurrency (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/CachedWebDataSource.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/CachedWebDataSource.html index 2aeb5ce08..73c8ee73d 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/CachedWebDataSource.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/CachedWebDataSource.html @@ -2,13 +2,13 @@ - + -CachedWebDataSource (Dependency-Check Core 1.0.4 API) +CachedWebDataSource (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ CachedWebDataSource (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="CachedWebDataSource (Dependency-Check Core 1.0.4 API)"; + parent.document.title="CachedWebDataSource (Dependency-Check Core 1.0.5 API)"; } } @@ -57,7 +57,7 @@ function windowTitle()  PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   @@ -195,7 +195,7 @@ void update()  PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateException.html index 01f3cece8..a3b4c54be 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateException.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateException.html @@ -2,13 +2,13 @@ - + -UpdateException (Dependency-Check Core 1.0.4 API) +UpdateException (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ UpdateException (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="UpdateException (Dependency-Check Core 1.0.4 API)"; + parent.document.title="UpdateException (Dependency-Check Core 1.0.5 API)"; } } @@ -56,7 +56,7 @@ function windowTitle() PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   @@ -271,7 +271,7 @@ public UpdateException(PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateService.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateService.html index ee1bf9986..a4d76f673 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateService.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateService.html @@ -2,13 +2,13 @@ - + -UpdateService (Dependency-Check Core 1.0.4 API) +UpdateService (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ UpdateService (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="UpdateService (Dependency-Check Core 1.0.4 API)"; + parent.document.title="UpdateService (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/CachedWebDataSource.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/CachedWebDataSource.html index ac99dc8b8..71fd49bc7 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/CachedWebDataSource.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/CachedWebDataSource.html @@ -2,13 +2,13 @@ - + -Uses of Interface org.owasp.dependencycheck.data.CachedWebDataSource (Dependency-Check Core 1.0.4 API) +Uses of Interface org.owasp.dependencycheck.data.CachedWebDataSource (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Interface org.owasp.dependencycheck.data.CachedWebDataSource (Dependency function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Interface org.owasp.dependencycheck.data.CachedWebDataSource (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Interface org.owasp.dependencycheck.data.CachedWebDataSource (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/UpdateException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/UpdateException.html index d33175560..dfab081d7 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/UpdateException.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/UpdateException.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.UpdateException (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.UpdateException (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.UpdateException (Dependency-Check C function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.UpdateException (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.UpdateException (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/UpdateService.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/UpdateService.html index bd231369d..7901da2b0 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/UpdateService.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/UpdateService.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.UpdateService (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.UpdateService (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.UpdateService (Dependency-Check Cor function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.UpdateService (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.UpdateService (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/BaseIndex.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/BaseIndex.html index d0d2e2419..584406e0e 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/BaseIndex.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/BaseIndex.html @@ -2,13 +2,13 @@ - + -BaseIndex (Dependency-Check Core 1.0.4 API) +BaseIndex (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ BaseIndex (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="BaseIndex (Dependency-Check Core 1.0.4 API)"; + parent.document.title="BaseIndex (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/CpeIndexReader.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/CpeIndexReader.html index 267f3240e..305440c03 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/CpeIndexReader.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/CpeIndexReader.html @@ -2,13 +2,13 @@ - + -CpeIndexReader (Dependency-Check Core 1.0.4 API) +CpeIndexReader (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ CpeIndexReader (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="CpeIndexReader (Dependency-Check Core 1.0.4 API)"; + parent.document.title="CpeIndexReader (Dependency-Check Core 1.0.5 API)"; } } @@ -153,6 +153,14 @@ Class CpeIndexReader + int +numDocs() + +
    +          Returns the number of CPE entries stored in the index. + + +  void open() @@ -317,6 +325,20 @@ public org.apache.lucene.document.Document getDocument(int documentI
    IOException - thrown if there is an IOException
    +
    + +

    +numDocs

    +
    +public int numDocs()
    +
    +
    Returns the number of CPE entries stored in the index. +

    +

    + +
    Returns:
    the number of CPE entries stored in the index
    +
    +

    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/CpeIndexWriter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/CpeIndexWriter.html index a97a5ad77..4f108a5fa 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/CpeIndexWriter.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/CpeIndexWriter.html @@ -2,13 +2,13 @@ - + -CpeIndexWriter (Dependency-Check Core 1.0.4 API) +CpeIndexWriter (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ CpeIndexWriter (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="CpeIndexWriter (Dependency-Check Core 1.0.4 API)"; + parent.document.title="CpeIndexWriter (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/Fields.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/Fields.html index 2a13e4b97..9f1175ab2 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/Fields.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/Fields.html @@ -2,13 +2,13 @@ - + -Fields (Dependency-Check Core 1.0.4 API) +Fields (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Fields (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Fields (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Fields (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/IndexEntry.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/IndexEntry.html index d2b7fdcdd..954f4d6b4 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/IndexEntry.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/IndexEntry.html @@ -2,13 +2,13 @@ - + -IndexEntry (Dependency-Check Core 1.0.4 API) +IndexEntry (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ IndexEntry (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="IndexEntry (Dependency-Check Core 1.0.4 API)"; + parent.document.title="IndexEntry (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/BaseIndex.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/BaseIndex.html index ef7e07543..5a3473834 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/BaseIndex.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/BaseIndex.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.cpe.BaseIndex (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.cpe.BaseIndex (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.cpe.BaseIndex (Dependency-Check Cor function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.cpe.BaseIndex (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.cpe.BaseIndex (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/CpeIndexReader.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/CpeIndexReader.html index bc14f2bbb..dc12fbacf 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/CpeIndexReader.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/CpeIndexReader.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.cpe.CpeIndexReader (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.cpe.CpeIndexReader (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.cpe.CpeIndexReader (Dependency-Chec function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.cpe.CpeIndexReader (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.cpe.CpeIndexReader (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/CpeIndexWriter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/CpeIndexWriter.html index 4da9c3714..1d0a24035 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/CpeIndexWriter.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/CpeIndexWriter.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.cpe.CpeIndexWriter (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.cpe.CpeIndexWriter (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.cpe.CpeIndexWriter (Dependency-Chec function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.cpe.CpeIndexWriter (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.cpe.CpeIndexWriter (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/Fields.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/Fields.html index a331f4bdd..4b6643051 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/Fields.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/Fields.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.cpe.Fields (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.cpe.Fields (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.cpe.Fields (Dependency-Check Core 1 function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.cpe.Fields (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.cpe.Fields (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/IndexEntry.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/IndexEntry.html index 365de048a..f1a01a426 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/IndexEntry.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/IndexEntry.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.cpe.IndexEntry (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.cpe.IndexEntry (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.cpe.IndexEntry (Dependency-Check Co function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.cpe.IndexEntry (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.cpe.IndexEntry (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-frame.html index c35834260..04f1e4cd7 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-frame.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-frame.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.data.cpe (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.data.cpe (Dependency-Check Core 1.0.5 API) - + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-summary.html index 85b91246a..f5e7aee35 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-summary.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-summary.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.data.cpe (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.data.cpe (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.data.cpe (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.data.cpe (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.data.cpe (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-tree.html index 6fb7ad8b2..c140f8c78 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-tree.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-tree.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.data.cpe Class Hierarchy (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.data.cpe Class Hierarchy (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.data.cpe Class Hierarchy (Dependency-Check Core 1.0.4 function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.data.cpe Class Hierarchy (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.data.cpe Class Hierarchy (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-use.html index 91b1120b1..9ffe6788c 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-use.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-use.html @@ -2,13 +2,13 @@ - + -Uses of Package org.owasp.dependencycheck.data.cpe (Dependency-Check Core 1.0.4 API) +Uses of Package org.owasp.dependencycheck.data.cpe (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Package org.owasp.dependencycheck.data.cpe (Dependency-Check Core 1.0.4 function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Package org.owasp.dependencycheck.data.cpe (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Package org.owasp.dependencycheck.data.cpe (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweDB.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweDB.html index 994ede834..796ba1c9e 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweDB.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweDB.html @@ -2,13 +2,13 @@ - + -CweDB (Dependency-Check Core 1.0.4 API) +CweDB (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ CweDB (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="CweDB (Dependency-Check Core 1.0.4 API)"; + parent.document.title="CweDB (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweHandler.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweHandler.html index 4f8e5d752..f6af2885c 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweHandler.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweHandler.html @@ -2,13 +2,13 @@ - + -CweHandler (Dependency-Check Core 1.0.4 API) +CweHandler (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ CweHandler (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="CweHandler (Dependency-Check Core 1.0.4 API)"; + parent.document.title="CweHandler (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/class-use/CweDB.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/class-use/CweDB.html index abffad2bb..3fb47fbe8 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/class-use/CweDB.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/class-use/CweDB.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.cwe.CweDB (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.cwe.CweDB (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.cwe.CweDB (Dependency-Check Core 1. function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.cwe.CweDB (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.cwe.CweDB (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/class-use/CweHandler.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/class-use/CweHandler.html index 91cc46714..077131179 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/class-use/CweHandler.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/class-use/CweHandler.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.cwe.CweHandler (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.cwe.CweHandler (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.cwe.CweHandler (Dependency-Check Co function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.cwe.CweHandler (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.cwe.CweHandler (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-frame.html index 70d4903d3..fc4d3b552 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-frame.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-frame.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.data.cwe (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.data.cwe (Dependency-Check Core 1.0.5 API) - + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-summary.html index 51c43e6b2..3e666e61f 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-summary.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-summary.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.data.cwe (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.data.cwe (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.data.cwe (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.data.cwe (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.data.cwe (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-tree.html index 48d253cd0..fcaefd55f 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-tree.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-tree.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.data.cwe Class Hierarchy (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.data.cwe Class Hierarchy (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.data.cwe Class Hierarchy (Dependency-Check Core 1.0.4 function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.data.cwe Class Hierarchy (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.data.cwe Class Hierarchy (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-use.html index 1767f7d94..fd93ed787 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-use.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-use.html @@ -2,13 +2,13 @@ - + -Uses of Package org.owasp.dependencycheck.data.cwe (Dependency-Check Core 1.0.4 API) +Uses of Package org.owasp.dependencycheck.data.cwe (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Package org.owasp.dependencycheck.data.cwe (Dependency-Check Core 1.0.4 function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Package org.owasp.dependencycheck.data.cwe (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Package org.owasp.dependencycheck.data.cwe (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AbstractTokenizingFilter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AbstractTokenizingFilter.html index 72b4a5d6a..60ca58ae4 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AbstractTokenizingFilter.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AbstractTokenizingFilter.html @@ -2,13 +2,13 @@ - + -AbstractTokenizingFilter (Dependency-Check Core 1.0.4 API) +AbstractTokenizingFilter (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ AbstractTokenizingFilter (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="AbstractTokenizingFilter (Dependency-Check Core 1.0.4 API)"; + parent.document.title="AbstractTokenizingFilter (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AlphaNumericTokenizer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AlphaNumericTokenizer.html index 002d315c9..ec7734dff 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AlphaNumericTokenizer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AlphaNumericTokenizer.html @@ -2,13 +2,13 @@ - + -AlphaNumericTokenizer (Dependency-Check Core 1.0.4 API) +AlphaNumericTokenizer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ AlphaNumericTokenizer (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="AlphaNumericTokenizer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="AlphaNumericTokenizer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/DependencySimilarity.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/DependencySimilarity.html index cc695a2e6..7166a5563 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/DependencySimilarity.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/DependencySimilarity.html @@ -2,13 +2,13 @@ - + -DependencySimilarity (Dependency-Check Core 1.0.4 API) +DependencySimilarity (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ DependencySimilarity (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="DependencySimilarity (Dependency-Check Core 1.0.4 API)"; + parent.document.title="DependencySimilarity (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/FieldAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/FieldAnalyzer.html index 50f92fdc7..c4672afea 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/FieldAnalyzer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/FieldAnalyzer.html @@ -2,13 +2,13 @@ - + -FieldAnalyzer (Dependency-Check Core 1.0.4 API) +FieldAnalyzer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ FieldAnalyzer (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="FieldAnalyzer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="FieldAnalyzer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/LuceneUtils.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/LuceneUtils.html index ad9add264..cee41b101 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/LuceneUtils.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/LuceneUtils.html @@ -2,13 +2,13 @@ - + -LuceneUtils (Dependency-Check Core 1.0.4 API) +LuceneUtils (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ LuceneUtils (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="LuceneUtils (Dependency-Check Core 1.0.4 API)"; + parent.document.title="LuceneUtils (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchFieldAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchFieldAnalyzer.html index 0671395f9..6c82b4e2d 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchFieldAnalyzer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchFieldAnalyzer.html @@ -2,13 +2,13 @@ - + -SearchFieldAnalyzer (Dependency-Check Core 1.0.4 API) +SearchFieldAnalyzer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ SearchFieldAnalyzer (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="SearchFieldAnalyzer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="SearchFieldAnalyzer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchVersionAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchVersionAnalyzer.html index 7e7547d29..f087ac6fa 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchVersionAnalyzer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchVersionAnalyzer.html @@ -2,13 +2,13 @@ - + -SearchVersionAnalyzer (Dependency-Check Core 1.0.4 API) +SearchVersionAnalyzer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ SearchVersionAnalyzer (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="SearchVersionAnalyzer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="SearchVersionAnalyzer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilter.html index 8c4ed6628..efd9e4761 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilter.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilter.html @@ -2,13 +2,13 @@ - + -TokenPairConcatenatingFilter (Dependency-Check Core 1.0.4 API) +TokenPairConcatenatingFilter (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ TokenPairConcatenatingFilter (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="TokenPairConcatenatingFilter (Dependency-Check Core 1.0.4 API)"; + parent.document.title="TokenPairConcatenatingFilter (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilter.html index f6cc27312..d3b544651 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilter.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilter.html @@ -2,13 +2,13 @@ - + -UrlTokenizingFilter (Dependency-Check Core 1.0.4 API) +UrlTokenizingFilter (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ UrlTokenizingFilter (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="UrlTokenizingFilter (Dependency-Check Core 1.0.4 API)"; + parent.document.title="UrlTokenizingFilter (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionAnalyzer.html index 927cd0d3f..a2576c715 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionAnalyzer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionAnalyzer.html @@ -2,13 +2,13 @@ - + -VersionAnalyzer (Dependency-Check Core 1.0.4 API) +VersionAnalyzer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ VersionAnalyzer (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="VersionAnalyzer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="VersionAnalyzer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionTokenizingFilter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionTokenizingFilter.html index 04aacbda3..85a6692e5 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionTokenizingFilter.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionTokenizingFilter.html @@ -2,13 +2,13 @@ - + -VersionTokenizingFilter (Dependency-Check Core 1.0.4 API) +VersionTokenizingFilter (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ VersionTokenizingFilter (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="VersionTokenizingFilter (Dependency-Check Core 1.0.4 API)"; + parent.document.title="VersionTokenizingFilter (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AbstractTokenizingFilter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AbstractTokenizingFilter.html index b8e70bb08..8df9f9afe 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AbstractTokenizingFilter.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AbstractTokenizingFilter.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter (De function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AlphaNumericTokenizer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AlphaNumericTokenizer.html index 4912411ef..0e4327491 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AlphaNumericTokenizer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AlphaNumericTokenizer.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer (Depen function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/DependencySimilarity.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/DependencySimilarity.html index db4e4415d..73169d810 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/DependencySimilarity.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/DependencySimilarity.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.lucene.DependencySimilarity (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.lucene.DependencySimilarity (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.lucene.DependencySimilarity (Depend function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.lucene.DependencySimilarity (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.lucene.DependencySimilarity (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/FieldAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/FieldAnalyzer.html index a381d54f0..8284bbaf5 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/FieldAnalyzer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/FieldAnalyzer.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.lucene.FieldAnalyzer (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.lucene.FieldAnalyzer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.lucene.FieldAnalyzer (Dependency-Ch function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.lucene.FieldAnalyzer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.lucene.FieldAnalyzer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/LuceneUtils.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/LuceneUtils.html index ce6f550f7..961a28d05 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/LuceneUtils.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/LuceneUtils.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.lucene.LuceneUtils (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.lucene.LuceneUtils (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.lucene.LuceneUtils (Dependency-Chec function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.lucene.LuceneUtils (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.lucene.LuceneUtils (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/SearchFieldAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/SearchFieldAnalyzer.html index f339355a1..961817b4b 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/SearchFieldAnalyzer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/SearchFieldAnalyzer.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer (Depende function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/SearchVersionAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/SearchVersionAnalyzer.html index b89c0f2e3..a30f55b61 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/SearchVersionAnalyzer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/SearchVersionAnalyzer.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer (Depen function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/TokenPairConcatenatingFilter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/TokenPairConcatenatingFilter.html index f259f76fe..408d78dd3 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/TokenPairConcatenatingFilter.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/TokenPairConcatenatingFilter.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/UrlTokenizingFilter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/UrlTokenizingFilter.html index 5bdd9bc25..4dbb7f5e5 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/UrlTokenizingFilter.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/UrlTokenizingFilter.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.lucene.UrlTokenizingFilter (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.lucene.UrlTokenizingFilter (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.lucene.UrlTokenizingFilter (Depende function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.lucene.UrlTokenizingFilter (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.lucene.UrlTokenizingFilter (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/VersionAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/VersionAnalyzer.html index 902167fc5..172b63ef6 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/VersionAnalyzer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/VersionAnalyzer.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.lucene.VersionAnalyzer (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.lucene.VersionAnalyzer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.lucene.VersionAnalyzer (Dependency- function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.lucene.VersionAnalyzer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.lucene.VersionAnalyzer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/VersionTokenizingFilter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/VersionTokenizingFilter.html index 5f05ce266..abcc32ff1 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/VersionTokenizingFilter.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/VersionTokenizingFilter.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter (Dep function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-frame.html index 7c2163eba..35a196ad5 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-frame.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-frame.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.data.lucene (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.data.lucene (Dependency-Check Core 1.0.5 API) - + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-summary.html index 710bdc502..02737b3b6 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-summary.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-summary.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.data.lucene (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.data.lucene (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.data.lucene (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.data.lucene (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.data.lucene (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-tree.html index 9af23fd0b..5fa76e5ef 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-tree.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-tree.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.data.lucene Class Hierarchy (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.data.lucene Class Hierarchy (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.data.lucene Class Hierarchy (Dependency-Check Core 1.0 function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.data.lucene Class Hierarchy (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.data.lucene Class Hierarchy (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-use.html index 6281b8e12..aef1d2db0 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-use.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-use.html @@ -2,13 +2,13 @@ - + -Uses of Package org.owasp.dependencycheck.data.lucene (Dependency-Check Core 1.0.4 API) +Uses of Package org.owasp.dependencycheck.data.lucene (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Package org.owasp.dependencycheck.data.lucene (Dependency-Check Core 1.0 function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Package org.owasp.dependencycheck.data.lucene (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Package org.owasp.dependencycheck.data.lucene (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/CveDB.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/CveDB.html index 6b37a265a..61bdd774d 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/CveDB.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/CveDB.html @@ -2,13 +2,13 @@ - + -CveDB (Dependency-Check Core 1.0.4 API) +CveDB (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ CveDB (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="CveDB (Dependency-Check Core 1.0.4 API)"; + parent.document.title="CveDB (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/DatabaseException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/DatabaseException.html index f4f89312c..317c5ec32 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/DatabaseException.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/DatabaseException.html @@ -2,13 +2,13 @@ - + -DatabaseException (Dependency-Check Core 1.0.4 API) +DatabaseException (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ DatabaseException (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="DatabaseException (Dependency-Check Core 1.0.4 API)"; + parent.document.title="DatabaseException (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/InvalidDataException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/InvalidDataException.html index 153cf9386..96e07baa0 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/InvalidDataException.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/InvalidDataException.html @@ -2,13 +2,13 @@ - + -InvalidDataException (Dependency-Check Core 1.0.4 API) +InvalidDataException (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ InvalidDataException (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="InvalidDataException (Dependency-Check Core 1.0.4 API)"; + parent.document.title="InvalidDataException (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve12Handler.Element.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve12Handler.Element.html index a25b67378..2e4ce0df3 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve12Handler.Element.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve12Handler.Element.html @@ -2,13 +2,13 @@ - + -NvdCve12Handler.Element (Dependency-Check Core 1.0.4 API) +NvdCve12Handler.Element (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ NvdCve12Handler.Element (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="NvdCve12Handler.Element (Dependency-Check Core 1.0.4 API)"; + parent.document.title="NvdCve12Handler.Element (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve12Handler.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve12Handler.html index c6cbb105e..84e9a9455 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve12Handler.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve12Handler.html @@ -2,13 +2,13 @@ - + -NvdCve12Handler (Dependency-Check Core 1.0.4 API) +NvdCve12Handler (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ NvdCve12Handler (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="NvdCve12Handler (Dependency-Check Core 1.0.4 API)"; + parent.document.title="NvdCve12Handler (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve20Handler.Element.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve20Handler.Element.html index c142d13a1..be96568e3 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve20Handler.Element.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve20Handler.Element.html @@ -2,13 +2,13 @@ - + -NvdCve20Handler.Element (Dependency-Check Core 1.0.4 API) +NvdCve20Handler.Element (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ NvdCve20Handler.Element (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="NvdCve20Handler.Element (Dependency-Check Core 1.0.4 API)"; + parent.document.title="NvdCve20Handler.Element (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve20Handler.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve20Handler.html index ba8e469e8..39bcc813f 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve20Handler.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCve20Handler.html @@ -2,13 +2,13 @@ - + -NvdCve20Handler (Dependency-Check Core 1.0.4 API) +NvdCve20Handler (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ NvdCve20Handler (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="NvdCve20Handler (Dependency-Check Core 1.0.4 API)"; + parent.document.title="NvdCve20Handler (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/CveDB.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/CveDB.html index 1b10d2cef..f82d3ff88 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/CveDB.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/CveDB.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.nvdcve.CveDB (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.nvdcve.CveDB (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.nvdcve.CveDB (Dependency-Check Core function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.nvdcve.CveDB (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.nvdcve.CveDB (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/DatabaseException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/DatabaseException.html index 8b2408a2e..38f6017d7 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/DatabaseException.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/DatabaseException.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.nvdcve.DatabaseException (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.nvdcve.DatabaseException (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.nvdcve.DatabaseException (Dependenc function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.nvdcve.DatabaseException (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.nvdcve.DatabaseException (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/InvalidDataException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/InvalidDataException.html index 969774c78..05c119dd5 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/InvalidDataException.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/InvalidDataException.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.nvdcve.InvalidDataException (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.nvdcve.InvalidDataException (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.nvdcve.InvalidDataException (Depend function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.nvdcve.InvalidDataException (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.nvdcve.InvalidDataException (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve12Handler.Element.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve12Handler.Element.html index ee733fa20..e00fcc883 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve12Handler.Element.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve12Handler.Element.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.Element (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.Element (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.Element (Dep function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.Element (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.Element (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve12Handler.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve12Handler.html index fdde8c033..ad9e680c7 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve12Handler.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve12Handler.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler (Dependency- function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve20Handler.Element.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve20Handler.Element.html index 2e3f95ea7..e22bec19c 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve20Handler.Element.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve20Handler.Element.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element (Dep function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.Element (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve20Handler.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve20Handler.html index d063c8cca..d99f8bc0d 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve20Handler.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCve20Handler.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler (Dependency- function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-frame.html index bdde59863..80a19855a 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-frame.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-frame.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.data.nvdcve (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.data.nvdcve (Dependency-Check Core 1.0.5 API) - + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-summary.html index 4b1d56f01..2eb743e6c 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-summary.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-summary.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.data.nvdcve (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.data.nvdcve (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.data.nvdcve (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.data.nvdcve (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.data.nvdcve (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-tree.html index 4b7e094b2..447d3b6ae 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-tree.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-tree.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.data.nvdcve Class Hierarchy (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.data.nvdcve Class Hierarchy (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.data.nvdcve Class Hierarchy (Dependency-Check Core 1.0 function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.data.nvdcve Class Hierarchy (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.data.nvdcve Class Hierarchy (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-use.html index 5847a5136..6c746eec2 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-use.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-use.html @@ -2,13 +2,13 @@ - + -Uses of Package org.owasp.dependencycheck.data.nvdcve (Dependency-Check Core 1.0.4 API) +Uses of Package org.owasp.dependencycheck.data.nvdcve (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Package org.owasp.dependencycheck.data.nvdcve (Dependency-Check Core 1.0 function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Package org.owasp.dependencycheck.data.nvdcve (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Package org.owasp.dependencycheck.data.nvdcve (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-frame.html index cfde6b5eb..7de07636d 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-frame.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-frame.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.data (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.data (Dependency-Check Core 1.0.5 API) - + @@ -46,6 +46,8 @@ Classes
      Exceptions
     
    +NoDataException +
    UpdateException
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-summary.html index 8bdf904b9..b85ce6e2d 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-summary.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-summary.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.data (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.data (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.data (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.data (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.data (Dependency-Check Core 1.0.5 API)"; } } @@ -129,6 +129,10 @@ Package org.owasp.dependencycheck.data Exception Summary
    +NoDataException +An exception used when the data needed does not exist to perform analysis. + + UpdateException An exception used when an error occurs reading a setting. diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-tree.html index f9cab34aa..32224cfc6 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-tree.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-tree.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.data Class Hierarchy (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.data Class Hierarchy (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.data Class Hierarchy (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.data Class Hierarchy (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.data Class Hierarchy (Dependency-Check Core 1.0.5 API)"; } } @@ -97,7 +97,7 @@ Class Hierarchy
  • org.owasp.dependencycheck.data.UpdateService diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-use.html index 32d1ff0a8..128b17dea 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-use.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-use.html @@ -2,13 +2,13 @@ - + -Uses of Package org.owasp.dependencycheck.data (Dependency-Check Core 1.0.4 API) +Uses of Package org.owasp.dependencycheck.data (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Package org.owasp.dependencycheck.data (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Package org.owasp.dependencycheck.data (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Package org.owasp.dependencycheck.data (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/AbstractUpdateTask.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/AbstractUpdateTask.html index 1eaeda8c9..78bfb8dc1 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/AbstractUpdateTask.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/AbstractUpdateTask.html @@ -2,13 +2,13 @@ - + -AbstractUpdateTask (Dependency-Check Core 1.0.4 API) +AbstractUpdateTask (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ AbstractUpdateTask (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="AbstractUpdateTask (Dependency-Check Core 1.0.4 API)"; + parent.document.title="AbstractUpdateTask (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/BatchUpdateTask.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/BatchUpdateTask.html index 53ec744f7..3aef52242 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/BatchUpdateTask.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/BatchUpdateTask.html @@ -2,13 +2,13 @@ - + -BatchUpdateTask (Dependency-Check Core 1.0.4 API) +BatchUpdateTask (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ BatchUpdateTask (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="BatchUpdateTask (Dependency-Check Core 1.0.4 API)"; + parent.document.title="BatchUpdateTask (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/DataStoreMetaInfo.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/DataStoreMetaInfo.html index c71a723fa..7353ecd03 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/DataStoreMetaInfo.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/DataStoreMetaInfo.html @@ -2,13 +2,13 @@ - + -DataStoreMetaInfo (Dependency-Check Core 1.0.4 API) +DataStoreMetaInfo (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ DataStoreMetaInfo (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="DataStoreMetaInfo (Dependency-Check Core 1.0.4 API)"; + parent.document.title="DataStoreMetaInfo (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/DatabaseUpdater.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/DatabaseUpdater.html index edf5f402b..7ff854a04 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/DatabaseUpdater.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/DatabaseUpdater.html @@ -2,13 +2,13 @@ - + -DatabaseUpdater (Dependency-Check Core 1.0.4 API) +DatabaseUpdater (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ DatabaseUpdater (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="DatabaseUpdater (Dependency-Check Core 1.0.4 API)"; + parent.document.title="DatabaseUpdater (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/NvdCveInfo.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/NvdCveInfo.html index 6326203a6..775b3a0c2 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/NvdCveInfo.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/NvdCveInfo.html @@ -2,13 +2,13 @@ - + -NvdCveInfo (Dependency-Check Core 1.0.4 API) +NvdCveInfo (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ NvdCveInfo (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="NvdCveInfo (Dependency-Check Core 1.0.4 API)"; + parent.document.title="NvdCveInfo (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/StandardUpdateTask.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/StandardUpdateTask.html index d26653c7c..0049e5dca 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/StandardUpdateTask.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/StandardUpdateTask.html @@ -2,13 +2,13 @@ - + -StandardUpdateTask (Dependency-Check Core 1.0.4 API) +StandardUpdateTask (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ StandardUpdateTask (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="StandardUpdateTask (Dependency-Check Core 1.0.4 API)"; + parent.document.title="StandardUpdateTask (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/UpdateTask.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/UpdateTask.html index bc21b8c68..96f33eba8 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/UpdateTask.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/UpdateTask.html @@ -2,13 +2,13 @@ - + -UpdateTask (Dependency-Check Core 1.0.4 API) +UpdateTask (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ UpdateTask (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="UpdateTask (Dependency-Check Core 1.0.4 API)"; + parent.document.title="UpdateTask (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/UpdateTaskFactory.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/UpdateTaskFactory.html index 4a23d538c..4e2c469c3 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/UpdateTaskFactory.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/UpdateTaskFactory.html @@ -2,13 +2,13 @@ - + -UpdateTaskFactory (Dependency-Check Core 1.0.4 API) +UpdateTaskFactory (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ UpdateTaskFactory (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="UpdateTaskFactory (Dependency-Check Core 1.0.4 API)"; + parent.document.title="UpdateTaskFactory (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/Updateable.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/Updateable.html index 3fed68b30..ad574c213 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/Updateable.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/Updateable.html @@ -2,13 +2,13 @@ - + -Updateable (Dependency-Check Core 1.0.4 API) +Updateable (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Updateable (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Updateable (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Updateable (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/AbstractUpdateTask.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/AbstractUpdateTask.html index 9444e580a..f3172fff8 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/AbstractUpdateTask.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/AbstractUpdateTask.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.update.AbstractUpdateTask (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.update.AbstractUpdateTask (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.update.AbstractUpdateTask (Dependen function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.update.AbstractUpdateTask (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.update.AbstractUpdateTask (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/BatchUpdateTask.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/BatchUpdateTask.html index 7ddab122e..df11e790d 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/BatchUpdateTask.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/BatchUpdateTask.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.update.BatchUpdateTask (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.update.BatchUpdateTask (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.update.BatchUpdateTask (Dependency- function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.update.BatchUpdateTask (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.update.BatchUpdateTask (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/DataStoreMetaInfo.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/DataStoreMetaInfo.html index 7d7f24f6d..90779c06c 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/DataStoreMetaInfo.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/DataStoreMetaInfo.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.update.DataStoreMetaInfo (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.update.DataStoreMetaInfo (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.update.DataStoreMetaInfo (Dependenc function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.update.DataStoreMetaInfo (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.update.DataStoreMetaInfo (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/DatabaseUpdater.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/DatabaseUpdater.html index def0be8e3..74e7c34f5 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/DatabaseUpdater.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/DatabaseUpdater.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.update.DatabaseUpdater (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.update.DatabaseUpdater (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.update.DatabaseUpdater (Dependency- function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.update.DatabaseUpdater (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.update.DatabaseUpdater (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/NvdCveInfo.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/NvdCveInfo.html index f4a903ef6..3c9da10b3 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/NvdCveInfo.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/NvdCveInfo.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.update.NvdCveInfo (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.update.NvdCveInfo (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.update.NvdCveInfo (Dependency-Check function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.update.NvdCveInfo (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.update.NvdCveInfo (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/StandardUpdateTask.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/StandardUpdateTask.html index 7df000d92..3f5dd9f01 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/StandardUpdateTask.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/StandardUpdateTask.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.update.StandardUpdateTask (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.update.StandardUpdateTask (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.update.StandardUpdateTask (Dependen function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.update.StandardUpdateTask (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.update.StandardUpdateTask (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/UpdateTask.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/UpdateTask.html index af067f8d5..d6d567192 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/UpdateTask.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/UpdateTask.html @@ -2,13 +2,13 @@ - + -Uses of Interface org.owasp.dependencycheck.data.update.UpdateTask (Dependency-Check Core 1.0.4 API) +Uses of Interface org.owasp.dependencycheck.data.update.UpdateTask (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Interface org.owasp.dependencycheck.data.update.UpdateTask (Dependency-C function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Interface org.owasp.dependencycheck.data.update.UpdateTask (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Interface org.owasp.dependencycheck.data.update.UpdateTask (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/UpdateTaskFactory.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/UpdateTaskFactory.html index 2ded36132..205fb23f1 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/UpdateTaskFactory.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/UpdateTaskFactory.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.update.UpdateTaskFactory (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.update.UpdateTaskFactory (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.update.UpdateTaskFactory (Dependenc function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.update.UpdateTaskFactory (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.update.UpdateTaskFactory (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/Updateable.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/Updateable.html index 96a572aaf..982031e97 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/Updateable.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/class-use/Updateable.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.data.update.Updateable (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.data.update.Updateable (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.data.update.Updateable (Dependency-Check function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.data.update.Updateable (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.data.update.Updateable (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-frame.html index 8c2457940..eaf94c388 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-frame.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-frame.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.data.update (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.data.update (Dependency-Check Core 1.0.5 API) - + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-summary.html index 30c15482d..fefe7ad52 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-summary.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-summary.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.data.update (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.data.update (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.data.update (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.data.update (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.data.update (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-tree.html index fb6369ab9..e5b75bf45 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-tree.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-tree.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.data.update Class Hierarchy (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.data.update Class Hierarchy (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.data.update Class Hierarchy (Dependency-Check Core 1.0 function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.data.update Class Hierarchy (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.data.update Class Hierarchy (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-use.html index e5f3a061d..c21490c92 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-use.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/update/package-use.html @@ -2,13 +2,13 @@ - + -Uses of Package org.owasp.dependencycheck.data.update (Dependency-Check Core 1.0.4 API) +Uses of Package org.owasp.dependencycheck.data.update (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Package org.owasp.dependencycheck.data.update (Dependency-Check Core 1.0 function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Package org.owasp.dependencycheck.data.update (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Package org.owasp.dependencycheck.data.update (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Dependency.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Dependency.html index 790267392..6a7a8b721 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Dependency.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Dependency.html @@ -2,13 +2,13 @@ - + -Dependency (Dependency-Check Core 1.0.4 API) +Dependency (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Dependency (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Dependency (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Dependency (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.Confidence.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.Confidence.html index 17107ed0e..55ddb1ee0 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.Confidence.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.Confidence.html @@ -2,13 +2,13 @@ - + -Evidence.Confidence (Dependency-Check Core 1.0.4 API) +Evidence.Confidence (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Evidence.Confidence (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Evidence.Confidence (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Evidence.Confidence (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.html index 2c67b7719..1868a1ac4 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.html @@ -2,13 +2,13 @@ - + -Evidence (Dependency-Check Core 1.0.4 API) +Evidence (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Evidence (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Evidence (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Evidence (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/EvidenceCollection.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/EvidenceCollection.html index 16d9b3f95..6aa286c75 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/EvidenceCollection.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/EvidenceCollection.html @@ -2,13 +2,13 @@ - + -EvidenceCollection (Dependency-Check Core 1.0.4 API) +EvidenceCollection (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ EvidenceCollection (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="EvidenceCollection (Dependency-Check Core 1.0.4 API)"; + parent.document.title="EvidenceCollection (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Identifier.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Identifier.html index 48c605b83..a5005f8d0 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Identifier.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Identifier.html @@ -2,13 +2,13 @@ - + -Identifier (Dependency-Check Core 1.0.4 API) +Identifier (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Identifier (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Identifier (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Identifier (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Reference.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Reference.html index a2c413782..2baaff87c 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Reference.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Reference.html @@ -2,13 +2,13 @@ - + -Reference (Dependency-Check Core 1.0.4 API) +Reference (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Reference (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Reference (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Reference (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Vulnerability.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Vulnerability.html index 26ec2b2d4..d0de2c20a 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Vulnerability.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Vulnerability.html @@ -2,13 +2,13 @@ - + -Vulnerability (Dependency-Check Core 1.0.4 API) +Vulnerability (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Vulnerability (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Vulnerability (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Vulnerability (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerabilityComparator.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerabilityComparator.html index 25949c807..d70abf6cc 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerabilityComparator.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerabilityComparator.html @@ -2,13 +2,13 @@ - + -VulnerabilityComparator (Dependency-Check Core 1.0.4 API) +VulnerabilityComparator (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ VulnerabilityComparator (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="VulnerabilityComparator (Dependency-Check Core 1.0.4 API)"; + parent.document.title="VulnerabilityComparator (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerableSoftware.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerableSoftware.html index 44393b6a5..edf153e09 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerableSoftware.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerableSoftware.html @@ -2,13 +2,13 @@ - + -VulnerableSoftware (Dependency-Check Core 1.0.4 API) +VulnerableSoftware (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ VulnerableSoftware (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="VulnerableSoftware (Dependency-Check Core 1.0.4 API)"; + parent.document.title="VulnerableSoftware (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Dependency.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Dependency.html index 632958adc..c7e41eaf7 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Dependency.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Dependency.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.dependency.Dependency (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.dependency.Dependency (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.dependency.Dependency (Dependency-Check function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.dependency.Dependency (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.dependency.Dependency (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Evidence.Confidence.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Evidence.Confidence.html index ccccbfb80..f2d35952c 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Evidence.Confidence.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Evidence.Confidence.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.dependency.Evidence.Confidence (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.dependency.Evidence.Confidence (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.dependency.Evidence.Confidence (Dependen function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.dependency.Evidence.Confidence (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.dependency.Evidence.Confidence (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Evidence.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Evidence.html index 643a976e1..a63c501fe 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Evidence.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Evidence.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.dependency.Evidence (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.dependency.Evidence (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.dependency.Evidence (Dependency-Check Co function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.dependency.Evidence (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.dependency.Evidence (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/EvidenceCollection.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/EvidenceCollection.html index fe2f1c05b..cf193ae91 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/EvidenceCollection.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/EvidenceCollection.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.dependency.EvidenceCollection (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.dependency.EvidenceCollection (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.dependency.EvidenceCollection (Dependenc function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.dependency.EvidenceCollection (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.dependency.EvidenceCollection (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Identifier.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Identifier.html index 13599bd58..d2b4883e7 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Identifier.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Identifier.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.dependency.Identifier (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.dependency.Identifier (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.dependency.Identifier (Dependency-Check function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.dependency.Identifier (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.dependency.Identifier (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Reference.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Reference.html index 0be36fa44..ad4f1cf99 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Reference.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Reference.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.dependency.Reference (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.dependency.Reference (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.dependency.Reference (Dependency-Check C function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.dependency.Reference (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.dependency.Reference (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Vulnerability.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Vulnerability.html index 8bc5b1301..28fd807e8 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Vulnerability.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Vulnerability.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.dependency.Vulnerability (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.dependency.Vulnerability (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.dependency.Vulnerability (Dependency-Che function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.dependency.Vulnerability (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.dependency.Vulnerability (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/VulnerabilityComparator.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/VulnerabilityComparator.html index eed8389da..bd3f932cb 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/VulnerabilityComparator.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/VulnerabilityComparator.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.dependency.VulnerabilityComparator (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.dependency.VulnerabilityComparator (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.dependency.VulnerabilityComparator (Depe function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.dependency.VulnerabilityComparator (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.dependency.VulnerabilityComparator (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/VulnerableSoftware.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/VulnerableSoftware.html index 533529405..edd747b6d 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/VulnerableSoftware.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/VulnerableSoftware.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.dependency.VulnerableSoftware (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.dependency.VulnerableSoftware (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.dependency.VulnerableSoftware (Dependenc function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.dependency.VulnerableSoftware (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.dependency.VulnerableSoftware (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-frame.html index ce33079dc..6b205e252 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-frame.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-frame.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.dependency (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.dependency (Dependency-Check Core 1.0.5 API) - + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-summary.html index bd748b43e..c2637ebe7 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-summary.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-summary.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.dependency (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.dependency (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.dependency (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.dependency (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.dependency (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-tree.html index 9362b736b..9d88cb25e 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-tree.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-tree.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.dependency Class Hierarchy (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.dependency Class Hierarchy (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.dependency Class Hierarchy (Dependency-Check Core 1.0. function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.dependency Class Hierarchy (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.dependency Class Hierarchy (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-use.html index 8e9b275e9..4a076f3ed 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-use.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-use.html @@ -2,13 +2,13 @@ - + -Uses of Package org.owasp.dependencycheck.dependency (Dependency-Check Core 1.0.4 API) +Uses of Package org.owasp.dependencycheck.dependency (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Package org.owasp.dependencycheck.dependency (Dependency-Check Core 1.0. function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Package org.owasp.dependencycheck.dependency (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Package org.owasp.dependencycheck.dependency (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/MavenNamespaceFilter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/MavenNamespaceFilter.html index ba6789b14..01dea333c 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/MavenNamespaceFilter.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/MavenNamespaceFilter.html @@ -2,13 +2,13 @@ - + -MavenNamespaceFilter (Dependency-Check Core 1.0.4 API) +MavenNamespaceFilter (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ MavenNamespaceFilter (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="MavenNamespaceFilter (Dependency-Check Core 1.0.4 API)"; + parent.document.title="MavenNamespaceFilter (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/class-use/MavenNamespaceFilter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/class-use/MavenNamespaceFilter.html index 5bc0f75bc..a56f04136 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/class-use/MavenNamespaceFilter.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/class-use/MavenNamespaceFilter.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter (Dependenc function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Activation.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Activation.html index eba687df4..8fbaa32eb 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Activation.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Activation.html @@ -2,13 +2,13 @@ - + -Activation (Dependency-Check Core 1.0.4 API) +Activation (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Activation (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Activation (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Activation (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationFile.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationFile.html index dcb06f610..1e804795b 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationFile.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationFile.html @@ -2,13 +2,13 @@ - + -ActivationFile (Dependency-Check Core 1.0.4 API) +ActivationFile (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ ActivationFile (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="ActivationFile (Dependency-Check Core 1.0.4 API)"; + parent.document.title="ActivationFile (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationOS.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationOS.html index 16228ea16..ea1ec567f 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationOS.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationOS.html @@ -2,13 +2,13 @@ - + -ActivationOS (Dependency-Check Core 1.0.4 API) +ActivationOS (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ ActivationOS (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="ActivationOS (Dependency-Check Core 1.0.4 API)"; + parent.document.title="ActivationOS (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationProperty.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationProperty.html index 5f345f1d1..a7d7a6f02 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationProperty.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationProperty.html @@ -2,13 +2,13 @@ - + -ActivationProperty (Dependency-Check Core 1.0.4 API) +ActivationProperty (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ ActivationProperty (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="ActivationProperty (Dependency-Check Core 1.0.4 API)"; + parent.document.title="ActivationProperty (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Extensions.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Extensions.html index 603fa20ac..3c5fd8ffc 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Extensions.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Extensions.html @@ -2,13 +2,13 @@ - + -Build.Extensions (Dependency-Check Core 1.0.4 API) +Build.Extensions (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Build.Extensions (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Build.Extensions (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Build.Extensions (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Filters.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Filters.html index ab4083f25..6c478330f 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Filters.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Filters.html @@ -2,13 +2,13 @@ - + -Build.Filters (Dependency-Check Core 1.0.4 API) +Build.Filters (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Build.Filters (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Build.Filters (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Build.Filters (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Plugins.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Plugins.html index 2100e3fda..100950dc7 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Plugins.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Plugins.html @@ -2,13 +2,13 @@ - + -Build.Plugins (Dependency-Check Core 1.0.4 API) +Build.Plugins (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Build.Plugins (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Build.Plugins (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Build.Plugins (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Resources.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Resources.html index 59c592d0b..5ec55f389 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Resources.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Resources.html @@ -2,13 +2,13 @@ - + -Build.Resources (Dependency-Check Core 1.0.4 API) +Build.Resources (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Build.Resources (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Build.Resources (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Build.Resources (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.TestResources.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.TestResources.html index edcf410ef..e6098bf1f 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.TestResources.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.TestResources.html @@ -2,13 +2,13 @@ - + -Build.TestResources (Dependency-Check Core 1.0.4 API) +Build.TestResources (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Build.TestResources (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Build.TestResources (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Build.TestResources (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.html index 5e9b19d3d..e7fe6b4d6 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.html @@ -2,13 +2,13 @@ - + -Build (Dependency-Check Core 1.0.4 API) +Build (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Build (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Build (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Build (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Filters.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Filters.html index b803a4a16..29a991c0e 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Filters.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Filters.html @@ -2,13 +2,13 @@ - + -BuildBase.Filters (Dependency-Check Core 1.0.4 API) +BuildBase.Filters (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ BuildBase.Filters (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="BuildBase.Filters (Dependency-Check Core 1.0.4 API)"; + parent.document.title="BuildBase.Filters (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Plugins.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Plugins.html index 2b21dd61e..49ddfd757 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Plugins.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Plugins.html @@ -2,13 +2,13 @@ - + -BuildBase.Plugins (Dependency-Check Core 1.0.4 API) +BuildBase.Plugins (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ BuildBase.Plugins (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="BuildBase.Plugins (Dependency-Check Core 1.0.4 API)"; + parent.document.title="BuildBase.Plugins (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Resources.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Resources.html index 170b310ac..dbde6184d 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Resources.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Resources.html @@ -2,13 +2,13 @@ - + -BuildBase.Resources (Dependency-Check Core 1.0.4 API) +BuildBase.Resources (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ BuildBase.Resources (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="BuildBase.Resources (Dependency-Check Core 1.0.4 API)"; + parent.document.title="BuildBase.Resources (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.TestResources.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.TestResources.html index f5e3af66c..8c35b31e6 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.TestResources.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.TestResources.html @@ -2,13 +2,13 @@ - + -BuildBase.TestResources (Dependency-Check Core 1.0.4 API) +BuildBase.TestResources (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ BuildBase.TestResources (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="BuildBase.TestResources (Dependency-Check Core 1.0.4 API)"; + parent.document.title="BuildBase.TestResources (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.html index 0e329217b..b9832af2b 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.html @@ -2,13 +2,13 @@ - + -BuildBase (Dependency-Check Core 1.0.4 API) +BuildBase (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ BuildBase (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="BuildBase (Dependency-Check Core 1.0.4 API)"; + parent.document.title="BuildBase (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.Notifiers.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.Notifiers.html index 2d6693bd6..1f5192443 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.Notifiers.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.Notifiers.html @@ -2,13 +2,13 @@ - + -CiManagement.Notifiers (Dependency-Check Core 1.0.4 API) +CiManagement.Notifiers (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ CiManagement.Notifiers (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="CiManagement.Notifiers (Dependency-Check Core 1.0.4 API)"; + parent.document.title="CiManagement.Notifiers (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.html index d9a925b79..54b68f216 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.html @@ -2,13 +2,13 @@ - + -CiManagement (Dependency-Check Core 1.0.4 API) +CiManagement (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ CiManagement (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="CiManagement (Dependency-Check Core 1.0.4 API)"; + parent.document.title="CiManagement (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Properties.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Properties.html index 3d55152a1..dc365a0f8 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Properties.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Properties.html @@ -2,13 +2,13 @@ - + -Contributor.Properties (Dependency-Check Core 1.0.4 API) +Contributor.Properties (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Contributor.Properties (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Contributor.Properties (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Contributor.Properties (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Roles.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Roles.html index 138fc7564..022389ab1 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Roles.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Roles.html @@ -2,13 +2,13 @@ - + -Contributor.Roles (Dependency-Check Core 1.0.4 API) +Contributor.Roles (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Contributor.Roles (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Contributor.Roles (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Contributor.Roles (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.html index de4199a59..19b9b71d2 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.html @@ -2,13 +2,13 @@ - + -Contributor (Dependency-Check Core 1.0.4 API) +Contributor (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Contributor (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Contributor (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Contributor (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.Exclusions.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.Exclusions.html index a2332d63d..e427ed301 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.Exclusions.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.Exclusions.html @@ -2,13 +2,13 @@ - + -Dependency.Exclusions (Dependency-Check Core 1.0.4 API) +Dependency.Exclusions (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Dependency.Exclusions (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Dependency.Exclusions (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Dependency.Exclusions (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.html index 421563d06..9875e3ac8 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.html @@ -2,13 +2,13 @@ - + -Dependency (Dependency-Check Core 1.0.4 API) +Dependency (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Dependency (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Dependency (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Dependency (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.Dependencies.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.Dependencies.html index 4de9e404d..c32af643d 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.Dependencies.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.Dependencies.html @@ -2,13 +2,13 @@ - + -DependencyManagement.Dependencies (Dependency-Check Core 1.0.4 API) +DependencyManagement.Dependencies (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ DependencyManagement.Dependencies (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="DependencyManagement.Dependencies (Dependency-Check Core 1.0.4 API)"; + parent.document.title="DependencyManagement.Dependencies (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.html index c58d136bc..610394526 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.html @@ -2,13 +2,13 @@ - + -DependencyManagement (Dependency-Check Core 1.0.4 API) +DependencyManagement (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ DependencyManagement (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="DependencyManagement (Dependency-Check Core 1.0.4 API)"; + parent.document.title="DependencyManagement (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DeploymentRepository.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DeploymentRepository.html index dfe09ad83..b44974d57 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DeploymentRepository.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DeploymentRepository.html @@ -2,13 +2,13 @@ - + -DeploymentRepository (Dependency-Check Core 1.0.4 API) +DeploymentRepository (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ DeploymentRepository (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="DeploymentRepository (Dependency-Check Core 1.0.4 API)"; + parent.document.title="DeploymentRepository (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Properties.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Properties.html index c180e196e..f95a5ee8a 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Properties.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Properties.html @@ -2,13 +2,13 @@ - + -Developer.Properties (Dependency-Check Core 1.0.4 API) +Developer.Properties (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Developer.Properties (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Developer.Properties (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Developer.Properties (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Roles.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Roles.html index 4d164df8c..ddfcbfe35 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Roles.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Roles.html @@ -2,13 +2,13 @@ - + -Developer.Roles (Dependency-Check Core 1.0.4 API) +Developer.Roles (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Developer.Roles (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Developer.Roles (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Developer.Roles (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.html index f114d6d8f..5973a200e 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.html @@ -2,13 +2,13 @@ - + -Developer (Dependency-Check Core 1.0.4 API) +Developer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Developer (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Developer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Developer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DistributionManagement.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DistributionManagement.html index 31c35e588..9bcc9938a 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DistributionManagement.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DistributionManagement.html @@ -2,13 +2,13 @@ - + -DistributionManagement (Dependency-Check Core 1.0.4 API) +DistributionManagement (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ DistributionManagement (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="DistributionManagement (Dependency-Check Core 1.0.4 API)"; + parent.document.title="DistributionManagement (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Exclusion.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Exclusion.html index 03c59601c..64a8a17e7 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Exclusion.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Exclusion.html @@ -2,13 +2,13 @@ - + -Exclusion (Dependency-Check Core 1.0.4 API) +Exclusion (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Exclusion (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Exclusion (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Exclusion (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Extension.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Extension.html index ebc43e277..bce3d4816 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Extension.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Extension.html @@ -2,13 +2,13 @@ - + -Extension (Dependency-Check Core 1.0.4 API) +Extension (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Extension (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Extension (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Extension (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/IssueManagement.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/IssueManagement.html index 669a4baca..c60a57b13 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/IssueManagement.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/IssueManagement.html @@ -2,13 +2,13 @@ - + -IssueManagement (Dependency-Check Core 1.0.4 API) +IssueManagement (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ IssueManagement (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="IssueManagement (Dependency-Check Core 1.0.4 API)"; + parent.document.title="IssueManagement (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/License.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/License.html index fe7114ee5..b9ddd2abf 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/License.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/License.html @@ -2,13 +2,13 @@ - + -License (Dependency-Check Core 1.0.4 API) +License (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ License (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="License (Dependency-Check Core 1.0.4 API)"; + parent.document.title="License (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.OtherArchives.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.OtherArchives.html index 306a6c1bc..fe0ce5c3a 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.OtherArchives.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.OtherArchives.html @@ -2,13 +2,13 @@ - + -MailingList.OtherArchives (Dependency-Check Core 1.0.4 API) +MailingList.OtherArchives (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ MailingList.OtherArchives (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="MailingList.OtherArchives (Dependency-Check Core 1.0.4 API)"; + parent.document.title="MailingList.OtherArchives (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.html index 27c797410..95a94b8ca 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.html @@ -2,13 +2,13 @@ - + -MailingList (Dependency-Check Core 1.0.4 API) +MailingList (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ MailingList (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="MailingList (Dependency-Check Core 1.0.4 API)"; + parent.document.title="MailingList (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Contributors.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Contributors.html index 8dce3a2dc..d5807663f 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Contributors.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Contributors.html @@ -2,13 +2,13 @@ - + -Model.Contributors (Dependency-Check Core 1.0.4 API) +Model.Contributors (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Model.Contributors (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Model.Contributors (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Model.Contributors (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Dependencies.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Dependencies.html index 9bcb374b9..5f1b38b84 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Dependencies.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Dependencies.html @@ -2,13 +2,13 @@ - + -Model.Dependencies (Dependency-Check Core 1.0.4 API) +Model.Dependencies (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Model.Dependencies (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Model.Dependencies (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Model.Dependencies (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Developers.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Developers.html index 02e5cd018..dc42b3c73 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Developers.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Developers.html @@ -2,13 +2,13 @@ - + -Model.Developers (Dependency-Check Core 1.0.4 API) +Model.Developers (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Model.Developers (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Model.Developers (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Model.Developers (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Licenses.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Licenses.html index 0ab2fb212..9627db899 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Licenses.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Licenses.html @@ -2,13 +2,13 @@ - + -Model.Licenses (Dependency-Check Core 1.0.4 API) +Model.Licenses (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Model.Licenses (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Model.Licenses (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Model.Licenses (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.MailingLists.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.MailingLists.html index a35f272b9..0fb03d8c1 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.MailingLists.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.MailingLists.html @@ -2,13 +2,13 @@ - + -Model.MailingLists (Dependency-Check Core 1.0.4 API) +Model.MailingLists (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Model.MailingLists (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Model.MailingLists (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Model.MailingLists (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Modules.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Modules.html index d41b99cbe..5b54b4f25 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Modules.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Modules.html @@ -2,13 +2,13 @@ - + -Model.Modules (Dependency-Check Core 1.0.4 API) +Model.Modules (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Model.Modules (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Model.Modules (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Model.Modules (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.PluginRepositories.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.PluginRepositories.html index dd7ebfba0..382137698 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.PluginRepositories.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.PluginRepositories.html @@ -2,13 +2,13 @@ - + -Model.PluginRepositories (Dependency-Check Core 1.0.4 API) +Model.PluginRepositories (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Model.PluginRepositories (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Model.PluginRepositories (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Model.PluginRepositories (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Profiles.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Profiles.html index 523d544d9..fd6616b95 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Profiles.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Profiles.html @@ -2,13 +2,13 @@ - + -Model.Profiles (Dependency-Check Core 1.0.4 API) +Model.Profiles (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Model.Profiles (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Model.Profiles (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Model.Profiles (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Properties.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Properties.html index ca8b51310..c0ac7b171 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Properties.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Properties.html @@ -2,13 +2,13 @@ - + -Model.Properties (Dependency-Check Core 1.0.4 API) +Model.Properties (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Model.Properties (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Model.Properties (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Model.Properties (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Reports.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Reports.html index dd13370fb..295dc0267 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Reports.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Reports.html @@ -2,13 +2,13 @@ - + -Model.Reports (Dependency-Check Core 1.0.4 API) +Model.Reports (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Model.Reports (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Model.Reports (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Model.Reports (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Repositories.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Repositories.html index 5ed58237d..e327e8618 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Repositories.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Repositories.html @@ -2,13 +2,13 @@ - + -Model.Repositories (Dependency-Check Core 1.0.4 API) +Model.Repositories (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Model.Repositories (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Model.Repositories (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Model.Repositories (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.html index c685b0e1a..a9cda39cf 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.html @@ -2,13 +2,13 @@ - + -Model (Dependency-Check Core 1.0.4 API) +Model (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Model (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Model (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Model (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.Configuration.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.Configuration.html index 51f79f047..7430e4775 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.Configuration.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.Configuration.html @@ -2,13 +2,13 @@ - + -Notifier.Configuration (Dependency-Check Core 1.0.4 API) +Notifier.Configuration (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Notifier.Configuration (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Notifier.Configuration (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Notifier.Configuration (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.html index 55dd39adf..6878ff07a 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.html @@ -2,13 +2,13 @@ - + -Notifier (Dependency-Check Core 1.0.4 API) +Notifier (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Notifier (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Notifier (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Notifier (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ObjectFactory.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ObjectFactory.html index 7479f8ae7..f707fc1e4 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ObjectFactory.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ObjectFactory.html @@ -2,13 +2,13 @@ - + -ObjectFactory (Dependency-Check Core 1.0.4 API) +ObjectFactory (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ ObjectFactory (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="ObjectFactory (Dependency-Check Core 1.0.4 API)"; + parent.document.title="ObjectFactory (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Organization.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Organization.html index 4e78c2c03..7306af815 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Organization.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Organization.html @@ -2,13 +2,13 @@ - + -Organization (Dependency-Check Core 1.0.4 API) +Organization (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Organization (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Organization (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Organization (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Parent.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Parent.html index 8cc19ac96..2e91b536a 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Parent.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Parent.html @@ -2,13 +2,13 @@ - + -Parent (Dependency-Check Core 1.0.4 API) +Parent (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Parent (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Parent (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Parent (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Configuration.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Configuration.html index fcc6baaf2..a4b6287ea 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Configuration.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Configuration.html @@ -2,13 +2,13 @@ - + -Plugin.Configuration (Dependency-Check Core 1.0.4 API) +Plugin.Configuration (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Plugin.Configuration (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Plugin.Configuration (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Plugin.Configuration (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Dependencies.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Dependencies.html index 1cc7b90d8..f169a046e 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Dependencies.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Dependencies.html @@ -2,13 +2,13 @@ - + -Plugin.Dependencies (Dependency-Check Core 1.0.4 API) +Plugin.Dependencies (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Plugin.Dependencies (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Plugin.Dependencies (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Plugin.Dependencies (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Executions.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Executions.html index 361bba6fb..c9b2a9685 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Executions.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Executions.html @@ -2,13 +2,13 @@ - + -Plugin.Executions (Dependency-Check Core 1.0.4 API) +Plugin.Executions (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Plugin.Executions (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Plugin.Executions (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Plugin.Executions (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Goals.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Goals.html index 563f4e7c7..040dc5a7b 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Goals.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Goals.html @@ -2,13 +2,13 @@ - + -Plugin.Goals (Dependency-Check Core 1.0.4 API) +Plugin.Goals (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Plugin.Goals (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Plugin.Goals (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Plugin.Goals (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.html index 7e205317a..333236313 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.html @@ -2,13 +2,13 @@ - + -Plugin (Dependency-Check Core 1.0.4 API) +Plugin (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Plugin (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Plugin (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Plugin (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Configuration.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Configuration.html index c1e32ff41..93b495dac 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Configuration.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Configuration.html @@ -2,13 +2,13 @@ - + -PluginExecution.Configuration (Dependency-Check Core 1.0.4 API) +PluginExecution.Configuration (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ PluginExecution.Configuration (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="PluginExecution.Configuration (Dependency-Check Core 1.0.4 API)"; + parent.document.title="PluginExecution.Configuration (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Goals.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Goals.html index 3670c3a38..5855aa895 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Goals.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Goals.html @@ -2,13 +2,13 @@ - + -PluginExecution.Goals (Dependency-Check Core 1.0.4 API) +PluginExecution.Goals (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ PluginExecution.Goals (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="PluginExecution.Goals (Dependency-Check Core 1.0.4 API)"; + parent.document.title="PluginExecution.Goals (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.html index c467f44fa..f643de6c8 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.html @@ -2,13 +2,13 @@ - + -PluginExecution (Dependency-Check Core 1.0.4 API) +PluginExecution (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ PluginExecution (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="PluginExecution (Dependency-Check Core 1.0.4 API)"; + parent.document.title="PluginExecution (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.Plugins.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.Plugins.html index bff171418..c45ebb2b1 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.Plugins.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.Plugins.html @@ -2,13 +2,13 @@ - + -PluginManagement.Plugins (Dependency-Check Core 1.0.4 API) +PluginManagement.Plugins (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ PluginManagement.Plugins (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="PluginManagement.Plugins (Dependency-Check Core 1.0.4 API)"; + parent.document.title="PluginManagement.Plugins (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.html index 2482a0a3b..65331a0e9 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.html @@ -2,13 +2,13 @@ - + -PluginManagement (Dependency-Check Core 1.0.4 API) +PluginManagement (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ PluginManagement (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="PluginManagement (Dependency-Check Core 1.0.4 API)"; + parent.document.title="PluginManagement (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Prerequisites.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Prerequisites.html index f81665386..5cf56d7be 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Prerequisites.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Prerequisites.html @@ -2,13 +2,13 @@ - + -Prerequisites (Dependency-Check Core 1.0.4 API) +Prerequisites (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Prerequisites (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Prerequisites (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Prerequisites (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Dependencies.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Dependencies.html index 01bcc237a..454175ca0 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Dependencies.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Dependencies.html @@ -2,13 +2,13 @@ - + -Profile.Dependencies (Dependency-Check Core 1.0.4 API) +Profile.Dependencies (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Profile.Dependencies (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Profile.Dependencies (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Profile.Dependencies (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Modules.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Modules.html index 7e42ed8b2..c4230b72a 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Modules.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Modules.html @@ -2,13 +2,13 @@ - + -Profile.Modules (Dependency-Check Core 1.0.4 API) +Profile.Modules (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Profile.Modules (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Profile.Modules (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Profile.Modules (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.PluginRepositories.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.PluginRepositories.html index 1e5e37020..0f94a0208 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.PluginRepositories.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.PluginRepositories.html @@ -2,13 +2,13 @@ - + -Profile.PluginRepositories (Dependency-Check Core 1.0.4 API) +Profile.PluginRepositories (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Profile.PluginRepositories (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Profile.PluginRepositories (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Profile.PluginRepositories (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Properties.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Properties.html index 67373b228..89485928c 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Properties.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Properties.html @@ -2,13 +2,13 @@ - + -Profile.Properties (Dependency-Check Core 1.0.4 API) +Profile.Properties (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Profile.Properties (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Profile.Properties (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Profile.Properties (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Reports.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Reports.html index ed98c4d4a..ed0318140 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Reports.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Reports.html @@ -2,13 +2,13 @@ - + -Profile.Reports (Dependency-Check Core 1.0.4 API) +Profile.Reports (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Profile.Reports (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Profile.Reports (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Profile.Reports (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Repositories.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Repositories.html index fbabb7a39..84a7f6554 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Repositories.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Repositories.html @@ -2,13 +2,13 @@ - + -Profile.Repositories (Dependency-Check Core 1.0.4 API) +Profile.Repositories (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Profile.Repositories (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Profile.Repositories (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Profile.Repositories (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.html index 0ca0c89dc..ee75aa5e4 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.html @@ -2,13 +2,13 @@ - + -Profile (Dependency-Check Core 1.0.4 API) +Profile (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Profile (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Profile (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Profile (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Relocation.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Relocation.html index 1ab6eab91..9f6e2c361 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Relocation.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Relocation.html @@ -2,13 +2,13 @@ - + -Relocation (Dependency-Check Core 1.0.4 API) +Relocation (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Relocation (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Relocation (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Relocation (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.Configuration.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.Configuration.html index b07829def..4e25f6a5c 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.Configuration.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.Configuration.html @@ -2,13 +2,13 @@ - + -ReportPlugin.Configuration (Dependency-Check Core 1.0.4 API) +ReportPlugin.Configuration (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ ReportPlugin.Configuration (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="ReportPlugin.Configuration (Dependency-Check Core 1.0.4 API)"; + parent.document.title="ReportPlugin.Configuration (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.ReportSets.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.ReportSets.html index c22fe1eb5..684622a7b 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.ReportSets.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.ReportSets.html @@ -2,13 +2,13 @@ - + -ReportPlugin.ReportSets (Dependency-Check Core 1.0.4 API) +ReportPlugin.ReportSets (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ ReportPlugin.ReportSets (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="ReportPlugin.ReportSets (Dependency-Check Core 1.0.4 API)"; + parent.document.title="ReportPlugin.ReportSets (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.html index 9e715bfc2..b47b240c1 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.html @@ -2,13 +2,13 @@ - + -ReportPlugin (Dependency-Check Core 1.0.4 API) +ReportPlugin (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ ReportPlugin (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="ReportPlugin (Dependency-Check Core 1.0.4 API)"; + parent.document.title="ReportPlugin (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Configuration.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Configuration.html index 2e4e3a8ad..f2f457c22 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Configuration.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Configuration.html @@ -2,13 +2,13 @@ - + -ReportSet.Configuration (Dependency-Check Core 1.0.4 API) +ReportSet.Configuration (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ ReportSet.Configuration (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="ReportSet.Configuration (Dependency-Check Core 1.0.4 API)"; + parent.document.title="ReportSet.Configuration (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Reports.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Reports.html index 46993a705..5a3700d17 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Reports.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Reports.html @@ -2,13 +2,13 @@ - + -ReportSet.Reports (Dependency-Check Core 1.0.4 API) +ReportSet.Reports (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ ReportSet.Reports (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="ReportSet.Reports (Dependency-Check Core 1.0.4 API)"; + parent.document.title="ReportSet.Reports (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.html index 630ed1d93..df3d289dd 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.html @@ -2,13 +2,13 @@ - + -ReportSet (Dependency-Check Core 1.0.4 API) +ReportSet (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ ReportSet (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="ReportSet (Dependency-Check Core 1.0.4 API)"; + parent.document.title="ReportSet (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.Plugins.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.Plugins.html index bb948f200..76164d4df 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.Plugins.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.Plugins.html @@ -2,13 +2,13 @@ - + -Reporting.Plugins (Dependency-Check Core 1.0.4 API) +Reporting.Plugins (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Reporting.Plugins (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Reporting.Plugins (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Reporting.Plugins (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.html index 4b1b64382..b4ba20bee 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.html @@ -2,13 +2,13 @@ - + -Reporting (Dependency-Check Core 1.0.4 API) +Reporting (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Reporting (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Reporting (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Reporting (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Repository.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Repository.html index dc48e5035..9bdf643e7 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Repository.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Repository.html @@ -2,13 +2,13 @@ - + -Repository (Dependency-Check Core 1.0.4 API) +Repository (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Repository (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Repository (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Repository (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/RepositoryPolicy.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/RepositoryPolicy.html index bfc4a5c6a..7c0960dd1 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/RepositoryPolicy.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/RepositoryPolicy.html @@ -2,13 +2,13 @@ - + -RepositoryPolicy (Dependency-Check Core 1.0.4 API) +RepositoryPolicy (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ RepositoryPolicy (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="RepositoryPolicy (Dependency-Check Core 1.0.4 API)"; + parent.document.title="RepositoryPolicy (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Excludes.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Excludes.html index f57c096a8..92059f048 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Excludes.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Excludes.html @@ -2,13 +2,13 @@ - + -Resource.Excludes (Dependency-Check Core 1.0.4 API) +Resource.Excludes (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Resource.Excludes (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Resource.Excludes (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Resource.Excludes (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Includes.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Includes.html index 1af56e7d5..bf001480e 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Includes.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Includes.html @@ -2,13 +2,13 @@ - + -Resource.Includes (Dependency-Check Core 1.0.4 API) +Resource.Includes (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Resource.Includes (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Resource.Includes (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Resource.Includes (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.html index 52198fd9b..da817e77a 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.html @@ -2,13 +2,13 @@ - + -Resource (Dependency-Check Core 1.0.4 API) +Resource (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Resource (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Resource (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Resource (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Scm.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Scm.html index 307cd017c..8287dd7e8 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Scm.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Scm.html @@ -2,13 +2,13 @@ - + -Scm (Dependency-Check Core 1.0.4 API) +Scm (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Scm (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Scm (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Scm (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Site.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Site.html index f50e6d527..12a8a84ed 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Site.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Site.html @@ -2,13 +2,13 @@ - + -Site (Dependency-Check Core 1.0.4 API) +Site (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Site (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Site (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Site (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Activation.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Activation.html index 8ff514918..378939085 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Activation.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Activation.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Activation (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Activation (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Activation (Dependenc function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Activation (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Activation (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationFile.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationFile.html index b832be94e..9cf50f1d5 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationFile.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationFile.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile (Depen function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationOS.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationOS.html index ea76a5c50..78308753c 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationOS.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationOS.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS (Depende function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationProperty.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationProperty.html index 487ef1c91..133f69102 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationProperty.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationProperty.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty (D function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Extensions.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Extensions.html index 290501a9b..dc8c36f0d 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Extensions.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Extensions.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Extensions (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Extensions (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Extensions (Dep function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Extensions (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Extensions (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Filters.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Filters.html index 6c7117740..a628b7ad6 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Filters.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Filters.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Filters (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Filters (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Filters (Depend function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Filters (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Filters (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Plugins.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Plugins.html index c343f6f34..71107b1dd 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Plugins.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Plugins.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Plugins (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Plugins (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Plugins (Depend function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Plugins (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Plugins (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Resources.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Resources.html index b83fdf7ec..b51efeffc 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Resources.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Resources.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Resources (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Resources (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Resources (Depe function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Resources (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.Resources (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.TestResources.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.TestResources.html index 48ce2ff9d..f0b372572 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.TestResources.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.TestResources.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.TestResources (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.TestResources (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.TestResources ( function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.TestResources (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build.TestResources (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.html index 3d28c67f8..f3004225a 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build (Dependency-Che function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Build (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Filters.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Filters.html index b38533928..ab31514df 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Filters.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Filters.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Filters (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Filters (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Filters (De function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Filters (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Filters (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Plugins.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Plugins.html index c3c45e179..31ca886d7 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Plugins.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Plugins.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Plugins (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Plugins (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Plugins (De function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Plugins (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Plugins (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Resources.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Resources.html index 3e42c7522..c2942caae 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Resources.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Resources.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Resources (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Resources (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Resources ( function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Resources (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.Resources (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.TestResources.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.TestResources.html index 297245f11..6d2640a85 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.TestResources.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.TestResources.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.TestResources (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.TestResources (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.TestResourc function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.TestResources (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.TestResources (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.html index f8f686104..d22e48877 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase (Dependency function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.BuildBase (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/CiManagement.Notifiers.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/CiManagement.Notifiers.html index 466ee5ad9..f6eb09955 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/CiManagement.Notifiers.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/CiManagement.Notifiers.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement.Notifiers (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement.Notifiers (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement.Notifier function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement.Notifiers (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement.Notifiers (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/CiManagement.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/CiManagement.html index 944c3a0dd..1d3b68f1b 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/CiManagement.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/CiManagement.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement (Depende function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.CiManagement (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.Properties.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.Properties.html index 0bbc84fc7..0b1c2db39 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.Properties.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.Properties.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Contributor.Properties (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Contributor.Properties (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Contributor.Propertie function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Contributor.Properties (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Contributor.Properties (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.Roles.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.Roles.html index f72184ead..6721812e3 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.Roles.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.Roles.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Contributor.Roles (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Contributor.Roles (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Contributor.Roles (De function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Contributor.Roles (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Contributor.Roles (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.html index 364278440..c3590efea 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Contributor (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Contributor (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Contributor (Dependen function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Contributor (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Contributor (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Dependency.Exclusions.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Dependency.Exclusions.html index bf49f6b79..2dfc87d28 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Dependency.Exclusions.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Dependency.Exclusions.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Dependency.Exclusions (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Dependency.Exclusions (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Dependency.Exclusions function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Dependency.Exclusions (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Dependency.Exclusions (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Dependency.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Dependency.html index 83f5f2c7c..9ff36a4f3 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Dependency.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Dependency.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Dependency (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Dependency (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Dependency (Dependenc function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Dependency (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Dependency (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DependencyManagement.Dependencies.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DependencyManagement.Dependencies.html index 4d9935ef1..13d0ace56 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DependencyManagement.Dependencies.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DependencyManagement.Dependencies.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement.Dependencies (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement.Dependencies (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement. function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement.Dependencies (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement.Dependencies (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DependencyManagement.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DependencyManagement.html index 24ec8002a..0b9228e3e 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DependencyManagement.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DependencyManagement.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DeploymentRepository.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DeploymentRepository.html index f93c251c2..da7538caa 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DeploymentRepository.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DeploymentRepository.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.Properties.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.Properties.html index ba2a49ba2..621ad85f9 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.Properties.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.Properties.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Developer.Properties (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Developer.Properties (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Developer.Properties function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Developer.Properties (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Developer.Properties (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.Roles.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.Roles.html index 9735d9eae..fbbe2a558 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.Roles.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.Roles.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Developer.Roles (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Developer.Roles (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Developer.Roles (Depe function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Developer.Roles (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Developer.Roles (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.html index a5f98bacf..d736e737a 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Developer (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Developer (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Developer (Dependency function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Developer (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Developer (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DistributionManagement.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DistributionManagement.html index b5abcbb93..39188fcb0 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DistributionManagement.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DistributionManagement.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagemen function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Exclusion.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Exclusion.html index 9b1566822..3f3089602 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Exclusion.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Exclusion.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Exclusion (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Exclusion (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Exclusion (Dependency function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Exclusion (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Exclusion (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Extension.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Extension.html index a4c5c64b0..9f2677baa 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Extension.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Extension.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Extension (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Extension (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Extension (Dependency function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Extension (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Extension (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/IssueManagement.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/IssueManagement.html index 578e1e588..9ade2f839 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/IssueManagement.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/IssueManagement.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement (Depe function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/License.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/License.html index 3add3203c..55711e8bd 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/License.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/License.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.License (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.License (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.License (Dependency-C function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.License (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.License (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/MailingList.OtherArchives.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/MailingList.OtherArchives.html index 594181692..1018c735c 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/MailingList.OtherArchives.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/MailingList.OtherArchives.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.MailingList.OtherArchives (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.MailingList.OtherArchives (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.MailingList.OtherArch function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.MailingList.OtherArchives (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.MailingList.OtherArchives (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/MailingList.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/MailingList.html index 37c1c4932..3fb30da8c 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/MailingList.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/MailingList.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.MailingList (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.MailingList (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.MailingList (Dependen function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.MailingList (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.MailingList (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Contributors.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Contributors.html index 20732b6a8..9c3c7640e 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Contributors.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Contributors.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Contributors (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Contributors (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Contributors (D function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Contributors (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Contributors (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Dependencies.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Dependencies.html index 655f56cb4..d69d99f93 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Dependencies.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Dependencies.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Dependencies (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Dependencies (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Dependencies (D function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Dependencies (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Dependencies (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Developers.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Developers.html index 36baf1630..3d94e8fab 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Developers.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Developers.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Developers (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Developers (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Developers (Dep function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Developers (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Developers (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Licenses.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Licenses.html index 4872842e3..c43db7e31 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Licenses.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Licenses.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Licenses (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Licenses (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Licenses (Depen function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Licenses (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Licenses (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.MailingLists.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.MailingLists.html index b687a2360..c0d3aca00 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.MailingLists.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.MailingLists.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.MailingLists (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.MailingLists (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.MailingLists (D function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.MailingLists (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.MailingLists (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Modules.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Modules.html index e7a2b1863..bd7fc714e 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Modules.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Modules.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Modules (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Modules (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Modules (Depend function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Modules (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Modules (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.PluginRepositories.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.PluginRepositories.html index dd736d7f6..54c04877c 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.PluginRepositories.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.PluginRepositories.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.PluginRepositories (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.PluginRepositories (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.PluginRepositor function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.PluginRepositories (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.PluginRepositories (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Profiles.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Profiles.html index 5bb61cb21..ea2c1fede 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Profiles.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Profiles.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Profiles (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Profiles (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Profiles (Depen function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Profiles (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Profiles (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Properties.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Properties.html index a39627e0a..3b85ef803 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Properties.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Properties.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Properties (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Properties (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Properties (Dep function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Properties (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Properties (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Reports.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Reports.html index 4901925b3..3693f5273 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Reports.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Reports.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Reports (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Reports (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Reports (Depend function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Reports (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Reports (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Repositories.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Repositories.html index 0c0273287..686a48790 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Repositories.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Repositories.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Repositories (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Repositories (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Repositories (D function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Repositories (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model.Repositories (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.html index 660b829bb..db981fa24 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model (Dependency-Che function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Model (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Notifier.Configuration.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Notifier.Configuration.html index a27d99270..ced57e8ca 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Notifier.Configuration.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Notifier.Configuration.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Notifier.Configuration (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Notifier.Configuration (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Notifier.Configuratio function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Notifier.Configuration (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Notifier.Configuration (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Notifier.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Notifier.html index b383a5e83..b31ad39a6 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Notifier.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Notifier.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Notifier (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Notifier (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Notifier (Dependency- function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Notifier (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Notifier (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ObjectFactory.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ObjectFactory.html index 843a75d69..0f114be5f 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ObjectFactory.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ObjectFactory.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory (Depend function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Organization.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Organization.html index f89fab2d6..f97653154 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Organization.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Organization.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Organization (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Organization (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Organization (Depende function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Organization (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Organization (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Parent.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Parent.html index 7b1e9e480..e638a7360 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Parent.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Parent.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Parent (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Parent (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Parent (Dependency-Ch function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Parent (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Parent (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Configuration.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Configuration.html index 9fdc8292f..80b9794cd 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Configuration.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Configuration.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Configuration (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Configuration (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Configuration function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Configuration (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Configuration (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Dependencies.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Dependencies.html index 2e998acc4..07fd125b1 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Dependencies.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Dependencies.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Dependencies (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Dependencies (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Dependencies ( function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Dependencies (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Dependencies (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Executions.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Executions.html index a69e29dea..b089beb60 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Executions.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Executions.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Executions (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Executions (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Executions (De function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Executions (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Executions (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Goals.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Goals.html index abdd728e7..4cfdeee50 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Goals.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Goals.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Goals (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Goals (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Goals (Depende function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Goals (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin.Goals (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.html index 8245eabb9..8ee2ed395 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin (Dependency-Ch function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Plugin (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.Configuration.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.Configuration.html index eae3b0b61..2aaf9d411 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.Configuration.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.Configuration.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.Configuration (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.Configuration (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.Confi function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.Configuration (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.Configuration (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.Goals.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.Goals.html index 031ea16b0..ed6d9ead8 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.Goals.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.Goals.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.Goals (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.Goals (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.Goals function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.Goals (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.Goals (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.html index 3efd7fb65..7032ae7ea 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution (Depe function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginManagement.Plugins.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginManagement.Plugins.html index db75a39af..5886e8c91 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginManagement.Plugins.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginManagement.Plugins.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement.Plugins (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement.Plugins (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement.Plug function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement.Plugins (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement.Plugins (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginManagement.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginManagement.html index 5727fb27b..b02d67b5d 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginManagement.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginManagement.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement (Dep function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Prerequisites.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Prerequisites.html index 9e4dde400..d8ef8fc05 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Prerequisites.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Prerequisites.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites (Depend function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Dependencies.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Dependencies.html index f3d411e73..f01605afa 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Dependencies.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Dependencies.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Dependencies (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Dependencies (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Dependencies function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Dependencies (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Dependencies (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Modules.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Modules.html index 2fd404fd5..d703a1be1 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Modules.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Modules.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Modules (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Modules (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Modules (Depe function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Modules (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Modules (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.PluginRepositories.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.PluginRepositories.html index 3782b9be0..af0e29743 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.PluginRepositories.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.PluginRepositories.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.PluginRepositories (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.PluginRepositories (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.PluginReposit function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.PluginRepositories (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.PluginRepositories (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Properties.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Properties.html index 0e2fe3598..5a1bcb2c3 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Properties.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Properties.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Properties (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Properties (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Properties (D function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Properties (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Properties (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Reports.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Reports.html index 9d4422777..7298b7a65 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Reports.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Reports.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Reports (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Reports (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Reports (Depe function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Reports (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Reports (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Repositories.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Repositories.html index 69976f72c..f018f9174 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Repositories.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Repositories.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Repositories (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Repositories (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Repositories function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Repositories (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile.Repositories (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.html index 7d54c616f..b3cec040a 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile (Dependency-C function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Profile (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Relocation.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Relocation.html index aeec97629..d3a9283b8 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Relocation.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Relocation.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Relocation (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Relocation (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Relocation (Dependenc function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Relocation (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Relocation (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.Configuration.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.Configuration.html index 675dbcb5c..fe9f2c9e6 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.Configuration.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.Configuration.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.Configuration (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.Configuration (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.Configur function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.Configuration (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.Configuration (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.ReportSets.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.ReportSets.html index f52adb55a..98849c2f2 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.ReportSets.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.ReportSets.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.ReportSets (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.ReportSets (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.ReportSe function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.ReportSets (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.ReportSets (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.html index 523a3f24d..e81b6cd1a 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin (Depende function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.Configuration.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.Configuration.html index 42c8b7425..74ddbd103 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.Configuration.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.Configuration.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.Configuration (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.Configuration (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.Configurati function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.Configuration (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.Configuration (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.Reports.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.Reports.html index ecae7afdb..96ccb57c6 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.Reports.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.Reports.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.Reports (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.Reports (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.Reports (De function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.Reports (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.Reports (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.html index ff06a7c95..acbc1a7d1 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet (Dependency function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.ReportSet (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Reporting.Plugins.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Reporting.Plugins.html index d0660d424..e1a59dc7b 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Reporting.Plugins.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Reporting.Plugins.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Reporting.Plugins (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Reporting.Plugins (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Reporting.Plugins (De function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Reporting.Plugins (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Reporting.Plugins (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Reporting.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Reporting.html index c6c7edc26..80002bcb7 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Reporting.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Reporting.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Reporting (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Reporting (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Reporting (Dependency function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Reporting (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Reporting (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Repository.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Repository.html index a7085dcda..580a11b4c 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Repository.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Repository.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Repository (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Repository (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Repository (Dependenc function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Repository (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Repository (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/RepositoryPolicy.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/RepositoryPolicy.html index b5fbde369..42b67cb50 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/RepositoryPolicy.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/RepositoryPolicy.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy (Dep function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.Excludes.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.Excludes.html index 1ba6c923f..6b334972d 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.Excludes.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.Excludes.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Resource.Excludes (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Resource.Excludes (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Resource.Excludes (De function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Resource.Excludes (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Resource.Excludes (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.Includes.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.Includes.html index be6260f4b..82aa45945 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.Includes.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.Includes.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Resource.Includes (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Resource.Includes (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Resource.Includes (De function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Resource.Includes (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Resource.Includes (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.html index 016ab3696..130fc20cd 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Resource (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Resource (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Resource (Dependency- function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Resource (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Resource (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Scm.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Scm.html index 798a4592a..50efa3acb 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Scm.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Scm.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Scm (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Scm (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Scm (Dependency-Check function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Scm (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Scm (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Site.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Site.html index 4079e92fd..90585b306 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Site.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Site.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Site (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Site (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Site (Dependency-Chec function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Site (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.jaxb.pom.generated.Site (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-frame.html index d70d48437..41eaa5034 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-frame.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-frame.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.jaxb.pom.generated (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.jaxb.pom.generated (Dependency-Check Core 1.0.5 API) - + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-summary.html index 5a5d0f563..8453541af 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-summary.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-summary.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.jaxb.pom.generated (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.jaxb.pom.generated (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.jaxb.pom.generated (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.jaxb.pom.generated (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.jaxb.pom.generated (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-tree.html index 2fd7131b4..d29b14c8e 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-tree.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-tree.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.jaxb.pom.generated Class Hierarchy (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.jaxb.pom.generated Class Hierarchy (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.jaxb.pom.generated Class Hierarchy (Dependency-Check C function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.jaxb.pom.generated Class Hierarchy (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.jaxb.pom.generated Class Hierarchy (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-use.html index 24304ffe1..834d8b749 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-use.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-use.html @@ -2,13 +2,13 @@ - + -Uses of Package org.owasp.dependencycheck.jaxb.pom.generated (Dependency-Check Core 1.0.4 API) +Uses of Package org.owasp.dependencycheck.jaxb.pom.generated (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Package org.owasp.dependencycheck.jaxb.pom.generated (Dependency-Check C function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Package org.owasp.dependencycheck.jaxb.pom.generated (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Package org.owasp.dependencycheck.jaxb.pom.generated (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-frame.html index 732feb9e0..c405557b4 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-frame.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-frame.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.jaxb.pom (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.jaxb.pom (Dependency-Check Core 1.0.5 API) - + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-summary.html index fefc2d11a..1f758cc05 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-summary.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-summary.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.jaxb.pom (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.jaxb.pom (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.jaxb.pom (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.jaxb.pom (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.jaxb.pom (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-tree.html index 07a594688..495cbc37b 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-tree.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-tree.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.jaxb.pom Class Hierarchy (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.jaxb.pom Class Hierarchy (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.jaxb.pom Class Hierarchy (Dependency-Check Core 1.0.4 function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.jaxb.pom Class Hierarchy (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.jaxb.pom Class Hierarchy (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-use.html index dce510cf0..b9ee43ccd 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-use.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-use.html @@ -2,13 +2,13 @@ - + -Uses of Package org.owasp.dependencycheck.jaxb.pom (Dependency-Check Core 1.0.4 API) +Uses of Package org.owasp.dependencycheck.jaxb.pom (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Package org.owasp.dependencycheck.jaxb.pom (Dependency-Check Core 1.0.4 function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Package org.owasp.dependencycheck.jaxb.pom (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Package org.owasp.dependencycheck.jaxb.pom (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/package-frame.html index c43b19377..d553f850e 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/package-frame.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/package-frame.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck (Dependency-Check Core 1.0.5 API) - + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/package-summary.html index d95f13387..cd48a8e97 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/package-summary.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/package-summary.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/package-tree.html index 2024de615..a93934ad2 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/package-tree.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/package-tree.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck Class Hierarchy (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck Class Hierarchy (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck Class Hierarchy (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck Class Hierarchy (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck Class Hierarchy (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/package-use.html index 34fd9d281..dbce547cb 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/package-use.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/package-use.html @@ -2,13 +2,13 @@ - + -Uses of Package org.owasp.dependencycheck (Dependency-Check Core 1.0.4 API) +Uses of Package org.owasp.dependencycheck (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Package org.owasp.dependencycheck (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Package org.owasp.dependencycheck (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Package org.owasp.dependencycheck (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.Format.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.Format.html index 812e3dee7..060322339 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.Format.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.Format.html @@ -2,13 +2,13 @@ - + -ReportGenerator.Format (Dependency-Check Core 1.0.4 API) +ReportGenerator.Format (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ ReportGenerator.Format (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="ReportGenerator.Format (Dependency-Check Core 1.0.4 API)"; + parent.document.title="ReportGenerator.Format (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.html index a45d14db1..919280640 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.html @@ -2,13 +2,13 @@ - + -ReportGenerator (Dependency-Check Core 1.0.4 API) +ReportGenerator (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ ReportGenerator (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="ReportGenerator (Dependency-Check Core 1.0.4 API)"; + parent.document.title="ReportGenerator (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/VelocityLoggerRedirect.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/VelocityLoggerRedirect.html index f17069139..48021b2b8 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/VelocityLoggerRedirect.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/VelocityLoggerRedirect.html @@ -2,13 +2,13 @@ - + -VelocityLoggerRedirect (Dependency-Check Core 1.0.4 API) +VelocityLoggerRedirect (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ VelocityLoggerRedirect (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="VelocityLoggerRedirect (Dependency-Check Core 1.0.4 API)"; + parent.document.title="VelocityLoggerRedirect (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/ReportGenerator.Format.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/ReportGenerator.Format.html index 37c6862f4..8715adee8 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/ReportGenerator.Format.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/ReportGenerator.Format.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.reporting.ReportGenerator.Format (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.reporting.ReportGenerator.Format (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.reporting.ReportGenerator.Format (Depend function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.reporting.ReportGenerator.Format (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.reporting.ReportGenerator.Format (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/ReportGenerator.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/ReportGenerator.html index a9b5777d1..5e4045b0d 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/ReportGenerator.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/ReportGenerator.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.reporting.ReportGenerator (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.reporting.ReportGenerator (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.reporting.ReportGenerator (Dependency-Ch function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.reporting.ReportGenerator (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.reporting.ReportGenerator (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/VelocityLoggerRedirect.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/VelocityLoggerRedirect.html index 899da38aa..4c9294c1f 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/VelocityLoggerRedirect.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/VelocityLoggerRedirect.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.reporting.VelocityLoggerRedirect (Dependency-Check Core 1.0.4 API) +Uses of Class org.owasp.dependencycheck.reporting.VelocityLoggerRedirect (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.reporting.VelocityLoggerRedirect (Depend function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.reporting.VelocityLoggerRedirect (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.reporting.VelocityLoggerRedirect (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-frame.html index b1331b38f..51036ed57 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-frame.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-frame.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.reporting (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.reporting (Dependency-Check Core 1.0.5 API) - + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-summary.html index 134ea9175..bb110c2ad 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-summary.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-summary.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.reporting (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.reporting (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.reporting (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.reporting (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.reporting (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-tree.html index 892494937..5600c0a02 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-tree.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-tree.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.reporting Class Hierarchy (Dependency-Check Core 1.0.4 API) +org.owasp.dependencycheck.reporting Class Hierarchy (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.reporting Class Hierarchy (Dependency-Check Core 1.0.4 function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.reporting Class Hierarchy (Dependency-Check Core 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.reporting Class Hierarchy (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-use.html index 9d7995439..0daadbda5 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-use.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-use.html @@ -2,13 +2,13 @@ - + -Uses of Package org.owasp.dependencycheck.reporting (Dependency-Check Core 1.0.4 API) +Uses of Package org.owasp.dependencycheck.reporting (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Package org.owasp.dependencycheck.reporting (Dependency-Check Core 1.0.4 function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Package org.owasp.dependencycheck.reporting (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Uses of Package org.owasp.dependencycheck.reporting (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Checksum.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Checksum.html index a4c6ba34d..114612325 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Checksum.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Checksum.html @@ -2,13 +2,13 @@ - + -Checksum (Dependency-Check Core 1.0.4 API) +Checksum (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Checksum (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Checksum (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Checksum (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersion.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersion.html index 1c5182261..092af310d 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersion.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersion.html @@ -2,13 +2,13 @@ - + -DependencyVersion (Dependency-Check Core 1.0.4 API) +DependencyVersion (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ DependencyVersion (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="DependencyVersion (Dependency-Check Core 1.0.4 API)"; + parent.document.title="DependencyVersion (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersionUtil.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersionUtil.html index 0df7e1149..505793425 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersionUtil.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersionUtil.html @@ -2,13 +2,13 @@ - + -DependencyVersionUtil (Dependency-Check Core 1.0.4 API) +DependencyVersionUtil (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ DependencyVersionUtil (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="DependencyVersionUtil (Dependency-Check Core 1.0.4 API)"; + parent.document.title="DependencyVersionUtil (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DownloadFailedException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DownloadFailedException.html index d46ff1d7c..2165ff400 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DownloadFailedException.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DownloadFailedException.html @@ -2,13 +2,13 @@ - + -DownloadFailedException (Dependency-Check Core 1.0.4 API) +DownloadFailedException (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ DownloadFailedException (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="DownloadFailedException (Dependency-Check Core 1.0.4 API)"; + parent.document.title="DownloadFailedException (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Downloader.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Downloader.html index 4e33f0004..a3d2c3be2 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Downloader.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Downloader.html @@ -2,13 +2,13 @@ - + -Downloader (Dependency-Check Core 1.0.4 API) +Downloader (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Downloader (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Downloader (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Downloader (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/ExtractionException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/ExtractionException.html index e9aed88e1..e18151f69 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/ExtractionException.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/ExtractionException.html @@ -2,13 +2,13 @@ - + -ExtractionException (Dependency-Check Core 1.0.4 API) +ExtractionException (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ ExtractionException (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="ExtractionException (Dependency-Check Core 1.0.4 API)"; + parent.document.title="ExtractionException (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/FileUtils.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/FileUtils.html index 4281fd390..55254dbc5 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/FileUtils.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/FileUtils.html @@ -2,13 +2,13 @@ - + -FileUtils (Dependency-Check Core 1.0.4 API) +FileUtils (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ FileUtils (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="FileUtils (Dependency-Check Core 1.0.4 API)"; + parent.document.title="FileUtils (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Filter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Filter.html index 597d2152d..bc63a7b11 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Filter.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Filter.html @@ -2,13 +2,13 @@ - + -Filter (Dependency-Check Core 1.0.4 API) +Filter (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Filter (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Filter (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Filter (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/InvalidSettingException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/InvalidSettingException.html index 452c4db41..7df39a584 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/InvalidSettingException.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/InvalidSettingException.html @@ -2,13 +2,13 @@ - + -InvalidSettingException (Dependency-Check Core 1.0.4 API) +InvalidSettingException (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ InvalidSettingException (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="InvalidSettingException (Dependency-Check Core 1.0.4 API)"; + parent.document.title="InvalidSettingException (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/LogFilter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/LogFilter.html index f3eeb50e4..a741c4850 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/LogFilter.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/LogFilter.html @@ -2,13 +2,13 @@ - + -LogFilter (Dependency-Check Core 1.0.4 API) +LogFilter (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ LogFilter (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="LogFilter (Dependency-Check Core 1.0.4 API)"; + parent.document.title="LogFilter (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/LogUtils.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/LogUtils.html index 401e26ddf..425920d7e 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/LogUtils.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/LogUtils.html @@ -2,13 +2,13 @@ - + -LogUtils (Dependency-Check Core 1.0.4 API) +LogUtils (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ LogUtils (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="LogUtils (Dependency-Check Core 1.0.4 API)"; + parent.document.title="LogUtils (Dependency-Check Core 1.0.5 API)"; } } @@ -124,6 +124,14 @@ A utility class to aide in the setup of the logging mechanism. +static boolean +isVerboseLoggingEnabled() + +
    +          Get the value of verboseLoggingEnabled. + + + static void prepareLogger(InputStream in, String verboseLogFile) @@ -166,6 +174,20 @@ public static void prepareLogger(

    +isVerboseLoggingEnabled

    +
    +public static boolean isVerboseLoggingEnabled()
    +
    +
    Get the value of verboseLoggingEnabled. +

    +

    + +
    Returns:
    the value of verboseLoggingEnabled
    +
    +

    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/NonClosingStream.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/NonClosingStream.html index c04fbde0f..96cef25be 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/NonClosingStream.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/NonClosingStream.html @@ -2,13 +2,13 @@ - + -NonClosingStream (Dependency-Check Core 1.0.4 API) +NonClosingStream (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ NonClosingStream (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="NonClosingStream (Dependency-Check Core 1.0.4 API)"; + parent.document.title="NonClosingStream (Dependency-Check Core 1.0.5 API)"; } } diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.KEYS.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.KEYS.html index 4f003517f..d58c84a5c 100644 --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.KEYS.html +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.KEYS.html @@ -2,13 +2,13 @@ - + -Settings.KEYS (Dependency-Check Core 1.0.4 API) +Settings.KEYS (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Settings.KEYS (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Settings.KEYS (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Settings.KEYS (Dependency-Check Core 1.0.5 API)"; } } @@ -250,6 +250,14 @@ The collection of keys used within the properties file. static String +PROXY_PASSWORD + +
    +          The properties key for the proxy password. + + + +static String PROXY_PORT
    @@ -267,6 +275,14 @@ The collection of keys used within the properties file. static String +PROXY_USERNAME + +
    +          The properties key for the proxy username. + + + +static String TEMP_DIRECTORY
    @@ -510,6 +526,30 @@ public static final

    +PROXY_USERNAME

    +
    +public static final String PROXY_USERNAME
    +
    +
    The properties key for the proxy username. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +PROXY_PASSWORD

    +
    +public static final String PROXY_PASSWORD
    +
    +
    The properties key for the proxy password. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    +

    CONNECTION_TIMEOUT

    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.html
    index 188be641f..d20bdb4c2 100644
    --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.html
    +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Settings (Dependency-Check Core 1.0.4 API)
    +Settings (Dependency-Check Core 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ Settings (Dependency-Check Core 1.0.4 API)
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="Settings (Dependency-Check Core 1.0.4 API)";
    +        parent.document.title="Settings (Dependency-Check Core 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/UrlStringUtils.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/UrlStringUtils.html
    index 869b2da6c..f16b09c84 100644
    --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/UrlStringUtils.html
    +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/UrlStringUtils.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -UrlStringUtils (Dependency-Check Core 1.0.4 API)
    +UrlStringUtils (Dependency-Check Core 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ UrlStringUtils (Dependency-Check Core 1.0.4 API)
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="UrlStringUtils (Dependency-Check Core 1.0.4 API)";
    +        parent.document.title="UrlStringUtils (Dependency-Check Core 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Checksum.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Checksum.html
    index 28b5b0d7c..f5a7fbbba 100644
    --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Checksum.html
    +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Checksum.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Uses of Class org.owasp.dependencycheck.utils.Checksum (Dependency-Check Core 1.0.4 API)
    +Uses of Class org.owasp.dependencycheck.utils.Checksum (Dependency-Check Core 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.utils.Checksum (Dependency-Check Core 1.
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.Checksum (Dependency-Check Core 1.0.4 API)";
    +        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.Checksum (Dependency-Check Core 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DependencyVersion.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DependencyVersion.html
    index 2d5e2df54..de0fd59b4 100644
    --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DependencyVersion.html
    +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DependencyVersion.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Uses of Class org.owasp.dependencycheck.utils.DependencyVersion (Dependency-Check Core 1.0.4 API)
    +Uses of Class org.owasp.dependencycheck.utils.DependencyVersion (Dependency-Check Core 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.utils.DependencyVersion (Dependency-Chec
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.DependencyVersion (Dependency-Check Core 1.0.4 API)";
    +        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.DependencyVersion (Dependency-Check Core 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DependencyVersionUtil.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DependencyVersionUtil.html
    index 76613808e..d7725252f 100644
    --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DependencyVersionUtil.html
    +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DependencyVersionUtil.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Uses of Class org.owasp.dependencycheck.utils.DependencyVersionUtil (Dependency-Check Core 1.0.4 API)
    +Uses of Class org.owasp.dependencycheck.utils.DependencyVersionUtil (Dependency-Check Core 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.utils.DependencyVersionUtil (Dependency-
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.DependencyVersionUtil (Dependency-Check Core 1.0.4 API)";
    +        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.DependencyVersionUtil (Dependency-Check Core 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DownloadFailedException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DownloadFailedException.html
    index 86e9d744c..73aa46249 100644
    --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DownloadFailedException.html
    +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DownloadFailedException.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Uses of Class org.owasp.dependencycheck.utils.DownloadFailedException (Dependency-Check Core 1.0.4 API)
    +Uses of Class org.owasp.dependencycheck.utils.DownloadFailedException (Dependency-Check Core 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.utils.DownloadFailedException (Dependenc
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.DownloadFailedException (Dependency-Check Core 1.0.4 API)";
    +        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.DownloadFailedException (Dependency-Check Core 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Downloader.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Downloader.html
    index e92425306..9fcac4ac9 100644
    --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Downloader.html
    +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Downloader.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Uses of Class org.owasp.dependencycheck.utils.Downloader (Dependency-Check Core 1.0.4 API)
    +Uses of Class org.owasp.dependencycheck.utils.Downloader (Dependency-Check Core 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.utils.Downloader (Dependency-Check Core
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.Downloader (Dependency-Check Core 1.0.4 API)";
    +        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.Downloader (Dependency-Check Core 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/ExtractionException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/ExtractionException.html
    index ccdc111fe..ff1bb3fcf 100644
    --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/ExtractionException.html
    +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/ExtractionException.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Uses of Class org.owasp.dependencycheck.utils.ExtractionException (Dependency-Check Core 1.0.4 API)
    +Uses of Class org.owasp.dependencycheck.utils.ExtractionException (Dependency-Check Core 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.utils.ExtractionException (Dependency-Ch
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.ExtractionException (Dependency-Check Core 1.0.4 API)";
    +        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.ExtractionException (Dependency-Check Core 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/FileUtils.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/FileUtils.html
    index fda2adb9e..a283a892e 100644
    --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/FileUtils.html
    +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/FileUtils.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Uses of Class org.owasp.dependencycheck.utils.FileUtils (Dependency-Check Core 1.0.4 API)
    +Uses of Class org.owasp.dependencycheck.utils.FileUtils (Dependency-Check Core 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.utils.FileUtils (Dependency-Check Core 1
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.FileUtils (Dependency-Check Core 1.0.4 API)";
    +        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.FileUtils (Dependency-Check Core 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Filter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Filter.html
    index 058fe891d..e1a080c2a 100644
    --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Filter.html
    +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Filter.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Uses of Class org.owasp.dependencycheck.utils.Filter (Dependency-Check Core 1.0.4 API)
    +Uses of Class org.owasp.dependencycheck.utils.Filter (Dependency-Check Core 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.utils.Filter (Dependency-Check Core 1.0.
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.Filter (Dependency-Check Core 1.0.4 API)";
    +        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.Filter (Dependency-Check Core 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/InvalidSettingException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/InvalidSettingException.html
    index 246080f41..d2ab90cb4 100644
    --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/InvalidSettingException.html
    +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/InvalidSettingException.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Uses of Class org.owasp.dependencycheck.utils.InvalidSettingException (Dependency-Check Core 1.0.4 API)
    +Uses of Class org.owasp.dependencycheck.utils.InvalidSettingException (Dependency-Check Core 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.utils.InvalidSettingException (Dependenc
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.InvalidSettingException (Dependency-Check Core 1.0.4 API)";
    +        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.InvalidSettingException (Dependency-Check Core 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/LogFilter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/LogFilter.html
    index d07068c48..75de674df 100644
    --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/LogFilter.html
    +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/LogFilter.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Uses of Class org.owasp.dependencycheck.utils.LogFilter (Dependency-Check Core 1.0.4 API)
    +Uses of Class org.owasp.dependencycheck.utils.LogFilter (Dependency-Check Core 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.utils.LogFilter (Dependency-Check Core 1
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.LogFilter (Dependency-Check Core 1.0.4 API)";
    +        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.LogFilter (Dependency-Check Core 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/LogUtils.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/LogUtils.html
    index 592e429e9..f51ef20fe 100644
    --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/LogUtils.html
    +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/LogUtils.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Uses of Class org.owasp.dependencycheck.utils.LogUtils (Dependency-Check Core 1.0.4 API)
    +Uses of Class org.owasp.dependencycheck.utils.LogUtils (Dependency-Check Core 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.utils.LogUtils (Dependency-Check Core 1.
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.LogUtils (Dependency-Check Core 1.0.4 API)";
    +        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.LogUtils (Dependency-Check Core 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/NonClosingStream.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/NonClosingStream.html
    index 87641b5d9..6b16d3b97 100644
    --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/NonClosingStream.html
    +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/NonClosingStream.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Uses of Class org.owasp.dependencycheck.utils.NonClosingStream (Dependency-Check Core 1.0.4 API)
    +Uses of Class org.owasp.dependencycheck.utils.NonClosingStream (Dependency-Check Core 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.utils.NonClosingStream (Dependency-Check
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.NonClosingStream (Dependency-Check Core 1.0.4 API)";
    +        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.NonClosingStream (Dependency-Check Core 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Settings.KEYS.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Settings.KEYS.html
    index c1302be02..efcb57cee 100644
    --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Settings.KEYS.html
    +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Settings.KEYS.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Uses of Class org.owasp.dependencycheck.utils.Settings.KEYS (Dependency-Check Core 1.0.4 API)
    +Uses of Class org.owasp.dependencycheck.utils.Settings.KEYS (Dependency-Check Core 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.utils.Settings.KEYS (Dependency-Check Co
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.Settings.KEYS (Dependency-Check Core 1.0.4 API)";
    +        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.Settings.KEYS (Dependency-Check Core 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Settings.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Settings.html
    index 208b10e51..2d8837e60 100644
    --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Settings.html
    +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Settings.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Uses of Class org.owasp.dependencycheck.utils.Settings (Dependency-Check Core 1.0.4 API)
    +Uses of Class org.owasp.dependencycheck.utils.Settings (Dependency-Check Core 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.utils.Settings (Dependency-Check Core 1.
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.Settings (Dependency-Check Core 1.0.4 API)";
    +        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.Settings (Dependency-Check Core 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/UrlStringUtils.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/UrlStringUtils.html
    index d01b2adb0..b6007918d 100644
    --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/UrlStringUtils.html
    +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/UrlStringUtils.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Uses of Class org.owasp.dependencycheck.utils.UrlStringUtils (Dependency-Check Core 1.0.4 API)
    +Uses of Class org.owasp.dependencycheck.utils.UrlStringUtils (Dependency-Check Core 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.utils.UrlStringUtils (Dependency-Check C
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.UrlStringUtils (Dependency-Check Core 1.0.4 API)";
    +        parent.document.title="Uses of Class org.owasp.dependencycheck.utils.UrlStringUtils (Dependency-Check Core 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-frame.html
    index 7b2c3e51e..dd11a90d5 100644
    --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-frame.html
    +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-frame.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -org.owasp.dependencycheck.utils (Dependency-Check Core 1.0.4 API)
    +org.owasp.dependencycheck.utils (Dependency-Check Core 1.0.5 API)
     
     
    -
    +
     
     
     
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-summary.html
    index 7ee4eeb14..ac48b2dc6 100644
    --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-summary.html
    +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-summary.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -org.owasp.dependencycheck.utils (Dependency-Check Core 1.0.4 API)
    +org.owasp.dependencycheck.utils (Dependency-Check Core 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ org.owasp.dependencycheck.utils (Dependency-Check Core 1.0.4 API)
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="org.owasp.dependencycheck.utils (Dependency-Check Core 1.0.4 API)";
    +        parent.document.title="org.owasp.dependencycheck.utils (Dependency-Check Core 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-tree.html
    index c6f938f20..3e56a2f60 100644
    --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-tree.html
    +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-tree.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -org.owasp.dependencycheck.utils Class Hierarchy (Dependency-Check Core 1.0.4 API)
    +org.owasp.dependencycheck.utils Class Hierarchy (Dependency-Check Core 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ org.owasp.dependencycheck.utils Class Hierarchy (Dependency-Check Core 1.0.4 API
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="org.owasp.dependencycheck.utils Class Hierarchy (Dependency-Check Core 1.0.4 API)";
    +        parent.document.title="org.owasp.dependencycheck.utils Class Hierarchy (Dependency-Check Core 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-use.html
    index b6d353999..e6a51e09e 100644
    --- a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-use.html
    +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-use.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Uses of Package org.owasp.dependencycheck.utils (Dependency-Check Core 1.0.4 API)
    +Uses of Package org.owasp.dependencycheck.utils (Dependency-Check Core 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ Uses of Package org.owasp.dependencycheck.utils (Dependency-Check Core 1.0.4 API
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="Uses of Package org.owasp.dependencycheck.utils (Dependency-Check Core 1.0.4 API)";
    +        parent.document.title="Uses of Package org.owasp.dependencycheck.utils (Dependency-Check Core 1.0.5 API)";
         }
     }
     
    diff --git a/dependency-check-core/apidocs/overview-frame.html b/dependency-check-core/apidocs/overview-frame.html
    index d83004260..77bc45909 100644
    --- a/dependency-check-core/apidocs/overview-frame.html
    +++ b/dependency-check-core/apidocs/overview-frame.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Overview List (Dependency-Check Core 1.0.4 API)
    +Overview List (Dependency-Check Core 1.0.5 API)
     
     
    -
    +
     
     
     
    diff --git a/dependency-check-core/apidocs/overview-summary.html b/dependency-check-core/apidocs/overview-summary.html
    index 373d69b35..eacd19fca 100644
    --- a/dependency-check-core/apidocs/overview-summary.html
    +++ b/dependency-check-core/apidocs/overview-summary.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -Overview (Dependency-Check Core 1.0.4 API)
    +Overview (Dependency-Check Core 1.0.5 API)
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@ Overview (Dependency-Check Core 1.0.4 API)
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="Overview (Dependency-Check Core 1.0.4 API)";
    +        parent.document.title="Overview (Dependency-Check Core 1.0.5 API)";
         }
     }
     
    @@ -82,7 +82,7 @@ function windowTitle()
     

    -Dependency-Check Core 1.0.4 API +Dependency-Check Core 1.0.5 API

    diff --git a/dependency-check-core/apidocs/overview-tree.html b/dependency-check-core/apidocs/overview-tree.html index 38a383634..670dd99f3 100644 --- a/dependency-check-core/apidocs/overview-tree.html +++ b/dependency-check-core/apidocs/overview-tree.html @@ -2,13 +2,13 @@ - + -Class Hierarchy (Dependency-Check Core 1.0.4 API) +Class Hierarchy (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Class Hierarchy (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Class Hierarchy (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Class Hierarchy (Dependency-Check Core 1.0.5 API)"; } } @@ -154,8 +154,8 @@ Class Hierarchy
  • org.owasp.dependencycheck.jaxb.pom.generated.Site
  • java.lang.Throwable (implements java.io.Serializable)
  • org.owasp.dependencycheck.data.update.Updateable (implements java.lang.Iterable<T>, java.util.Iterator<E>) diff --git a/dependency-check-core/apidocs/serialized-form.html b/dependency-check-core/apidocs/serialized-form.html index 92716a07e..d64d9d27b 100644 --- a/dependency-check-core/apidocs/serialized-form.html +++ b/dependency-check-core/apidocs/serialized-form.html @@ -2,13 +2,13 @@ - + -Serialized Form (Dependency-Check Core 1.0.4 API) +Serialized Form (Dependency-Check Core 1.0.5 API) - + @@ -16,7 +16,7 @@ Serialized Form (Dependency-Check Core 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Serialized Form (Dependency-Check Core 1.0.4 API)"; + parent.document.title="Serialized Form (Dependency-Check Core 1.0.5 API)"; } } @@ -105,6 +105,20 @@ Serialized Form

    serialVersionUID: 1L +

    + +

    + + + + + +
    +Class org.owasp.dependencycheck.analyzer.ArchiveExtractionException extends Exception implements Serializable
    + +

    +serialVersionUID: 1L +


    @@ -151,6 +165,20 @@ Serialized Form +

    + + + + + +
    +Class org.owasp.dependencycheck.data.NoDataException extends IOException implements Serializable
    + +

    +serialVersionUID: 1L + +

    +

    diff --git a/dependency-check-core/checkstyle.html b/dependency-check-core/checkstyle.html index 0110c0e23..6a9863a79 100644 --- a/dependency-check-core/checkstyle.html +++ b/dependency-check-core/checkstyle.html @@ -1,13 +1,13 @@ - + dependency-check-core - Checkstyle Results @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -227,7 +227,7 @@ - +
    Warnings Warnings Errors Errors
    149151 0 0 1
    diff --git a/dependency-check-core/checkstyle.rss b/dependency-check-core/checkstyle.rss index ee022850f..0dca10c5c 100644 --- a/dependency-check-core/checkstyle.rss +++ b/dependency-check-core/checkstyle.rss @@ -8,7 +8,7 @@ en-us ©2012 - 2013 OWASP - File: 149, + <title>File: 151, Errors: 1, Warnings: 0, Infos: 0 @@ -127,7 +127,7 @@ </tr> <tr> <td> - <a href="https://github.com/jeremylong/DependencyCheck.git/dependency-check-core/checkstyle.html#org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.java">org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.java</a> + <a href="https://github.com/jeremylong/DependencyCheck.git/dependency-check-core/checkstyle.html#org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.java">org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.java</a> </td> <td> 0 @@ -141,7 +141,7 @@ </tr> <tr> <td> - <a href="https://github.com/jeremylong/DependencyCheck.git/dependency-check-core/checkstyle.html#org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.java">org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.java</a> + <a href="https://github.com/jeremylong/DependencyCheck.git/dependency-check-core/checkstyle.html#org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.java">org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.java</a> </td> <td> 0 @@ -306,6 +306,20 @@ <td> 0 </td> + </tr> + <tr> + <td> + <a href="https://github.com/jeremylong/DependencyCheck.git/dependency-check-core/checkstyle.html#org.owasp.dependencycheck.analyzer.ArchiveExtractionException.java">org/owasp/dependencycheck/analyzer/ArchiveExtractionException.java</a> + </td> + <td> + 0 + </td> + <td> + 0 + </td> + <td> + 0 + </td> </tr> <tr> <td> @@ -1818,6 +1832,20 @@ <td> 0 </td> + </tr> + <tr> + <td> + <a href="https://github.com/jeremylong/DependencyCheck.git/dependency-check-core/checkstyle.html#org.owasp.dependencycheck.data.NoDataException.java">org/owasp/dependencycheck/data/NoDataException.java</a> + </td> + <td> + 0 + </td> + <td> + 0 + </td> + <td> + 0 + </td> </tr> <tr> <td> diff --git a/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.analyzer.html b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.analyzer.html index 985198ff0..d92a218e0 100644 --- a/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.analyzer.html +++ b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.analyzer.html @@ -30,16 +30,19 @@ org.owasp.dependencycheck.analyzer <td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.analyzer.AnalyzerService.html">AnalyzerService</a> <i>(100%)</i></td> </tr> <tr> -<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.analyzer.ArchiveAnalyzer.html">ArchiveAnalyzer</a> <i>(69%)</i></td> +<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.analyzer.ArchiveAnalyzer.html">ArchiveAnalyzer</a> <i>(65%)</i></td> </tr> <tr> -<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.analyzer.CPEAnalyzer.html">CPEAnalyzer</a> <i>(80%)</i></td> +<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.analyzer.ArchiveExtractionException.html">ArchiveExtractionException</a> <i>(0%)</i></td> </tr> <tr> -<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer.html">DependencyBundlingAnalyzer</a> <i>(24%)</i></td> +<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.analyzer.CPEAnalyzer.html">CPEAnalyzer</a> <i>(81%)</i></td> </tr> <tr> -<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.html">FalsePositiveAnalyzer</a> <i>(70%)</i></td> +<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer.html">DependencyBundlingAnalyzer</a> <i>(33%)</i></td> +</tr> +<tr> +<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.html">FalsePositiveAnalyzer</a> <i>(69%)</i></td> </tr> <tr> <td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.analyzer.FileNameAnalyzer.html">FileNameAnalyzer</a> <i>(100%)</i></td> diff --git a/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.html b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.html index 9e8128b4b..05988dbbf 100644 --- a/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.html +++ b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.html @@ -18,6 +18,9 @@ org.owasp.dependencycheck.data <td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.data.CachedWebDataSource.html">CachedWebDataSource</a> <i>(N/A)</i></td> </tr> <tr> +<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.data.NoDataException.html">NoDataException</a> <i>(0%)</i></td> +</tr> +<tr> <td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.data.UpdateException.html">UpdateException</a> <i>(0%)</i></td> </tr> <tr> diff --git a/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.html b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.html index 37b3f27d6..891b884de 100644 --- a/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.html +++ b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.html @@ -15,7 +15,7 @@ org.owasp.dependencycheck <table width="100%"> <tbody> <tr> -<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.Engine.html">Engine</a> <i>(62%)</i></td> +<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.Engine.html">Engine</a> <i>(60%)</i></td> </tr> </tbody> </table> diff --git a/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.utils.html b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.utils.html index 32a8a9c07..1560b2c64 100644 --- a/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.utils.html +++ b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.utils.html @@ -27,7 +27,7 @@ org.owasp.dependencycheck.utils <td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.utils.DownloadFailedException.html">DownloadFailedException</a> <i>(0%)</i></td> </tr> <tr> -<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.utils.Downloader.html">Downloader</a> <i>(8%)</i></td> +<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.utils.Downloader.html">Downloader</a> <i>(7%)</i></td> </tr> <tr> <td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.utils.ExtractionException.html">ExtractionException</a> <i>(0%)</i></td> @@ -45,7 +45,7 @@ org.owasp.dependencycheck.utils <td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.utils.LogFilter.html">LogFilter</a> <i>(0%)</i></td> </tr> <tr> -<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.utils.LogUtils.html">LogUtils</a> <i>(0%)</i></td> +<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.utils.LogUtils.html">LogUtils</a> <i>(8%)</i></td> </tr> <tr> <td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.utils.NonClosingStream.html">NonClosingStream</a> <i>(100%)</i></td> diff --git a/dependency-check-core/cobertura/frame-sourcefiles.html b/dependency-check-core/cobertura/frame-sourcefiles.html index 4015f2b69..59c775ee3 100644 --- a/dependency-check-core/cobertura/frame-sourcefiles.html +++ b/dependency-check-core/cobertura/frame-sourcefiles.html @@ -51,7 +51,10 @@ All Packages <td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.analyzer.AnalyzerService.html">AnalyzerService</a> <i>(100%)</i></td> </tr> <tr> -<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.analyzer.ArchiveAnalyzer.html">ArchiveAnalyzer</a> <i>(69%)</i></td> +<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.analyzer.ArchiveAnalyzer.html">ArchiveAnalyzer</a> <i>(65%)</i></td> +</tr> +<tr> +<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.analyzer.ArchiveExtractionException.html">ArchiveExtractionException</a> <i>(0%)</i></td> </tr> <tr> <td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.data.cpe.BaseIndex.html">BaseIndex</a> <i>(73%)</i></td> @@ -66,7 +69,7 @@ All Packages <td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.html">BuildBase</a> <i>(7%)</i></td> </tr> <tr> -<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.analyzer.CPEAnalyzer.html">CPEAnalyzer</a> <i>(80%)</i></td> +<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.analyzer.CPEAnalyzer.html">CPEAnalyzer</a> <i>(81%)</i></td> </tr> <tr> <td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.data.CachedWebDataSource.html">CachedWebDataSource</a> <i>(N/A)</i></td> @@ -114,7 +117,7 @@ All Packages <td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.jaxb.pom.generated.Dependency.html">Dependency</a> <i>(9%)</i></td> </tr> <tr> -<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer.html">DependencyBundlingAnalyzer</a> <i>(24%)</i></td> +<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer.html">DependencyBundlingAnalyzer</a> <i>(33%)</i></td> </tr> <tr> <td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement.html">DependencyManagement</a> <i>(0%)</i></td> @@ -147,10 +150,10 @@ All Packages <td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.utils.DownloadFailedException.html">DownloadFailedException</a> <i>(0%)</i></td> </tr> <tr> -<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.utils.Downloader.html">Downloader</a> <i>(8%)</i></td> +<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.utils.Downloader.html">Downloader</a> <i>(7%)</i></td> </tr> <tr> -<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.Engine.html">Engine</a> <i>(62%)</i></td> +<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.Engine.html">Engine</a> <i>(60%)</i></td> </tr> <tr> <td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.dependency.Evidence.html">Evidence</a> <i>(53%)</i></td> @@ -168,7 +171,7 @@ All Packages <td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.utils.ExtractionException.html">ExtractionException</a> <i>(0%)</i></td> </tr> <tr> -<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.html">FalsePositiveAnalyzer</a> <i>(70%)</i></td> +<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.html">FalsePositiveAnalyzer</a> <i>(69%)</i></td> </tr> <tr> <td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.data.lucene.FieldAnalyzer.html">FieldAnalyzer</a> <i>(100%)</i></td> @@ -219,7 +222,7 @@ All Packages <td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.utils.LogFilter.html">LogFilter</a> <i>(0%)</i></td> </tr> <tr> -<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.utils.LogUtils.html">LogUtils</a> <i>(0%)</i></td> +<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.utils.LogUtils.html">LogUtils</a> <i>(8%)</i></td> </tr> <tr> <td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.data.lucene.LuceneUtils.html">LuceneUtils</a> <i>(88%)</i></td> @@ -234,6 +237,9 @@ All Packages <td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.jaxb.pom.generated.Model.html">Model</a> <i>(13%)</i></td> </tr> <tr> +<td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.data.NoDataException.html">NoDataException</a> <i>(0%)</i></td> +</tr> +<tr> <td nowrap="nowrap"><a target="summary" href="org.owasp.dependencycheck.utils.NonClosingStream.html">NonClosingStream</a> <i>(100%)</i></td> </tr> <tr> diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.analyzer.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.analyzer.html index 6bad8e3f3..79eb84f32 100644 --- a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.analyzer.html +++ b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.analyzer.html @@ -16,7 +16,7 @@ <table class="report" id="packageResults"> <thead><tr> <td class="heading">Package</td> <td class="heading"># Classes</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> <tbody> - <tr><td><a href="frame-summary-org.owasp.dependencycheck.analyzer.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.analyzer.html"'>org.owasp.dependencycheck.analyzer</a></td><td class="value">17</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">72%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:72px"><span class="text">795/1092</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">58%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:58px"><span class="text">390/664</span></div></div></td></tr></table></td><td class="value"><span class="hidden">4.059701492537314;</span>4.06</td></tr> + <tr><td><a href="frame-summary-org.owasp.dependencycheck.analyzer.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.analyzer.html"'>org.owasp.dependencycheck.analyzer</a></td><td class="value">18</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">72%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:72px"><span class="text">845/1171</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">60%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:60px"><span class="text">433/718</span></div></div></td></tr></table></td><td class="value"><span class="hidden">4.141843971631205;</span>4.142</td></tr> </tbody> </table> <script type="text/javascript"> @@ -38,15 +38,17 @@ packageTable.sort(0); <tr><td><a href="org.owasp.dependencycheck.analyzer.AnalyzerService.html">AnalyzerService</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">100%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:100px"><span class="text">7/7</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">100%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:100px"><span class="text">2/2</span></div></div></td></tr></table></td><td class="value"><span class="hidden">1.3333333333333333;</span>1.333</td></tr> - <tr><td><a href="org.owasp.dependencycheck.analyzer.ArchiveAnalyzer.html">ArchiveAnalyzer</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">69%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:69px"><span class="text">74/107</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">65%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:65px"><span class="text">25/38</span></div></div></td></tr></table></td><td class="value"><span class="hidden">5.111111111111111;</span>5.111</td></tr> + <tr><td><a href="org.owasp.dependencycheck.analyzer.ArchiveAnalyzer.html">ArchiveAnalyzer</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">65%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:65px"><span class="text">98/150</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">69%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:69px"><span class="text">43/62</span></div></div></td></tr></table></td><td class="value"><span class="hidden">6.2727272727272725;</span>6.273</td></tr> - <tr><td><a href="org.owasp.dependencycheck.analyzer.CPEAnalyzer.html">CPEAnalyzer</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">88%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:88px"><span class="text">174/196</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">82%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:82px"><span class="text">105/128</span></div></div></td></tr></table></td><td class="value"><span class="hidden">4.0625;</span>4.062</td></tr> + <tr><td><a href="org.owasp.dependencycheck.analyzer.ArchiveExtractionException.html">ArchiveExtractionException</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/8</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"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></td><td class="percentgraph"><div class="percentgraph"><div class="na" style="width:100px"><span class="text"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></span></div></div></td></tr></table></td><td class="value"><span class="hidden">1.0;</span>1</td></tr> + + <tr><td><a href="org.owasp.dependencycheck.analyzer.CPEAnalyzer.html">CPEAnalyzer</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">89%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:89px"><span class="text">175/196</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">84%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:84px"><span class="text">108/128</span></div></div></td></tr></table></td><td class="value"><span class="hidden">4.0625;</span>4.062</td></tr> <tr><td><a href="org.owasp.dependencycheck.analyzer.CPEAnalyzer.html">CPEAnalyzer$IdentifierConfidence</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">100%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:100px"><span class="text">3/3</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"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></td><td class="percentgraph"><div class="percentgraph"><div class="na" style="width:100px"><span class="text"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></span></div></div></td></tr></table></td><td class="value"><span class="hidden">4.0625;</span>4.062</td></tr> <tr><td><a href="org.owasp.dependencycheck.analyzer.CPEAnalyzer.html">CPEAnalyzer$IdentifierMatch</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">38%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:38px"><span class="text">15/39</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">16%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:16px"><span class="text">4/24</span></div></div></td></tr></table></td><td class="value"><span class="hidden">4.0625;</span>4.062</td></tr> - <tr><td><a href="org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer.html">DependencyBundlingAnalyzer</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">24%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:24px"><span class="text">26/105</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">17%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:17px"><span class="text">16/94</span></div></div></td></tr></table></td><td class="value"><span class="hidden">7.1;</span>7.1</td></tr> + <tr><td><a href="org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer.html">DependencyBundlingAnalyzer</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">33%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:33px"><span class="text">37/112</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">26%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:26px"><span class="text">25/96</span></div></div></td></tr></table></td><td class="value"><span class="hidden">6.9;</span>6.9</td></tr> - <tr><td><a href="org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.html">FalsePositiveAnalyzer</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">70%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:70px"><span class="text">66/94</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">46%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:46px"><span class="text">39/84</span></div></div></td></tr></table></td><td class="value"><span class="hidden">5.6;</span>5.6</td></tr> + <tr><td><a href="org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.html">FalsePositiveAnalyzer</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">69%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:69px"><span class="text">80/115</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">46%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:46px"><span class="text">52/112</span></div></div></td></tr></table></td><td class="value"><span class="hidden">6.454545454545454;</span>6.455</td></tr> <tr><td><a href="org.owasp.dependencycheck.analyzer.FileNameAnalyzer.html">FileNameAnalyzer</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">100%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:100px"><span class="text">22/22</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">83%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:83px"><span class="text">5/6</span></div></div></td></tr></table></td><td class="value"><span class="hidden">1.6;</span>1.6</td></tr> @@ -66,6 +68,6 @@ var classTable = new SortableTable(document.getElementById("classResults"), ["String", "Percentage", "Percentage", "FormattedNumber"]); classTable.sort(0); </script> -<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.concurrency.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.concurrency.html index a39b2b504..d1d876309 100644 --- a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.concurrency.html +++ b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.concurrency.html @@ -41,6 +41,6 @@ var classTable = new SortableTable(document.getElementById("classResults"), ["String", "Percentage", "Percentage", "FormattedNumber"]); classTable.sort(0); </script> -<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.cpe.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.cpe.html index 7fa9a59aa..ef6b7c9cc 100644 --- a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.cpe.html +++ b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.cpe.html @@ -16,7 +16,7 @@ <table class="report" id="packageResults"> <thead><tr> <td class="heading">Package</td> <td class="heading"># Classes</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> <tbody> - <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.cpe.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.cpe.html"'>org.owasp.dependencycheck.data.cpe</a></td><td class="value">5</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">58%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:58px"><span class="text">94/160</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">34%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:34px"><span class="text">20/58</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.3;</span>2.3</td></tr> + <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.cpe.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.cpe.html"'>org.owasp.dependencycheck.data.cpe</a></td><td class="value">5</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">58%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:58px"><span class="text">96/163</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">35%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:35px"><span class="text">21/60</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.3225806451612905;</span>2.323</td></tr> </tbody> </table> <script type="text/javascript"> @@ -30,7 +30,7 @@ packageTable.sort(0); <tbody> <tr><td><a href="org.owasp.dependencycheck.data.cpe.BaseIndex.html">BaseIndex</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">73%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:73px"><span class="text">17/23</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">25%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:25px"><span class="text">1/4</span></div></div></td></tr></table></td><td class="value"><span class="hidden">1.6666666666666667;</span>1.667</td></tr> - <tr><td><a href="org.owasp.dependencycheck.data.cpe.CpeIndexReader.html">CpeIndexReader</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">60%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:60px"><span class="text">30/50</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">31%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:31px"><span class="text">5/16</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.4285714285714284;</span>2.429</td></tr> + <tr><td><a href="org.owasp.dependencycheck.data.cpe.CpeIndexReader.html">CpeIndexReader</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">60%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:60px"><span class="text">32/53</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">33%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:33px"><span class="text">6/18</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.5;</span>2.5</td></tr> <tr><td><a href="org.owasp.dependencycheck.data.cpe.CpeIndexWriter.html">CpeIndexWriter</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">48%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:48px"><span class="text">24/50</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">50%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:50px"><span class="text">3/6</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.4;</span>2.4</td></tr> @@ -45,6 +45,6 @@ var classTable = new SortableTable(document.getElementById("classResults"), ["String", "Percentage", "Percentage", "FormattedNumber"]); classTable.sort(0); </script> -<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.cwe.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.cwe.html index 10a59cb6b..119eb4058 100644 --- a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.cwe.html +++ b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.cwe.html @@ -39,6 +39,6 @@ var classTable = new SortableTable(document.getElementById("classResults"), ["String", "Percentage", "Percentage", "FormattedNumber"]); classTable.sort(0); </script> -<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.html index bd63eb065..7e34e91fd 100644 --- a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.html +++ b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.html @@ -16,11 +16,11 @@ <table class="report" id="packageResults"> <thead><tr> <td class="heading">Package</td> <td class="heading"># Classes</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> <tbody> - <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.html"'>org.owasp.dependencycheck.data</a></td><td class="value">3</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/15</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">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/2</span></div></div></td></tr></table></td><td class="value"><span class="hidden">1.125;</span>1.125</td></tr> - <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.cpe.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.cpe.html"'>org.owasp.dependencycheck.data.cpe</a></td><td class="value">5</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">58%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:58px"><span class="text">94/160</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">34%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:34px"><span class="text">20/58</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.3;</span>2.3</td></tr> + <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.html"'>org.owasp.dependencycheck.data</a></td><td class="value">4</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/23</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">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/2</span></div></div></td></tr></table></td><td class="value"><span class="hidden">1.0833333333333333;</span>1.083</td></tr> + <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.cpe.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.cpe.html"'>org.owasp.dependencycheck.data.cpe</a></td><td class="value">5</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">58%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:58px"><span class="text">96/163</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">35%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:35px"><span class="text">21/60</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.3225806451612905;</span>2.323</td></tr> <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.cwe.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.cwe.html"'>org.owasp.dependencycheck.data.cwe</a></td><td class="value">2</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">35%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:35px"><span class="text">11/31</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">25%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:25px"><span class="text">2/8</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.8;</span>2.8</td></tr> <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.lucene.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.lucene.html"'>org.owasp.dependencycheck.data.lucene</a></td><td class="value">11</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">67%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:67px"><span class="text">96/143</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">52%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:52px"><span class="text">35/67</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.5;</span>2.5</td></tr> - <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.nvdcve.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.nvdcve.html"'>org.owasp.dependencycheck.data.nvdcve</a></td><td class="value">8</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">59%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:59px"><span class="text">319/534</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">73%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:73px"><span class="text">154/210</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.305084745762712;</span>3.305</td></tr> + <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.nvdcve.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.nvdcve.html"'>org.owasp.dependencycheck.data.nvdcve</a></td><td class="value">8</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">59%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:59px"><span class="text">320/534</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">75%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:75px"><span class="text">158/210</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.305084745762712;</span>3.305</td></tr> <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.update.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.update.html"'>org.owasp.dependencycheck.data.update</a></td><td class="value">9</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">33%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:33px"><span class="text">159/473</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">21%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:21px"><span class="text">32/152</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.2857142857142856;</span>3.286</td></tr> </tbody> </table> @@ -35,6 +35,8 @@ packageTable.sort(0); <tbody> <tr><td><a href="org.owasp.dependencycheck.data.CachedWebDataSource.html">CachedWebDataSource</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></td><td class="percentgraph"><div class="percentgraph"><div class="na" style="width:100px"><span class="text"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></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"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></td><td class="percentgraph"><div class="percentgraph"><div class="na" style="width:100px"><span class="text"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></span></div></div></td></tr></table></td><td class="value"><span class="hidden">1.0;</span>1</td></tr> + <tr><td><a href="org.owasp.dependencycheck.data.NoDataException.html">NoDataException</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/8</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"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></td><td class="percentgraph"><div class="percentgraph"><div class="na" style="width:100px"><span class="text"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></span></div></div></td></tr></table></td><td class="value"><span class="hidden">1.0;</span>1</td></tr> + <tr><td><a href="org.owasp.dependencycheck.data.UpdateException.html">UpdateException</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/8</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"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></td><td class="percentgraph"><div class="percentgraph"><div class="na" style="width:100px"><span class="text"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></span></div></div></td></tr></table></td><td class="value"><span class="hidden">1.0;</span>1</td></tr> <tr><td><a href="org.owasp.dependencycheck.data.UpdateService.html">UpdateService</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/7</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">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/2</span></div></div></td></tr></table></td><td class="value"><span class="hidden">1.3333333333333333;</span>1.333</td></tr> @@ -46,6 +48,6 @@ var classTable = new SortableTable(document.getElementById("classResults"), ["String", "Percentage", "Percentage", "FormattedNumber"]); classTable.sort(0); </script> -<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.lucene.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.lucene.html index 2019cb2e7..8ec4c2670 100644 --- a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.lucene.html +++ b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.lucene.html @@ -57,6 +57,6 @@ var classTable = new SortableTable(document.getElementById("classResults"), ["String", "Percentage", "Percentage", "FormattedNumber"]); classTable.sort(0); </script> -<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.nvdcve.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.nvdcve.html index 0ad70fa7e..347651b65 100644 --- a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.nvdcve.html +++ b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.nvdcve.html @@ -16,7 +16,7 @@ <table class="report" id="packageResults"> <thead><tr> <td class="heading">Package</td> <td class="heading"># Classes</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> <tbody> - <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.nvdcve.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.nvdcve.html"'>org.owasp.dependencycheck.data.nvdcve</a></td><td class="value">8</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">59%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:59px"><span class="text">319/534</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">73%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:73px"><span class="text">154/210</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.305084745762712;</span>3.305</td></tr> + <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.nvdcve.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.nvdcve.html"'>org.owasp.dependencycheck.data.nvdcve</a></td><td class="value">8</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">59%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:59px"><span class="text">320/534</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">75%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:75px"><span class="text">158/210</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.305084745762712;</span>3.305</td></tr> </tbody> </table> <script type="text/javascript"> @@ -30,7 +30,7 @@ packageTable.sort(0); <tbody> <tr><td><a href="org.owasp.dependencycheck.data.nvdcve.CorruptDatabaseException.html">CorruptDatabaseException</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/4</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"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></td><td class="percentgraph"><div class="percentgraph"><div class="na" style="width:100px"><span class="text"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></span></div></div></td></tr></table></td><td class="value"><span class="hidden">1.0;</span>1</td></tr> - <tr><td><a href="org.owasp.dependencycheck.data.nvdcve.CveDB.html">CveDB</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">47%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:47px"><span class="text">150/319</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">58%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:58px"><span class="text">55/94</span></div></div></td></tr></table></td><td class="value"><span class="hidden">5.0;</span>5</td></tr> + <tr><td><a href="org.owasp.dependencycheck.data.nvdcve.CveDB.html">CveDB</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">47%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:47px"><span class="text">151/319</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">62%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:62px"><span class="text">59/94</span></div></div></td></tr></table></td><td class="value"><span class="hidden">5.0;</span>5</td></tr> <tr><td><a href="org.owasp.dependencycheck.data.nvdcve.DatabaseException.html">DatabaseException</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/4</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"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></td><td class="percentgraph"><div class="percentgraph"><div class="na" style="width:100px"><span class="text"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></span></div></div></td></tr></table></td><td class="value"><span class="hidden">1.0;</span>1</td></tr> @@ -49,6 +49,6 @@ var classTable = new SortableTable(document.getElementById("classResults"), ["String", "Percentage", "Percentage", "FormattedNumber"]); classTable.sort(0); </script> -<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.update.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.update.html index e83aa9186..bcb21a23b 100644 --- a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.update.html +++ b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.update.html @@ -53,6 +53,6 @@ var classTable = new SortableTable(document.getElementById("classResults"), ["String", "Percentage", "Percentage", "FormattedNumber"]); classTable.sort(0); </script> -<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.dependency.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.dependency.html index 6ad5295e9..222362d3a 100644 --- a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.dependency.html +++ b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.dependency.html @@ -57,6 +57,6 @@ var classTable = new SortableTable(document.getElementById("classResults"), ["String", "Percentage", "Percentage", "FormattedNumber"]); classTable.sort(0); </script> -<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.html index 9992ff5c4..ca7d465f5 100644 --- a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.html +++ b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.html @@ -16,20 +16,20 @@ <table class="report" id="packageResults"> <thead><tr> <td class="heading">Package</td> <td class="heading"># Classes</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> <tbody> - <tr><td><a href="frame-summary-org.owasp.dependencycheck.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.html"'>org.owasp.dependencycheck</a></td><td class="value">1</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">62%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:62px"><span class="text">87/140</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">71%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:71px"><span class="text">46/64</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.411764705882353;</span>3.412</td></tr> - <tr><td><a href="frame-summary-org.owasp.dependencycheck.analyzer.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.analyzer.html"'>org.owasp.dependencycheck.analyzer</a></td><td class="value">17</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">72%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:72px"><span class="text">795/1092</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">58%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:58px"><span class="text">390/664</span></div></div></td></tr></table></td><td class="value"><span class="hidden">4.059701492537314;</span>4.06</td></tr> + <tr><td><a href="frame-summary-org.owasp.dependencycheck.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.html"'>org.owasp.dependencycheck</a></td><td class="value">1</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">60%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:60px"><span class="text">98/162</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">70%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:70px"><span class="text">49/70</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.7222222222222223;</span>3.722</td></tr> + <tr><td><a href="frame-summary-org.owasp.dependencycheck.analyzer.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.analyzer.html"'>org.owasp.dependencycheck.analyzer</a></td><td class="value">18</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">72%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:72px"><span class="text">845/1171</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">60%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:60px"><span class="text">433/718</span></div></div></td></tr></table></td><td class="value"><span class="hidden">4.141843971631205;</span>4.142</td></tr> <tr><td><a href="frame-summary-org.owasp.dependencycheck.concurrency.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.concurrency.html"'>org.owasp.dependencycheck.concurrency</a></td><td class="value">3</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">56%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:56px"><span class="text">53/94</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">66%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:66px"><span class="text">16/24</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.611111111111111;</span>2.611</td></tr> - <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.html"'>org.owasp.dependencycheck.data</a></td><td class="value">3</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/15</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">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/2</span></div></div></td></tr></table></td><td class="value"><span class="hidden">1.125;</span>1.125</td></tr> - <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.cpe.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.cpe.html"'>org.owasp.dependencycheck.data.cpe</a></td><td class="value">5</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">58%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:58px"><span class="text">94/160</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">34%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:34px"><span class="text">20/58</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.3;</span>2.3</td></tr> + <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.html"'>org.owasp.dependencycheck.data</a></td><td class="value">4</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/23</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">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/2</span></div></div></td></tr></table></td><td class="value"><span class="hidden">1.0833333333333333;</span>1.083</td></tr> + <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.cpe.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.cpe.html"'>org.owasp.dependencycheck.data.cpe</a></td><td class="value">5</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">58%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:58px"><span class="text">96/163</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">35%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:35px"><span class="text">21/60</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.3225806451612905;</span>2.323</td></tr> <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.cwe.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.cwe.html"'>org.owasp.dependencycheck.data.cwe</a></td><td class="value">2</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">35%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:35px"><span class="text">11/31</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">25%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:25px"><span class="text">2/8</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.8;</span>2.8</td></tr> <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.lucene.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.lucene.html"'>org.owasp.dependencycheck.data.lucene</a></td><td class="value">11</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">67%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:67px"><span class="text">96/143</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">52%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:52px"><span class="text">35/67</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.5;</span>2.5</td></tr> - <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.nvdcve.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.nvdcve.html"'>org.owasp.dependencycheck.data.nvdcve</a></td><td class="value">8</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">59%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:59px"><span class="text">319/534</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">73%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:73px"><span class="text">154/210</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.305084745762712;</span>3.305</td></tr> + <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.nvdcve.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.nvdcve.html"'>org.owasp.dependencycheck.data.nvdcve</a></td><td class="value">8</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">59%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:59px"><span class="text">320/534</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">75%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:75px"><span class="text">158/210</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.305084745762712;</span>3.305</td></tr> <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.update.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.update.html"'>org.owasp.dependencycheck.data.update</a></td><td class="value">9</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">33%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:33px"><span class="text">159/473</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">21%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:21px"><span class="text">32/152</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.2857142857142856;</span>3.286</td></tr> <tr><td><a href="frame-summary-org.owasp.dependencycheck.dependency.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.dependency.html"'>org.owasp.dependencycheck.dependency</a></td><td class="value">14</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">62%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:62px"><span class="text">333/529</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">35%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:35px"><span class="text">135/376</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.4387096774193546;</span>2.439</td></tr> <tr><td><a href="frame-summary-org.owasp.dependencycheck.jaxb.pom.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.jaxb.pom.html"'>org.owasp.dependencycheck.jaxb.pom</a></td><td class="value">1</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">100%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:100px"><span class="text">13/13</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">50%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:50px"><span class="text">1/2</span></div></div></td></tr></table></td><td class="value"><span class="hidden">1.25;</span>1.25</td></tr> <tr><td><a href="frame-summary-org.owasp.dependencycheck.jaxb.pom.generated.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.jaxb.pom.generated.html"'>org.owasp.dependencycheck.jaxb.pom.generated</a></td><td class="value">87</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">7%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:7px"><span class="text">74/945</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">1%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:1px"><span class="text">1/98</span></div></div></td></tr></table></td><td class="value"><span class="hidden">1.0907407407407408;</span>1.091</td></tr> <tr><td><a href="frame-summary-org.owasp.dependencycheck.reporting.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.reporting.html"'>org.owasp.dependencycheck.reporting</a></td><td class="value">3</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">52%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:52px"><span class="text">53/101</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">18%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:18px"><span class="text">8/44</span></div></div></td></tr></table></td><td class="value"><span class="hidden">4.2727272727272725;</span>4.273</td></tr> - <tr><td><a href="frame-summary-org.owasp.dependencycheck.utils.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.utils.html"'>org.owasp.dependencycheck.utils</a></td><td class="value">17</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">55%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:55px"><span class="text">263/476</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">61%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:61px"><span class="text">117/190</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.1333333333333333;</span>3.133</td></tr> + <tr><td><a href="frame-summary-org.owasp.dependencycheck.utils.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.utils.html"'>org.owasp.dependencycheck.utils</a></td><td class="value">18</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">54%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:54px"><span class="text">265/488</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">59%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:59px"><span class="text">117/196</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.1298701298701297;</span>3.13</td></tr> </tbody> </table> <script type="text/javascript"> @@ -41,7 +41,7 @@ packageTable.sort(0); <table class="report" id="classResults"> <thead><tr> <td class="heading">Classes in this Package</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> <tbody> - <tr><td><a href="org.owasp.dependencycheck.Engine.html">Engine</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">62%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:62px"><span class="text">87/140</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">71%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:71px"><span class="text">46/64</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.411764705882353;</span>3.412</td></tr> + <tr><td><a href="org.owasp.dependencycheck.Engine.html">Engine</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">60%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:60px"><span class="text">98/162</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">70%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:70px"><span class="text">49/70</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.7222222222222223;</span>3.722</td></tr> </tbody> </table> @@ -50,6 +50,6 @@ var classTable = new SortableTable(document.getElementById("classResults"), ["String", "Percentage", "Percentage", "FormattedNumber"]); classTable.sort(0); </script> -<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.jaxb.pom.generated.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.jaxb.pom.generated.html index 976a75ccb..d4448914d 100644 --- a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.jaxb.pom.generated.html +++ b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.jaxb.pom.generated.html @@ -160,6 +160,6 @@ var classTable = new SortableTable(document.getElementById("classResults"), ["String", "Percentage", "Percentage", "FormattedNumber"]); classTable.sort(0); </script> -<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.jaxb.pom.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.jaxb.pom.html index c2b934d4d..1fbe623a6 100644 --- a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.jaxb.pom.html +++ b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.jaxb.pom.html @@ -38,6 +38,6 @@ var classTable = new SortableTable(document.getElementById("classResults"), ["String", "Percentage", "Percentage", "FormattedNumber"]); classTable.sort(0); </script> -<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.reporting.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.reporting.html index 2fa039d9a..35f5850ff 100644 --- a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.reporting.html +++ b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.reporting.html @@ -40,6 +40,6 @@ var classTable = new SortableTable(document.getElementById("classResults"), ["String", "Percentage", "Percentage", "FormattedNumber"]); classTable.sort(0); </script> -<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.utils.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.utils.html index 45bac2f51..48e0c7025 100644 --- a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.utils.html +++ b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.utils.html @@ -16,7 +16,7 @@ <table class="report" id="packageResults"> <thead><tr> <td class="heading">Package</td> <td class="heading"># Classes</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> <tbody> - <tr><td><a href="frame-summary-org.owasp.dependencycheck.utils.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.utils.html"'>org.owasp.dependencycheck.utils</a></td><td class="value">17</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">55%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:55px"><span class="text">263/476</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">61%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:61px"><span class="text">117/190</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.1333333333333333;</span>3.133</td></tr> + <tr><td><a href="frame-summary-org.owasp.dependencycheck.utils.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.utils.html"'>org.owasp.dependencycheck.utils</a></td><td class="value">18</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">54%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:54px"><span class="text">265/488</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">59%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:59px"><span class="text">117/196</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.1298701298701297;</span>3.13</td></tr> </tbody> </table> <script type="text/javascript"> @@ -36,7 +36,8 @@ packageTable.sort(0); <tr><td><a href="org.owasp.dependencycheck.utils.DownloadFailedException.html">DownloadFailedException</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/8</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"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></td><td class="percentgraph"><div class="percentgraph"><div class="na" style="width:100px"><span class="text"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></span></div></div></td></tr></table></td><td class="value"><span class="hidden">1.0;</span>1</td></tr> - <tr><td><a href="org.owasp.dependencycheck.utils.Downloader.html">Downloader</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">8%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:8px"><span class="text">7/83</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">4%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:4px"><span class="text">1/24</span></div></div></td></tr></table></td><td class="value"><span class="hidden">7.0;</span>7</td></tr> + <tr><td><a href="org.owasp.dependencycheck.utils.Downloader.html">Downloader</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">7%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:7px"><span class="text">7/88</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">3%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:3px"><span class="text">1/28</span></div></div></td></tr></table></td><td class="value"><span class="hidden">6.6;</span>6.6</td></tr> + <tr><td><a href="org.owasp.dependencycheck.utils.Downloader.html">Downloader$1</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/4</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">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/2</span></div></div></td></tr></table></td><td class="value"><span class="hidden">6.6;</span>6.6</td></tr> <tr><td><a href="org.owasp.dependencycheck.utils.ExtractionException.html">ExtractionException</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/8</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"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></td><td class="percentgraph"><div class="percentgraph"><div class="na" style="width:100px"><span class="text"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></span></div></div></td></tr></table></td><td class="value"><span class="hidden">1.0;</span>1</td></tr> @@ -50,7 +51,7 @@ packageTable.sort(0); <tr><td><a href="org.owasp.dependencycheck.utils.LogFilter.html">LogFilter</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/3</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">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/6</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.0;</span>3</td></tr> - <tr><td><a href="org.owasp.dependencycheck.utils.LogUtils.html">LogUtils</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/22</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">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/6</span></div></div></td></tr></table></td><td class="value"><span class="hidden">4.0;</span>4</td></tr> + <tr><td><a href="org.owasp.dependencycheck.utils.LogUtils.html">LogUtils</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">8%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:8px"><span class="text">2/25</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">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/6</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.0;</span>3</td></tr> <tr><td><a href="org.owasp.dependencycheck.utils.NonClosingStream.html">NonClosingStream</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">100%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:100px"><span class="text">3/3</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"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></td><td class="percentgraph"><div class="percentgraph"><div class="na" style="width:100px"><span class="text"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></span></div></div></td></tr></table></td><td class="value"><span class="hidden">1.0;</span>1</td></tr> @@ -66,6 +67,6 @@ var classTable = new SortableTable(document.getElementById("classResults"), ["String", "Percentage", "Percentage", "FormattedNumber"]); classTable.sort(0); </script> -<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/frame-summary.html b/dependency-check-core/cobertura/frame-summary.html index 4d91cc7d6..bf7f8a67a 100644 --- a/dependency-check-core/cobertura/frame-summary.html +++ b/dependency-check-core/cobertura/frame-summary.html @@ -16,21 +16,21 @@ <table class="report" id="packageResults"> <thead><tr> <td class="heading">Package</td> <td class="heading"># Classes</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> <tbody> - <tr><td><b>All Packages</b></td><td class="value">181</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">2350/4746</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">48%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:48px"><span class="text">957/1959</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.151436031331593;</span>2.151</td></tr> - <tr><td><a href="frame-summary-org.owasp.dependencycheck.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.html"'>org.owasp.dependencycheck</a></td><td class="value">1</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">62%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:62px"><span class="text">87/140</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">71%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:71px"><span class="text">46/64</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.411764705882353;</span>3.412</td></tr> - <tr><td><a href="frame-summary-org.owasp.dependencycheck.analyzer.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.analyzer.html"'>org.owasp.dependencycheck.analyzer</a></td><td class="value">17</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">72%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:72px"><span class="text">795/1092</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">58%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:58px"><span class="text">390/664</span></div></div></td></tr></table></td><td class="value"><span class="hidden">4.059701492537314;</span>4.06</td></tr> + <tr><td><b>All Packages</b></td><td class="value">184</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">2416/4870</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">1008/2027</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.176975945017182;</span>2.177</td></tr> + <tr><td><a href="frame-summary-org.owasp.dependencycheck.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.html"'>org.owasp.dependencycheck</a></td><td class="value">1</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">60%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:60px"><span class="text">98/162</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">70%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:70px"><span class="text">49/70</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.7222222222222223;</span>3.722</td></tr> + <tr><td><a href="frame-summary-org.owasp.dependencycheck.analyzer.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.analyzer.html"'>org.owasp.dependencycheck.analyzer</a></td><td class="value">18</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">72%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:72px"><span class="text">845/1171</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">60%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:60px"><span class="text">433/718</span></div></div></td></tr></table></td><td class="value"><span class="hidden">4.141843971631205;</span>4.142</td></tr> <tr><td><a href="frame-summary-org.owasp.dependencycheck.concurrency.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.concurrency.html"'>org.owasp.dependencycheck.concurrency</a></td><td class="value">3</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">56%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:56px"><span class="text">53/94</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">66%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:66px"><span class="text">16/24</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.611111111111111;</span>2.611</td></tr> - <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.html"'>org.owasp.dependencycheck.data</a></td><td class="value">3</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/15</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">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/2</span></div></div></td></tr></table></td><td class="value"><span class="hidden">1.125;</span>1.125</td></tr> - <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.cpe.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.cpe.html"'>org.owasp.dependencycheck.data.cpe</a></td><td class="value">5</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">58%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:58px"><span class="text">94/160</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">34%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:34px"><span class="text">20/58</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.3;</span>2.3</td></tr> + <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.html"'>org.owasp.dependencycheck.data</a></td><td class="value">4</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/23</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">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/2</span></div></div></td></tr></table></td><td class="value"><span class="hidden">1.0833333333333333;</span>1.083</td></tr> + <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.cpe.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.cpe.html"'>org.owasp.dependencycheck.data.cpe</a></td><td class="value">5</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">58%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:58px"><span class="text">96/163</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">35%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:35px"><span class="text">21/60</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.3225806451612905;</span>2.323</td></tr> <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.cwe.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.cwe.html"'>org.owasp.dependencycheck.data.cwe</a></td><td class="value">2</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">35%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:35px"><span class="text">11/31</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">25%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:25px"><span class="text">2/8</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.8;</span>2.8</td></tr> <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.lucene.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.lucene.html"'>org.owasp.dependencycheck.data.lucene</a></td><td class="value">11</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">67%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:67px"><span class="text">96/143</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">52%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:52px"><span class="text">35/67</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.5;</span>2.5</td></tr> - <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.nvdcve.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.nvdcve.html"'>org.owasp.dependencycheck.data.nvdcve</a></td><td class="value">8</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">59%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:59px"><span class="text">319/534</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">73%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:73px"><span class="text">154/210</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.305084745762712;</span>3.305</td></tr> + <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.nvdcve.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.nvdcve.html"'>org.owasp.dependencycheck.data.nvdcve</a></td><td class="value">8</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">59%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:59px"><span class="text">320/534</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">75%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:75px"><span class="text">158/210</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.305084745762712;</span>3.305</td></tr> <tr><td><a href="frame-summary-org.owasp.dependencycheck.data.update.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.data.update.html"'>org.owasp.dependencycheck.data.update</a></td><td class="value">9</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">33%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:33px"><span class="text">159/473</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">21%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:21px"><span class="text">32/152</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.2857142857142856;</span>3.286</td></tr> <tr><td><a href="frame-summary-org.owasp.dependencycheck.dependency.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.dependency.html"'>org.owasp.dependencycheck.dependency</a></td><td class="value">14</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">62%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:62px"><span class="text">333/529</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">35%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:35px"><span class="text">135/376</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.4387096774193546;</span>2.439</td></tr> <tr><td><a href="frame-summary-org.owasp.dependencycheck.jaxb.pom.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.jaxb.pom.html"'>org.owasp.dependencycheck.jaxb.pom</a></td><td class="value">1</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">100%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:100px"><span class="text">13/13</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">50%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:50px"><span class="text">1/2</span></div></div></td></tr></table></td><td class="value"><span class="hidden">1.25;</span>1.25</td></tr> <tr><td><a href="frame-summary-org.owasp.dependencycheck.jaxb.pom.generated.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.jaxb.pom.generated.html"'>org.owasp.dependencycheck.jaxb.pom.generated</a></td><td class="value">87</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">7%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:7px"><span class="text">74/945</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">1%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:1px"><span class="text">1/98</span></div></div></td></tr></table></td><td class="value"><span class="hidden">1.0907407407407408;</span>1.091</td></tr> <tr><td><a href="frame-summary-org.owasp.dependencycheck.reporting.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.reporting.html"'>org.owasp.dependencycheck.reporting</a></td><td class="value">3</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">52%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:52px"><span class="text">53/101</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">18%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:18px"><span class="text">8/44</span></div></div></td></tr></table></td><td class="value"><span class="hidden">4.2727272727272725;</span>4.273</td></tr> - <tr><td><a href="frame-summary-org.owasp.dependencycheck.utils.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.utils.html"'>org.owasp.dependencycheck.utils</a></td><td class="value">17</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">55%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:55px"><span class="text">263/476</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">61%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:61px"><span class="text">117/190</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.1333333333333333;</span>3.133</td></tr> + <tr><td><a href="frame-summary-org.owasp.dependencycheck.utils.html" onclick='parent.sourceFileList.location.href="frame-sourcefiles-org.owasp.dependencycheck.utils.html"'>org.owasp.dependencycheck.utils</a></td><td class="value">18</td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">54%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:54px"><span class="text">265/488</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">59%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:59px"><span class="text">117/196</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.1298701298701297;</span>3.13</td></tr> </tbody> </table> <script type="text/javascript"> @@ -38,6 +38,6 @@ var packageTable = new SortableTable(document.getElementById("packageResults"), ["String", "Number", "Percentage", "Percentage", "FormattedNumber"]); packageTable.sort(0); </script> -<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.Engine.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.Engine.html index da6621010..dc39852a4 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.Engine.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.Engine.html @@ -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.Engine.html">Engine</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">62%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:62px"><span class="text">87/140</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">71%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:71px"><span class="text">46/64</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.411764705882353;</span>3.412</td></tr> + <tr><td><a href="org.owasp.dependencycheck.Engine.html">Engine</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">60%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:60px"><span class="text">98/162</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">70%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:70px"><span class="text">49/70</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.7222222222222223;</span>3.722</td></tr> </table> <div class="separator"> </div> @@ -62,621 +62,691 @@ <tr> <td class="numLine"> 22</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="keyword">import</span> java.io.File;</pre></td></tr> <tr> <td class="numLine"> 23</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.ArrayList;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.io.IOException;</pre></td></tr> <tr> <td class="numLine"> 24</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.HashSet;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.ArrayList;</pre></td></tr> <tr> <td class="numLine"> 25</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.Iterator;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.HashSet;</pre></td></tr> <tr> <td class="numLine"> 26</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.List;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.Iterator;</pre></td></tr> <tr> <td class="numLine"> 27</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.Set;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.List;</pre></td></tr> <tr> <td class="numLine"> 28</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.logging.Level;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.Set;</pre></td></tr> <tr> <td class="numLine"> 29</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.logging.Logger;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.logging.Level;</pre></td></tr> <tr> <td class="numLine"> 30</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.analyzer.AnalysisException;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.logging.Logger;</pre></td></tr> <tr> <td class="numLine"> 31</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.analyzer.AnalysisPhase;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.analyzer.AnalysisException;</pre></td></tr> <tr> <td class="numLine"> 32</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.analyzer.Analyzer;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.analyzer.AnalysisPhase;</pre></td></tr> <tr> <td class="numLine"> 33</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.analyzer.AnalyzerService;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.analyzer.Analyzer;</pre></td></tr> <tr> <td class="numLine"> 34</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.data.CachedWebDataSource;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.analyzer.AnalyzerService;</pre></td></tr> <tr> <td class="numLine"> 35</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.data.UpdateException;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.data.CachedWebDataSource;</pre></td></tr> <tr> <td class="numLine"> 36</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.data.UpdateService;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.data.NoDataException;</pre></td></tr> <tr> <td class="numLine"> 37</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.dependency.Dependency;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.data.UpdateException;</pre></td></tr> <tr> <td class="numLine"> 38</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.utils.FileUtils;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.data.UpdateService;</pre></td></tr> <tr> <td class="numLine"> 39</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.utils.InvalidSettingException;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.data.cpe.CpeIndexReader;</pre></td></tr> <tr> <td class="numLine"> 40</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.utils.Settings;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.dependency.Dependency;</pre></td></tr> <tr> <td class="numLine"> 41</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.utils.FileUtils;</pre></td></tr> <tr> <td class="numLine"> 42</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.utils.InvalidSettingException;</pre></td></tr> <tr> <td class="numLine"> 43</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Scans files, directories, etc. for Dependencies. Analyzers are loaded and</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.utils.Settings;</pre></td></tr> <tr> <td class="numLine"> 44</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * used to process the files found by the scan, if a file is encountered and an</span></pre></td></tr> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 45</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Analyzer is associated with the file type then the file is turned into a</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 46</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * dependency.</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * Scans files, directories, etc. for Dependencies. Analyzers are loaded and</span></pre></td></tr> <tr> <td class="numLine"> 47</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * used to process the files found by the scan, if a file is encountered and an</span></pre></td></tr> <tr> <td class="numLine"> 48</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @author Jeremy Long (jeremy.long@owasp.org)</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * Analyzer is associated with the file type then the file is turned into a</span></pre></td></tr> <tr> <td class="numLine"> 49</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * dependency.</span></pre></td></tr> <tr> <td class="numLine"> 50</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> Engine {</pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> <tr> <td class="numLine"> 51</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * @author Jeremy Long (jeremy.long@owasp.org)</span></pre></td></tr> <tr> <td class="numLine"> 52</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 53</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * The list of dependencies.</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> Engine {</pre></td></tr> <tr> <td class="numLine"> 54</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 55</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">final</span> List<Dependency> dependencies = <span class="keyword">new</span> ArrayList<Dependency>();</pre></td></tr> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 55</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 56</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * The list of dependencies.</span></pre></td></tr> <tr> <td class="numLine"> 57</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * A Map of analyzers grouped by Analysis phase.</span></pre></td></tr> -<tr> <td class="numLine"> 58</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 59</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">final</span> EnumMap<AnalysisPhase, List<Analyzer>> analyzers =</pre></td></tr> +<tr> <td class="numLineCover"> 58</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">final</span> List<Dependency> dependencies = <span class="keyword">new</span> ArrayList<Dependency>();</pre></td></tr> +<tr> <td class="numLine"> 59</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 60</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">new</span> EnumMap<AnalysisPhase, List<Analyzer>>(AnalysisPhase.<span class="keyword">class</span>);</pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * A Map of analyzers grouped by Analysis phase.</span></pre></td></tr> <tr> <td class="numLine"> 61</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 62</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * A set of extensions supported by the analyzers.</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLineCover"> 62</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">final</span> EnumMap<AnalysisPhase, List<Analyzer>> analyzers =</pre></td></tr> <tr> <td class="numLine"> 63</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 64</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">final</span> Set<String> extensions = <span class="keyword">new</span> HashSet<String>();</pre></td></tr> + <td class="src"><pre class="src">  <span class="keyword">new</span> EnumMap<AnalysisPhase, List<Analyzer>>(AnalysisPhase.<span class="keyword">class</span>);</pre></td></tr> +<tr> <td class="numLine"> 64</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 65</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * A set of extensions supported by the analyzers.</span></pre></td></tr> <tr> <td class="numLine"> 66</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 67</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Creates a new Engine.</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLineCover"> 67</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">final</span> Set<String> extensions = <span class="keyword">new</span> HashSet<String>();</pre></td></tr> <tr> <td class="numLine"> 68</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 69</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">public</span> Engine() {</pre></td></tr> -<tr> <td class="numLineCover"> 70</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">boolean</span> autoUpdate = <span class="keyword">true</span>;</pre></td></tr> -<tr> <td class="numLine"> 71</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 72</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  autoUpdate = Settings.getBoolean(Settings.KEYS.AUTO_UPDATE);</pre></td></tr> -<tr> <td class="numLineCover"> 73</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (InvalidSettingException ex) {</span></pre></td></tr> -<tr> <td class="numLineCover"> 74</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="string">"Invalid setting for auto-update; using true."</span>);</span></pre></td></tr> -<tr> <td class="numLineCover"> 75</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 76</td> <td class="nbHitsUncovered"><a title="Line 76: Conditional coverage 50% (1/2)."> 3</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 76: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (autoUpdate) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 77</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  doUpdates();</span></pre></td></tr> -<tr> <td class="numLine"> 78</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 79</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  loadAnalyzers();</pre></td></tr> -<tr> <td class="numLineCover"> 80</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 81</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 82</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 69</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 83</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 70</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * Creates a new Engine.</span></pre></td></tr> +<tr> <td class="numLine"> 71</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLineCover"> 72</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  <span class="keyword">public</span> Engine() {</pre></td></tr> +<tr> <td class="numLineCover"> 73</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  <span class="keyword">boolean</span> autoUpdate = <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLine"> 74</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 75</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  autoUpdate = Settings.getBoolean(Settings.KEYS.AUTO_UPDATE);</pre></td></tr> +<tr> <td class="numLineCover"> 76</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (InvalidSettingException ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 77</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="string">"Invalid setting for auto-update; using true."</span>);</span></pre></td></tr> +<tr> <td class="numLineCover"> 78</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 79</td> <td class="nbHitsUncovered"><a title="Line 79: Conditional coverage 50% (1/2)."> 6</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 79: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (autoUpdate) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 80</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  doUpdates();</span></pre></td></tr> +<tr> <td class="numLine"> 81</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 82</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  loadAnalyzers();</pre></td></tr> +<tr> <td class="numLineCover"> 83</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 84</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 85</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param autoUpdate indicates whether or not data should be updated from</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 86</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * the Internet</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * Creates a new Engine.</span></pre></td></tr> <tr> <td class="numLine"> 87</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @deprecated This function should no longer be used; the autoupdate flag</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> <tr> <td class="numLine"> 88</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * should be set using:</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * @param autoUpdate indicates whether or not data should be updated from</span></pre></td></tr> <tr> <td class="numLine"> 89</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * <code>Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, value);</code></span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * the Internet</span></pre></td></tr> <tr> <td class="numLine"> 90</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * @deprecated This function should no longer be used; the autoupdate flag</span></pre></td></tr> <tr> <td class="numLine"> 91</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * should be set using:</span></pre></td></tr> +<tr> <td class="numLine"> 92</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * <code>Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, value);</code></span></pre></td></tr> +<tr> <td class="numLine"> 93</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 94</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  @Deprecated</pre></td></tr> -<tr> <td class="numLineCover"> 92</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">public</span> Engine(<span class="keyword">boolean</span> autoUpdate) {</span></pre></td></tr> -<tr> <td class="numLineCover"> 93</td> <td class="nbHitsUncovered"><a title="Line 93: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 93: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (autoUpdate) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 94</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  doUpdates();</span></pre></td></tr> -<tr> <td class="numLine"> 95</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 96</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  loadAnalyzers();</span></pre></td></tr> -<tr> <td class="numLineCover"> 97</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLineCover"> 95</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">public</span> Engine(<span class="keyword">boolean</span> autoUpdate) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 96</td> <td class="nbHitsUncovered"><a title="Line 96: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 96: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (autoUpdate) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 97</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  doUpdates();</span></pre></td></tr> <tr> <td class="numLine"> 98</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 99</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 100</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Loads the analyzers specified in the configuration file (or system</span></pre></td></tr> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 99</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  loadAnalyzers();</span></pre></td></tr> +<tr> <td class="numLineCover"> 100</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> <tr> <td class="numLine"> 101</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * properties).</span></pre></td></tr> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 102</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 103</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> loadAnalyzers() {</pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * Loads the analyzers specified in the configuration file (or system</span></pre></td></tr> <tr> <td class="numLine"> 104</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 105</td> <td class="nbHitsCovered"><a title="Line 105: Conditional coverage 100% (2/2)."> 30</a></td> <td class="src"><pre class="src"> <a title="Line 105: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (AnalysisPhase phase : AnalysisPhase.values()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 106</td> <td class="nbHitsCovered"> 27</td> <td class="src"><pre class="src">  analyzers.put(phase, <span class="keyword">new</span> ArrayList<Analyzer>());</pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * properties).</span></pre></td></tr> +<tr> <td class="numLine"> 105</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 106</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> loadAnalyzers() {</pre></td></tr> <tr> <td class="numLine"> 107</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 108</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 109</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">final</span> AnalyzerService service = AnalyzerService.getInstance();</pre></td></tr> -<tr> <td class="numLineCover"> 110</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Iterator<Analyzer> iterator = service.getAnalyzers();</pre></td></tr> -<tr> <td class="numLineCover"> 111</td> <td class="nbHitsCovered"><a title="Line 111: Conditional coverage 100% (2/2)."> 27</a></td> <td class="src"><pre class="src"> <a title="Line 111: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (iterator.hasNext()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 112</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Analyzer a = iterator.next();</pre></td></tr> -<tr> <td class="numLineCover"> 113</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  analyzers.get(a.getAnalysisPhase()).add(a);</pre></td></tr> -<tr> <td class="numLineCover"> 114</td> <td class="nbHitsCovered"><a title="Line 114: Conditional coverage 100% (2/2)."> 24</a></td> <td class="src"><pre class="src"> <a title="Line 114: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (a.getSupportedExtensions() != <span class="keyword">null</span>) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 115</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  extensions.addAll(a.getSupportedExtensions());</pre></td></tr> -<tr> <td class="numLine"> 116</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 117</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 118</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 108</td> <td class="nbHitsCovered"><a title="Line 108: Conditional coverage 100% (2/2)."> 60</a></td> <td class="src"><pre class="src"> <a title="Line 108: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (AnalysisPhase phase : AnalysisPhase.values()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 109</td> <td class="nbHitsCovered"> 54</td> <td class="src"><pre class="src">  analyzers.put(phase, <span class="keyword">new</span> ArrayList<Analyzer>());</pre></td></tr> +<tr> <td class="numLine"> 110</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 111</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLineCover"> 112</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  <span class="keyword">final</span> AnalyzerService service = AnalyzerService.getInstance();</pre></td></tr> +<tr> <td class="numLineCover"> 113</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Iterator<Analyzer> iterator = service.getAnalyzers();</pre></td></tr> +<tr> <td class="numLineCover"> 114</td> <td class="nbHitsCovered"><a title="Line 114: Conditional coverage 100% (2/2)."> 54</a></td> <td class="src"><pre class="src"> <a title="Line 114: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (iterator.hasNext()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 115</td> <td class="nbHitsCovered"> 48</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Analyzer a = iterator.next();</pre></td></tr> +<tr> <td class="numLineCover"> 116</td> <td class="nbHitsCovered"> 48</td> <td class="src"><pre class="src">  analyzers.get(a.getAnalysisPhase()).add(a);</pre></td></tr> +<tr> <td class="numLineCover"> 117</td> <td class="nbHitsCovered"><a title="Line 117: Conditional coverage 100% (2/2)."> 48</a></td> <td class="src"><pre class="src"> <a title="Line 117: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (a.getSupportedExtensions() != <span class="keyword">null</span>) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 118</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  extensions.addAll(a.getSupportedExtensions());</pre></td></tr> <tr> <td class="numLine"> 119</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 120</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 121</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Get the List of the analyzers for a specific phase of analysis.</span></pre></td></tr> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 120</td> <td class="nbHitsCovered"> 48</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 121</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 122</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 123</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param phase the phase to get the configured analyzers.</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 124</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @return the analyzers loaded</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * Get the List of the analyzers for a specific phase of analysis.</span></pre></td></tr> <tr> <td class="numLine"> 125</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> <tr> <td class="numLine"> 126</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> List<Analyzer> getAnalyzers(AnalysisPhase phase) {</pre></td></tr> -<tr> <td class="numLineCover"> 127</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> analyzers.get(phase);</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * @param phase the phase to get the configured analyzers.</span></pre></td></tr> +<tr> <td class="numLine"> 127</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @return the analyzers loaded</span></pre></td></tr> <tr> <td class="numLine"> 128</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 129</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 130</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="keyword">public</span> List<Analyzer> getAnalyzers(AnalysisPhase phase) {</pre></td></tr> +<tr> <td class="numLineCover"> 130</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> analyzers.get(phase);</span></pre></td></tr> <tr> <td class="numLine"> 131</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Get the dependencies identified.</span></pre></td></tr> + <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 132</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 133</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @return the dependencies identified</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 134</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * Get the dependencies identified.</span></pre></td></tr> <tr> <td class="numLine"> 135</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> List<Dependency> getDependencies() {</pre></td></tr> -<tr> <td class="numLineCover"> 136</td> <td class="nbHitsCovered"> 17</td> <td class="src"><pre class="src">  <span class="keyword">return</span> dependencies;</pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 136</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @return the dependencies identified</span></pre></td></tr> <tr> <td class="numLine"> 137</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 138</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 139</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="keyword">public</span> List<Dependency> getDependencies() {</pre></td></tr> +<tr> <td class="numLineCover"> 139</td> <td class="nbHitsCovered"> 38</td> <td class="src"><pre class="src">  <span class="keyword">return</span> dependencies;</pre></td></tr> <tr> <td class="numLine"> 140</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Scans an array of files or directories. If a directory is specified, it</span></pre></td></tr> + <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 141</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * will be scanned recursively. Any dependencies identified are added to the</span></pre></td></tr> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 142</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * dependency collection.</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 143</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 144</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @since v0.3.2.5</span></pre></td></tr> -<tr> <td class="numLine"> 145</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 146</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param paths an array of paths to files or directories to be analyzed.</span></pre></td></tr> -<tr> <td class="numLine"> 147</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 148</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> scan(String[] paths) {</pre></td></tr> -<tr> <td class="numLineCover"> 149</td> <td class="nbHitsUncovered"><a title="Line 149: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 149: Conditional coverage 0% (0/2)."> <span class="keyword">for</span> (String path : paths) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 150</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> File file = <span class="keyword">new</span> File(path);</span></pre></td></tr> -<tr> <td class="numLineCover"> 151</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  scan(file);</span></pre></td></tr> -<tr> <td class="numLine"> 152</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 153</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> -<tr> <td class="numLine"> 154</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 155</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 156</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Scans a given file or directory. If a directory is specified, it will be</span></pre></td></tr> -<tr> <td class="numLine"> 157</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * scanned recursively. Any dependencies identified are added to the</span></pre></td></tr> -<tr> <td class="numLine"> 158</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * dependency collection.</span></pre></td></tr> -<tr> <td class="numLine"> 159</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 160</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param path the path to a file or directory to be analyzed.</span></pre></td></tr> -<tr> <td class="numLine"> 161</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 162</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> scan(String path) {</pre></td></tr> -<tr> <td class="numLineCover"> 163</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> File file = <span class="keyword">new</span> File(path);</span></pre></td></tr> -<tr> <td class="numLineCover"> 164</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  scan(file);</span></pre></td></tr> -<tr> <td class="numLineCover"> 165</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> -<tr> <td class="numLine"> 166</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 167</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 168</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * Scans an array of files or directories. If a directory is specified, it</span></pre></td></tr> -<tr> <td class="numLine"> 169</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 144</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * will be scanned recursively. Any dependencies identified are added to the</span></pre></td></tr> -<tr> <td class="numLine"> 170</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 145</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * dependency collection.</span></pre></td></tr> -<tr> <td class="numLine"> 171</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 146</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 172</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 147</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * @since v0.3.2.5</span></pre></td></tr> -<tr> <td class="numLine"> 173</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 148</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 174</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param files an array of paths to files or directories to be analyzed.</span></pre></td></tr> -<tr> <td class="numLine"> 175</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 149</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param paths an array of paths to files or directories to be analyzed.</span></pre></td></tr> +<tr> <td class="numLine"> 150</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 176</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> scan(File[] files) {</pre></td></tr> -<tr> <td class="numLineCover"> 177</td> <td class="nbHitsUncovered"><a title="Line 177: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 177: Conditional coverage 0% (0/2)."> <span class="keyword">for</span> (File file : files) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 178</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  scan(file);</span></pre></td></tr> -<tr> <td class="numLine"> 179</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 151</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> scan(String[] paths) {</pre></td></tr> +<tr> <td class="numLineCover"> 152</td> <td class="nbHitsUncovered"><a title="Line 152: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 152: Conditional coverage 0% (0/2)."> <span class="keyword">for</span> (String path : paths) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 153</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> File file = <span class="keyword">new</span> File(path);</span></pre></td></tr> +<tr> <td class="numLineCover"> 154</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  scan(file);</span></pre></td></tr> +<tr> <td class="numLine"> 155</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 180</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> -<tr> <td class="numLine"> 181</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 156</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLine"> 157</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 182</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 158</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 183</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Scans a list of files or directories. If a directory is specified, it</span></pre></td></tr> -<tr> <td class="numLine"> 184</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * will be scanned recursively. Any dependencies identified are added to the</span></pre></td></tr> -<tr> <td class="numLine"> 185</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * dependency collection.</span></pre></td></tr> -<tr> <td class="numLine"> 186</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 187</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @since v0.3.2.5</span></pre></td></tr> -<tr> <td class="numLine"> 188</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 189</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param files a set of paths to files or directories to be analyzed.</span></pre></td></tr> -<tr> <td class="numLine"> 190</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 191</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> scan(Set<File> files) {</pre></td></tr> -<tr> <td class="numLineCover"> 192</td> <td class="nbHitsUncovered"><a title="Line 192: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 192: Conditional coverage 0% (0/2)."> <span class="keyword">for</span> (File file : files) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 193</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  scan(file);</span></pre></td></tr> -<tr> <td class="numLine"> 194</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 195</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> -<tr> <td class="numLine"> 196</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 197</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 198</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Scans a list of files or directories. If a directory is specified, it</span></pre></td></tr> -<tr> <td class="numLine"> 199</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * will be scanned recursively. Any dependencies identified are added to the</span></pre></td></tr> -<tr> <td class="numLine"> 200</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * dependency collection.</span></pre></td></tr> -<tr> <td class="numLine"> 201</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 202</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @since v0.3.2.5</span></pre></td></tr> -<tr> <td class="numLine"> 203</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 204</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param files a set of paths to files or directories to be analyzed.</span></pre></td></tr> -<tr> <td class="numLine"> 205</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 206</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> scan(List<File> files) {</pre></td></tr> -<tr> <td class="numLineCover"> 207</td> <td class="nbHitsUncovered"><a title="Line 207: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 207: Conditional coverage 0% (0/2)."> <span class="keyword">for</span> (File file : files) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 208</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  scan(file);</span></pre></td></tr> -<tr> <td class="numLine"> 209</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 210</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> -<tr> <td class="numLine"> 211</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 212</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 213</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 159</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * Scans a given file or directory. If a directory is specified, it will be</span></pre></td></tr> -<tr> <td class="numLine"> 214</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 160</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * scanned recursively. Any dependencies identified are added to the</span></pre></td></tr> +<tr> <td class="numLine"> 161</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * dependency collection.</span></pre></td></tr> +<tr> <td class="numLine"> 162</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 163</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param path the path to a file or directory to be analyzed.</span></pre></td></tr> +<tr> <td class="numLine"> 164</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 165</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> scan(String path) {</pre></td></tr> +<tr> <td class="numLineCover"> 166</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> File file = <span class="keyword">new</span> File(path);</span></pre></td></tr> +<tr> <td class="numLineCover"> 167</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  scan(file);</span></pre></td></tr> +<tr> <td class="numLineCover"> 168</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLine"> 169</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 170</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 171</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Scans an array of files or directories. If a directory is specified, it</span></pre></td></tr> +<tr> <td class="numLine"> 172</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * will be scanned recursively. Any dependencies identified are added to the</span></pre></td></tr> +<tr> <td class="numLine"> 173</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * dependency collection.</span></pre></td></tr> +<tr> <td class="numLine"> 174</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 175</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @since v0.3.2.5</span></pre></td></tr> +<tr> <td class="numLine"> 176</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 177</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param files an array of paths to files or directories to be analyzed.</span></pre></td></tr> +<tr> <td class="numLine"> 178</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 179</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> scan(File[] files) {</pre></td></tr> +<tr> <td class="numLineCover"> 180</td> <td class="nbHitsUncovered"><a title="Line 180: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 180: Conditional coverage 0% (0/2)."> <span class="keyword">for</span> (File file : files) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 181</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  scan(file);</span></pre></td></tr> +<tr> <td class="numLine"> 182</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 183</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLine"> 184</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 185</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 186</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Scans a list of files or directories. If a directory is specified, it</span></pre></td></tr> +<tr> <td class="numLine"> 187</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * will be scanned recursively. Any dependencies identified are added to the</span></pre></td></tr> +<tr> <td class="numLine"> 188</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * dependency collection.</span></pre></td></tr> +<tr> <td class="numLine"> 189</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 190</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @since v0.3.2.5</span></pre></td></tr> +<tr> <td class="numLine"> 191</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 192</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param files a set of paths to files or directories to be analyzed.</span></pre></td></tr> +<tr> <td class="numLine"> 193</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 194</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> scan(Set<File> files) {</pre></td></tr> +<tr> <td class="numLineCover"> 195</td> <td class="nbHitsUncovered"><a title="Line 195: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 195: Conditional coverage 0% (0/2)."> <span class="keyword">for</span> (File file : files) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 196</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  scan(file);</span></pre></td></tr> +<tr> <td class="numLine"> 197</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 198</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLine"> 199</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 200</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 201</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Scans a list of files or directories. If a directory is specified, it</span></pre></td></tr> +<tr> <td class="numLine"> 202</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * will be scanned recursively. Any dependencies identified are added to the</span></pre></td></tr> +<tr> <td class="numLine"> 203</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * dependency collection.</span></pre></td></tr> +<tr> <td class="numLine"> 204</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 205</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @since v0.3.2.5</span></pre></td></tr> +<tr> <td class="numLine"> 206</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 207</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param files a set of paths to files or directories to be analyzed.</span></pre></td></tr> +<tr> <td class="numLine"> 208</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 209</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> scan(List<File> files) {</pre></td></tr> +<tr> <td class="numLineCover"> 210</td> <td class="nbHitsUncovered"><a title="Line 210: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 210: Conditional coverage 0% (0/2)."> <span class="keyword">for</span> (File file : files) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 211</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  scan(file);</span></pre></td></tr> +<tr> <td class="numLine"> 212</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 213</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLine"> 214</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 215</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * dependency collection.</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 216</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * Scans a given file or directory. If a directory is specified, it will be</span></pre></td></tr> <tr> <td class="numLine"> 217</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @since v0.3.2.4</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * scanned recursively. Any dependencies identified are added to the</span></pre></td></tr> <tr> <td class="numLine"> 218</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 219</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param file the path to a file or directory to be analyzed.</span></pre></td></tr> -<tr> <td class="numLine"> 220</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 221</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> scan(File file) {</pre></td></tr> -<tr> <td class="numLineCover"> 222</td> <td class="nbHitsUncovered"><a title="Line 222: Conditional coverage 50% (1/2)."> 6</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 222: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (file.exists()) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 223</td> <td class="nbHitsCovered"><a title="Line 223: Conditional coverage 100% (2/2)."> 6</a></td> <td class="src"><pre class="src"> <a title="Line 223: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (file.isDirectory()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 224</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  scanDirectory(file);</pre></td></tr> -<tr> <td class="numLine"> 225</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 226</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  scanFile(file);</pre></td></tr> -<tr> <td class="numLine"> 227</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 228</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 229</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 230</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 231</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 232</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Recursively scans files and directories. Any dependencies identified are</span></pre></td></tr> -<tr> <td class="numLine"> 233</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * added to the dependency collection.</span></pre></td></tr> -<tr> <td class="numLine"> 234</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 235</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param dir the directory to scan.</span></pre></td></tr> -<tr> <td class="numLine"> 236</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 237</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">protected</span> <span class="keyword">void</span> scanDirectory(File dir) {</pre></td></tr> -<tr> <td class="numLineCover"> 238</td> <td class="nbHitsCovered"> 28</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File[] files = dir.listFiles();</pre></td></tr> -<tr> <td class="numLineCover"> 239</td> <td class="nbHitsUncovered"><a title="Line 239: Conditional coverage 50% (1/2)."> 28</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 239: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (files != <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 240</td> <td class="nbHitsCovered"><a title="Line 240: Conditional coverage 100% (2/2)."> 58</a></td> <td class="src"><pre class="src"> <a title="Line 240: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (File f : files) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 241</td> <td class="nbHitsCovered"><a title="Line 241: Conditional coverage 100% (2/2)."> 30</a></td> <td class="src"><pre class="src"> <a title="Line 241: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (f.isDirectory()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 242</td> <td class="nbHitsCovered"> 25</td> <td class="src"><pre class="src">  scanDirectory(f);</pre></td></tr> -<tr> <td class="numLine"> 243</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 244</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  scanFile(f);</pre></td></tr> -<tr> <td class="numLine"> 245</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 246</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 247</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 248</td> <td class="nbHitsCovered"> 28</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 249</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 250</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 251</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Scans a specified file. If a dependency is identified it is added to the</span></pre></td></tr> -<tr> <td class="numLine"> 252</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * dependency collection.</span></pre></td></tr> -<tr> <td class="numLine"> 253</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 219</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 254</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param file The file to scan.</span></pre></td></tr> -<tr> <td class="numLine"> 255</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 220</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @since v0.3.2.4</span></pre></td></tr> +<tr> <td class="numLine"> 221</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 222</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param file the path to a file or directory to be analyzed.</span></pre></td></tr> +<tr> <td class="numLine"> 223</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 256</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">protected</span> <span class="keyword">void</span> scanFile(File file) {</pre></td></tr> -<tr> <td class="numLineCover"> 257</td> <td class="nbHitsUncovered"><a title="Line 257: Conditional coverage 50% (1/2)."> 8</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 257: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!file.isFile()) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 258</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">"Path passed to scanFile(File) is not a file: %s. Skipping the file."</span>, file.toString());</span></pre></td></tr> -<tr> <td class="numLineCover"> 259</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.FINE, msg);</span></pre></td></tr> -<tr> <td class="numLineCover"> 260</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"> 261</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 262</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String fileName = file.getName();</pre></td></tr> -<tr> <td class="numLineCover"> 263</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String extension = FileUtils.getFileExtension(fileName);</pre></td></tr> -<tr> <td class="numLineCover"> 264</td> <td class="nbHitsUncovered"><a title="Line 264: Conditional coverage 50% (1/2)."> 8</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 264: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (extension != <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 265</td> <td class="nbHitsUncovered"><a title="Line 265: Conditional coverage 50% (1/2)."> 8</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 265: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (extensions.contains(extension)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 266</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Dependency dependency = <span class="keyword">new</span> Dependency(file);</pre></td></tr> -<tr> <td class="numLineCover"> 267</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  dependencies.add(dependency);</pre></td></tr> -<tr> <td class="numLineCover"> 268</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 269</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 270</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">"No file extension found on file '%s'. The file was not analyzed."</span>,</span></pre></td></tr> -<tr> <td class="numLine"> 271</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  file.toString());</pre></td></tr> -<tr> <td class="numLineCover"> 272</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.FINEST, msg);</span></pre></td></tr> -<tr> <td class="numLine"> 273</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 274</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 275</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 276</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 277</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Runs the analyzers against all of the dependencies.</span></pre></td></tr> -<tr> <td class="numLine"> 278</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 279</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> analyzeDependencies() {</pre></td></tr> -<tr> <td class="numLine"> 280</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">//phase one initialize</span></pre></td></tr> -<tr> <td class="numLineCover"> 281</td> <td class="nbHitsCovered"><a title="Line 281: Conditional coverage 100% (2/2)."> 10</a></td> <td class="src"><pre class="src"> <a title="Line 281: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (AnalysisPhase phase : AnalysisPhase.values()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 282</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<Analyzer> analyzerList = analyzers.get(phase);</pre></td></tr> -<tr> <td class="numLineCover"> 283</td> <td class="nbHitsCovered"><a title="Line 283: Conditional coverage 100% (2/2)."> 9</a></td> <td class="src"><pre class="src"> <a title="Line 283: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Analyzer a : analyzerList) {</a></pre></td></tr> -<tr> <td class="numLine"> 284</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 285</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String msg = String.format(<span class="string">"Initializing %s"</span>, a.getName());</pre></td></tr> -<tr> <td class="numLineCover"> 286</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.FINE, msg);</pre></td></tr> -<tr> <td class="numLineCover"> 287</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  a.initialize();</pre></td></tr> -<tr> <td class="numLineCover"> 288</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (Exception ex) {</span></pre></td></tr> -<tr> <td class="numLineCover"> 289</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">"Exception occurred initializing %s."</span>, a.getName());</span></pre></td></tr> -<tr> <td class="numLineCover"> 290</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.SEVERE, msg);</span></pre></td></tr> -<tr> <td class="numLineCover"> 291</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.INFO, <span class="keyword">null</span>, ex);</span></pre></td></tr> -<tr> <td class="numLine"> 292</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 293</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  a.close();</span></pre></td></tr> -<tr> <td class="numLineCover"> 294</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (Exception ex1) {</span></pre></td></tr> -<tr> <td class="numLineCover"> 295</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.FINEST, <span class="keyword">null</span>, ex1);</span></pre></td></tr> -<tr> <td class="numLineCover"> 296</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> -<tr> <td class="numLineCover"> 297</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 298</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 224</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> scan(File file) {</pre></td></tr> +<tr> <td class="numLineCover"> 225</td> <td class="nbHitsUncovered"><a title="Line 225: Conditional coverage 50% (1/2)."> 13</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 225: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (file.exists()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 226</td> <td class="nbHitsCovered"><a title="Line 226: Conditional coverage 100% (2/2)."> 13</a></td> <td class="src"><pre class="src"> <a title="Line 226: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (file.isDirectory()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 227</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  scanDirectory(file);</pre></td></tr> +<tr> <td class="numLine"> 228</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 229</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  scanFile(file);</pre></td></tr> +<tr> <td class="numLine"> 230</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 299</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 231</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 300</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 232</td> <td class="nbHitsCovered"> 13</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 233</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 301</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">// analysis phases</span></pre></td></tr> -<tr> <td class="numLineCover"> 302</td> <td class="nbHitsCovered"><a title="Line 302: Conditional coverage 100% (2/2)."> 10</a></td> <td class="src"><pre class="src"> <a title="Line 302: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (AnalysisPhase phase : AnalysisPhase.values()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 303</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<Analyzer> analyzerList = analyzers.get(phase);</pre></td></tr> -<tr> <td class="numLine"> 304</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 305</td> <td class="nbHitsCovered"><a title="Line 305: Conditional coverage 100% (2/2)."> 9</a></td> <td class="src"><pre class="src"> <a title="Line 305: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Analyzer a : analyzerList) {</a></pre></td></tr> -<tr> <td class="numLine"> 306</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/* need to create a copy of the collection because some of the</span></pre></td></tr> -<tr> <td class="numLine"> 307</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * analyzers may modify it. This prevents ConcurrentModificationExceptions.</span></pre></td></tr> -<tr> <td class="numLine"> 308</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * This is okay for adds/deletes because it happens per analyzer.</span></pre></td></tr> -<tr> <td class="numLine"> 309</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 310</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String msg = String.format(<span class="string">"Begin Analyzer '%s'"</span>, a.getName());</pre></td></tr> -<tr> <td class="numLineCover"> 311</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.FINE, msg);</pre></td></tr> -<tr> <td class="numLineCover"> 312</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Set<Dependency> dependencySet = <span class="keyword">new</span> HashSet<Dependency>();</pre></td></tr> -<tr> <td class="numLineCover"> 313</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  dependencySet.addAll(dependencies);</pre></td></tr> -<tr> <td class="numLineCover"> 314</td> <td class="nbHitsCovered"><a title="Line 314: Conditional coverage 100% (2/2)."> 8</a></td> <td class="src"><pre class="src"> <a title="Line 314: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Dependency d : dependencySet) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 315</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String msgFile = String.format(<span class="string">"Begin Analysis of '%s'"</span>, d.getActualFilePath());</pre></td></tr> -<tr> <td class="numLineCover"> 316</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.FINE, msgFile);</pre></td></tr> -<tr> <td class="numLineCover"> 317</td> <td class="nbHitsCovered"><a title="Line 317: Conditional coverage 100% (2/2)."> 24</a></td> <td class="src"><pre class="src"> <a title="Line 317: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (a.supportsExtension(d.getFileExtension())) {</a></pre></td></tr> -<tr> <td class="numLine"> 318</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 319</td> <td class="nbHitsCovered"> 21</td> <td class="src"><pre class="src">  a.analyze(d, <span class="keyword">this</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 320</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"> 321</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  d.addAnalysisException(ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 322</td> <td class="nbHitsCovered"> 21</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 323</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 324</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 325</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 326</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 327</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 328</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">//close/cleanup</span></pre></td></tr> -<tr> <td class="numLineCover"> 329</td> <td class="nbHitsCovered"><a title="Line 329: Conditional coverage 100% (2/2)."> 10</a></td> <td class="src"><pre class="src"> <a title="Line 329: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (AnalysisPhase phase : AnalysisPhase.values()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 330</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<Analyzer> analyzerList = analyzers.get(phase);</pre></td></tr> -<tr> <td class="numLineCover"> 331</td> <td class="nbHitsCovered"><a title="Line 331: Conditional coverage 100% (2/2)."> 9</a></td> <td class="src"><pre class="src"> <a title="Line 331: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Analyzer a : analyzerList) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 332</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String msg = String.format(<span class="string">"Closing Analyzer '%s'"</span>, a.getName());</pre></td></tr> -<tr> <td class="numLineCover"> 333</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.FINE, msg);</pre></td></tr> -<tr> <td class="numLine"> 334</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 335</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  a.close();</pre></td></tr> -<tr> <td class="numLineCover"> 336</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (Exception ex) {</span></pre></td></tr> -<tr> <td class="numLineCover"> 337</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.FINEST, <span class="keyword">null</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 338</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 339</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 340</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 341</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 342</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 343</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 234</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 344</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Cycles through the cached web data sources and calls update on all of</span></pre></td></tr> -<tr> <td class="numLine"> 345</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * them.</span></pre></td></tr> -<tr> <td class="numLine"> 346</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 347</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> doUpdates() {</pre></td></tr> -<tr> <td class="numLineCover"> 348</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> UpdateService service = UpdateService.getInstance();</span></pre></td></tr> -<tr> <td class="numLineCover"> 349</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> Iterator<CachedWebDataSource> iterator = service.getDataSources();</span></pre></td></tr> -<tr> <td class="numLineCover"> 350</td> <td class="nbHitsUncovered"><a title="Line 350: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 350: Conditional coverage 0% (0/2)."> <span class="keyword">while</span> (iterator.hasNext()) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 351</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> CachedWebDataSource source = iterator.next();</span></pre></td></tr> -<tr> <td class="numLine"> 352</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 353</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  source.update();</span></pre></td></tr> -<tr> <td class="numLineCover"> 354</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (UpdateException ex) {</span></pre></td></tr> -<tr> <td class="numLineCover"> 355</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.WARNING,</span></pre></td></tr> -<tr> <td class="numLine"> 356</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="string">"Unable to update Cached Web DataSource, using local data instead. Results may not include recent vulnerabilities."</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 357</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.FINE,</span></pre></td></tr> -<tr> <td class="numLine"> 358</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  String.format(<span class="string">"Unable to update details for %s"</span>, source.getClass().getName()), ex);</pre></td></tr> -<tr> <td class="numLineCover"> 359</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> -<tr> <td class="numLineCover"> 360</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> -<tr> <td class="numLineCover"> 361</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> -<tr> <td class="numLine"> 362</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 363</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 364</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Returns a full list of all of the analyzers. This is useful for reporting</span></pre></td></tr> -<tr> <td class="numLine"> 365</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * which analyzers where used.</span></pre></td></tr> -<tr> <td class="numLine"> 366</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 235</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Recursively scans files and directories. Any dependencies identified are</span></pre></td></tr> +<tr> <td class="numLine"> 236</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * added to the dependency collection.</span></pre></td></tr> +<tr> <td class="numLine"> 237</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 367</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @return a list of Analyzers</span></pre></td></tr> -<tr> <td class="numLine"> 368</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 238</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param dir the directory to scan.</span></pre></td></tr> +<tr> <td class="numLine"> 239</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 369</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> List<Analyzer> getAnalyzers() {</pre></td></tr> -<tr> <td class="numLineCover"> 370</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<Analyzer> ret = <span class="keyword">new</span> ArrayList<Analyzer>();</pre></td></tr> -<tr> <td class="numLineCover"> 371</td> <td class="nbHitsCovered"><a title="Line 371: Conditional coverage 100% (2/2)."> 10</a></td> <td class="src"><pre class="src"> <a title="Line 371: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (AnalysisPhase phase : AnalysisPhase.values()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 372</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<Analyzer> analyzerList = analyzers.get(phase);</pre></td></tr> -<tr> <td class="numLineCover"> 373</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  ret.addAll(analyzerList);</pre></td></tr> -<tr> <td class="numLine"> 374</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 375</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ret;</pre></td></tr> -<tr> <td class="numLine"> 376</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 377</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 378</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 379</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Checks all analyzers to see if an extension is supported.</span></pre></td></tr> -<tr> <td class="numLine"> 380</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 381</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param ext a file extension</span></pre></td></tr> -<tr> <td class="numLine"> 382</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @return true or false depending on whether or not the file extension is</span></pre></td></tr> -<tr> <td class="numLine"> 383</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * supported</span></pre></td></tr> -<tr> <td class="numLine"> 384</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 385</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> supportsExtension(String ext) {</pre></td></tr> -<tr> <td class="numLineCover"> 386</td> <td class="nbHitsCovered"><a title="Line 386: Conditional coverage 100% (2/2)."> 138</a></td> <td class="src"><pre class="src"> <a title="Line 386: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (ext == <span class="keyword">null</span>) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 387</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> -<tr> <td class="numLine"> 388</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 389</td> <td class="nbHitsCovered"><a title="Line 389: Conditional coverage 100% (2/2)."> 1259</a></td> <td class="src"><pre class="src"> <a title="Line 389: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (AnalysisPhase phase : AnalysisPhase.values()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 390</td> <td class="nbHitsCovered"> 1134</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<Analyzer> analyzerList = analyzers.get(phase);</pre></td></tr> -<tr> <td class="numLineCover"> 391</td> <td class="nbHitsCovered"><a title="Line 391: Conditional coverage 100% (2/2)."> 1134</a></td> <td class="src"><pre class="src"> <a title="Line 391: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Analyzer a : analyzerList) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 392</td> <td class="nbHitsCovered"><a title="Line 392: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 1009</a></td> <td class="src"><pre class="src"> <a title="Line 392: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (a.getSupportedExtensions() != <span class="keyword">null</span> && a.supportsExtension(ext)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 393</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> -<tr> <td class="numLine"> 394</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 240</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">protected</span> <span class="keyword">void</span> scanDirectory(File dir) {</pre></td></tr> +<tr> <td class="numLineCover"> 241</td> <td class="nbHitsCovered"> 33</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File[] files = dir.listFiles();</pre></td></tr> +<tr> <td class="numLineCover"> 242</td> <td class="nbHitsUncovered"><a title="Line 242: Conditional coverage 50% (1/2)."> 33</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 242: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (files != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 243</td> <td class="nbHitsCovered"><a title="Line 243: Conditional coverage 100% (2/2)."> 68</a></td> <td class="src"><pre class="src"> <a title="Line 243: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (File f : files) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 244</td> <td class="nbHitsCovered"><a title="Line 244: Conditional coverage 100% (2/2)."> 35</a></td> <td class="src"><pre class="src"> <a title="Line 244: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (f.isDirectory()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 245</td> <td class="nbHitsCovered"> 25</td> <td class="src"><pre class="src">  scanDirectory(f);</pre></td></tr> +<tr> <td class="numLine"> 246</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 247</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  scanFile(f);</pre></td></tr> +<tr> <td class="numLine"> 248</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 395</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 249</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 396</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 250</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 397</td> <td class="nbHitsCovered"> 125</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> -<tr> <td class="numLine"> 398</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 251</td> <td class="nbHitsCovered"> 33</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 252</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 253</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 254</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Scans a specified file. If a dependency is identified it is added to the</span></pre></td></tr> +<tr> <td class="numLine"> 255</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * dependency collection.</span></pre></td></tr> +<tr> <td class="numLine"> 256</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 257</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param file The file to scan.</span></pre></td></tr> +<tr> <td class="numLine"> 258</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 259</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">protected</span> <span class="keyword">void</span> scanFile(File file) {</pre></td></tr> +<tr> <td class="numLineCover"> 260</td> <td class="nbHitsUncovered"><a title="Line 260: Conditional coverage 50% (1/2)."> 15</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 260: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!file.isFile()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 261</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">"Path passed to scanFile(File) is not a file: %s. Skipping the file."</span>, file.toString());</span></pre></td></tr> +<tr> <td class="numLineCover"> 262</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.FINE, msg);</span></pre></td></tr> +<tr> <td class="numLineCover"> 263</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"> 264</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 265</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String fileName = file.getName();</pre></td></tr> +<tr> <td class="numLineCover"> 266</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String extension = FileUtils.getFileExtension(fileName);</pre></td></tr> +<tr> <td class="numLineCover"> 267</td> <td class="nbHitsUncovered"><a title="Line 267: Conditional coverage 50% (1/2)."> 15</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 267: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (extension != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 268</td> <td class="nbHitsUncovered"><a title="Line 268: Conditional coverage 50% (1/2)."> 15</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 268: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (extensions.contains(extension)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 269</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Dependency dependency = <span class="keyword">new</span> Dependency(file);</pre></td></tr> +<tr> <td class="numLineCover"> 270</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  dependencies.add(dependency);</pre></td></tr> +<tr> <td class="numLineCover"> 271</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 272</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 273</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">"No file extension found on file '%s'. The file was not analyzed."</span>,</span></pre></td></tr> +<tr> <td class="numLine"> 274</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  file.toString());</pre></td></tr> +<tr> <td class="numLineCover"> 275</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.FINEST, msg);</span></pre></td></tr> +<tr> <td class="numLine"> 276</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 277</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 278</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 279</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 280</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Runs the analyzers against all of the dependencies.</span></pre></td></tr> +<tr> <td class="numLine"> 281</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 282</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> analyzeDependencies() {</pre></td></tr> +<tr> <td class="numLine"> 283</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">//need to ensure that data exists</span></pre></td></tr> +<tr> <td class="numLine"> 284</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 285</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  ensureDataExists();</pre></td></tr> +<tr> <td class="numLineCover"> 286</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (NoDataException ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 287</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">"%n%n%s%n%nUnable to continue dependency-check analysis."</span>, ex.getMessage());</span></pre></td></tr> +<tr> <td class="numLineCover"> 288</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.SEVERE, msg);</span></pre></td></tr> +<tr> <td class="numLineCover"> 289</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="keyword">null</span>, ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 290</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="numLineCover"> 291</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 292</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 293</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">//phase one initialize</span></pre></td></tr> +<tr> <td class="numLineCover"> 294</td> <td class="nbHitsCovered"><a title="Line 294: Conditional coverage 100% (2/2)."> 30</a></td> <td class="src"><pre class="src"> <a title="Line 294: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (AnalysisPhase phase : AnalysisPhase.values()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 295</td> <td class="nbHitsCovered"> 27</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<Analyzer> analyzerList = analyzers.get(phase);</pre></td></tr> +<tr> <td class="numLineCover"> 296</td> <td class="nbHitsCovered"><a title="Line 296: Conditional coverage 100% (2/2)."> 27</a></td> <td class="src"><pre class="src"> <a title="Line 296: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Analyzer a : analyzerList) {</a></pre></td></tr> +<tr> <td class="numLine"> 297</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 298</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String msg = String.format(<span class="string">"Initializing %s"</span>, a.getName());</pre></td></tr> +<tr> <td class="numLineCover"> 299</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.FINE, msg);</pre></td></tr> +<tr> <td class="numLineCover"> 300</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  a.initialize();</pre></td></tr> +<tr> <td class="numLineCover"> 301</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (Exception ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 302</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">"Exception occurred initializing %s."</span>, a.getName());</span></pre></td></tr> +<tr> <td class="numLineCover"> 303</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.SEVERE, msg);</span></pre></td></tr> +<tr> <td class="numLineCover"> 304</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.INFO, <span class="keyword">null</span>, ex);</span></pre></td></tr> +<tr> <td class="numLine"> 305</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 306</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  a.close();</span></pre></td></tr> +<tr> <td class="numLineCover"> 307</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (Exception ex1) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 308</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.FINEST, <span class="keyword">null</span>, ex1);</span></pre></td></tr> +<tr> <td class="numLineCover"> 309</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLineCover"> 310</td> <td class="nbHitsCovered"> 48</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 311</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 312</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 313</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 314</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">// analysis phases</span></pre></td></tr> +<tr> <td class="numLineCover"> 315</td> <td class="nbHitsCovered"><a title="Line 315: Conditional coverage 100% (2/2)."> 30</a></td> <td class="src"><pre class="src"> <a title="Line 315: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (AnalysisPhase phase : AnalysisPhase.values()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 316</td> <td class="nbHitsCovered"> 27</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<Analyzer> analyzerList = analyzers.get(phase);</pre></td></tr> +<tr> <td class="numLine"> 317</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLineCover"> 318</td> <td class="nbHitsCovered"><a title="Line 318: Conditional coverage 100% (2/2)."> 27</a></td> <td class="src"><pre class="src"> <a title="Line 318: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Analyzer a : analyzerList) {</a></pre></td></tr> +<tr> <td class="numLine"> 319</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/* need to create a copy of the collection because some of the</span></pre></td></tr> +<tr> <td class="numLine"> 320</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * analyzers may modify it. This prevents ConcurrentModificationExceptions.</span></pre></td></tr> +<tr> <td class="numLine"> 321</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * This is okay for adds/deletes because it happens per analyzer.</span></pre></td></tr> +<tr> <td class="numLine"> 322</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLineCover"> 323</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String msg = String.format(<span class="string">"Begin Analyzer '%s'"</span>, a.getName());</pre></td></tr> +<tr> <td class="numLineCover"> 324</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.FINE, msg);</pre></td></tr> +<tr> <td class="numLineCover"> 325</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Set<Dependency> dependencySet = <span class="keyword">new</span> HashSet<Dependency>();</pre></td></tr> +<tr> <td class="numLineCover"> 326</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  dependencySet.addAll(dependencies);</pre></td></tr> +<tr> <td class="numLineCover"> 327</td> <td class="nbHitsCovered"><a title="Line 327: Conditional coverage 100% (2/2)."> 24</a></td> <td class="src"><pre class="src"> <a title="Line 327: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Dependency d : dependencySet) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 328</td> <td class="nbHitsCovered"> 68</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String msgFile = String.format(<span class="string">"Begin Analysis of '%s'"</span>, d.getActualFilePath());</pre></td></tr> +<tr> <td class="numLineCover"> 329</td> <td class="nbHitsCovered"> 68</td> <td class="src"><pre class="src">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.FINE, msgFile);</pre></td></tr> +<tr> <td class="numLineCover"> 330</td> <td class="nbHitsCovered"><a title="Line 330: Conditional coverage 100% (2/2)."> 68</a></td> <td class="src"><pre class="src"> <a title="Line 330: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (a.supportsExtension(d.getFileExtension())) {</a></pre></td></tr> +<tr> <td class="numLine"> 331</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 332</td> <td class="nbHitsCovered"> 61</td> <td class="src"><pre class="src">  a.analyze(d, <span class="keyword">this</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 333</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"> 334</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  d.addAnalysisException(ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 335</td> <td class="nbHitsCovered"> 61</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 336</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 337</td> <td class="nbHitsCovered"> 68</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 338</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 339</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 340</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 341</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">//close/cleanup</span></pre></td></tr> +<tr> <td class="numLineCover"> 342</td> <td class="nbHitsCovered"><a title="Line 342: Conditional coverage 100% (2/2)."> 30</a></td> <td class="src"><pre class="src"> <a title="Line 342: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (AnalysisPhase phase : AnalysisPhase.values()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 343</td> <td class="nbHitsCovered"> 27</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<Analyzer> analyzerList = analyzers.get(phase);</pre></td></tr> +<tr> <td class="numLineCover"> 344</td> <td class="nbHitsCovered"><a title="Line 344: Conditional coverage 100% (2/2)."> 27</a></td> <td class="src"><pre class="src"> <a title="Line 344: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Analyzer a : analyzerList) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 345</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String msg = String.format(<span class="string">"Closing Analyzer '%s'"</span>, a.getName());</pre></td></tr> +<tr> <td class="numLineCover"> 346</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.FINE, msg);</pre></td></tr> +<tr> <td class="numLine"> 347</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 348</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  a.close();</pre></td></tr> +<tr> <td class="numLineCover"> 349</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (Exception ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 350</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.FINEST, <span class="keyword">null</span>, ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 351</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 352</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 353</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 354</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 355</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 356</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 357</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Cycles through the cached web data sources and calls update on all of</span></pre></td></tr> +<tr> <td class="numLine"> 358</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * them.</span></pre></td></tr> +<tr> <td class="numLine"> 359</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 360</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> doUpdates() {</pre></td></tr> +<tr> <td class="numLineCover"> 361</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> UpdateService service = UpdateService.getInstance();</span></pre></td></tr> +<tr> <td class="numLineCover"> 362</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> Iterator<CachedWebDataSource> iterator = service.getDataSources();</span></pre></td></tr> +<tr> <td class="numLineCover"> 363</td> <td class="nbHitsUncovered"><a title="Line 363: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 363: Conditional coverage 0% (0/2)."> <span class="keyword">while</span> (iterator.hasNext()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 364</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> CachedWebDataSource source = iterator.next();</span></pre></td></tr> +<tr> <td class="numLine"> 365</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 366</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  source.update();</span></pre></td></tr> +<tr> <td class="numLineCover"> 367</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (UpdateException ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 368</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.WARNING,</span></pre></td></tr> +<tr> <td class="numLine"> 369</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="string">"Unable to update Cached Web DataSource, using local data instead. Results may not include recent vulnerabilities."</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 370</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Engine.<span class="keyword">class</span>.getName()).log(Level.FINE,</span></pre></td></tr> +<tr> <td class="numLine"> 371</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  String.format(<span class="string">"Unable to update details for %s"</span>, source.getClass().getName()), ex);</pre></td></tr> +<tr> <td class="numLineCover"> 372</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLineCover"> 373</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLineCover"> 374</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLine"> 375</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 376</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 377</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Returns a full list of all of the analyzers. This is useful for reporting</span></pre></td></tr> +<tr> <td class="numLine"> 378</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * which analyzers where used.</span></pre></td></tr> +<tr> <td class="numLine"> 379</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 380</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @return a list of Analyzers</span></pre></td></tr> +<tr> <td class="numLine"> 381</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 382</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">public</span> List<Analyzer> getAnalyzers() {</pre></td></tr> +<tr> <td class="numLineCover"> 383</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<Analyzer> ret = <span class="keyword">new</span> ArrayList<Analyzer>();</pre></td></tr> +<tr> <td class="numLineCover"> 384</td> <td class="nbHitsCovered"><a title="Line 384: Conditional coverage 100% (2/2)."> 10</a></td> <td class="src"><pre class="src"> <a title="Line 384: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (AnalysisPhase phase : AnalysisPhase.values()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 385</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<Analyzer> analyzerList = analyzers.get(phase);</pre></td></tr> +<tr> <td class="numLineCover"> 386</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  ret.addAll(analyzerList);</pre></td></tr> +<tr> <td class="numLine"> 387</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 388</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ret;</pre></td></tr> +<tr> <td class="numLine"> 389</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 399</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 390</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 391</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 392</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Checks all analyzers to see if an extension is supported.</span></pre></td></tr> +<tr> <td class="numLine"> 393</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 394</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param ext a file extension</span></pre></td></tr> +<tr> <td class="numLine"> 395</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @return true or false depending on whether or not the file extension is</span></pre></td></tr> +<tr> <td class="numLine"> 396</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * supported</span></pre></td></tr> +<tr> <td class="numLine"> 397</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 398</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> supportsExtension(String ext) {</pre></td></tr> +<tr> <td class="numLineCover"> 399</td> <td class="nbHitsCovered"><a title="Line 399: Conditional coverage 100% (2/2)."> 143</a></td> <td class="src"><pre class="src"> <a title="Line 399: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (ext == <span class="keyword">null</span>) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 400</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> +<tr> <td class="numLine"> 401</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 402</td> <td class="nbHitsCovered"><a title="Line 402: Conditional coverage 100% (2/2)."> 1267</a></td> <td class="src"><pre class="src"> <a title="Line 402: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (AnalysisPhase phase : AnalysisPhase.values()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 403</td> <td class="nbHitsCovered"> 1142</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<Analyzer> analyzerList = analyzers.get(phase);</pre></td></tr> +<tr> <td class="numLineCover"> 404</td> <td class="nbHitsCovered"><a title="Line 404: Conditional coverage 100% (2/2)."> 1142</a></td> <td class="src"><pre class="src"> <a title="Line 404: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Analyzer a : analyzerList) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 405</td> <td class="nbHitsCovered"><a title="Line 405: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 1017</a></td> <td class="src"><pre class="src"> <a title="Line 405: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (a.getSupportedExtensions() != <span class="keyword">null</span> && a.supportsExtension(ext)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 406</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLine"> 407</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 408</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 409</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 410</td> <td class="nbHitsCovered"> 125</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> +<tr> <td class="numLine"> 411</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 412</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 413</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 414</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Checks the CPE Index to ensure documents exists. If none exist a</span></pre></td></tr> +<tr> <td class="numLine"> 415</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * NoDataException is thrown.</span></pre></td></tr> +<tr> <td class="numLine"> 416</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 417</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @throws NoDataException thrown if no data exists in the CPE Index</span></pre></td></tr> +<tr> <td class="numLine"> 418</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 419</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> ensureDataExists() <span class="keyword">throws</span> NoDataException {</pre></td></tr> +<tr> <td class="numLineCover"> 420</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  CpeIndexReader cpe = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 421</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">boolean</span> noDataExists = <span class="keyword">false</span>;</pre></td></tr> +<tr> <td class="numLine"> 422</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 423</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  cpe = <span class="keyword">new</span> CpeIndexReader();</pre></td></tr> +<tr> <td class="numLineCover"> 424</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  cpe.open();</pre></td></tr> +<tr> <td class="numLineCover"> 425</td> <td class="nbHitsUncovered"><a title="Line 425: Conditional coverage 50% (1/2)."> 3</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 425: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (cpe.numDocs() <= 0) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 426</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  noDataExists = <span class="keyword">true</span>;</span></pre></td></tr> +<tr> <td class="numLine"> 427</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 428</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"> 429</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  noDataExists = <span class="keyword">true</span>;</span></pre></td></tr> +<tr> <td class="numLineCover"> 430</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (NullPointerException ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 431</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  noDataExists = <span class="keyword">true</span>;</span></pre></td></tr> +<tr> <td class="numLine"> 432</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 433</td> <td class="nbHitsUncovered"><a title="Line 433: Conditional coverage 50% (1/2)."> 3</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 433: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (cpe != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 434</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  cpe.close();</pre></td></tr> +<tr> <td class="numLine"> 435</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 436</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 437</td> <td class="nbHitsUncovered"><a title="Line 437: Conditional coverage 50% (1/2)."> 3</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 437: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (noDataExists) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 438</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> NoDataException(<span class="string">"No data exists in the data store. Please check that you are able to connect "</span></span></pre></td></tr> +<tr> <td class="numLine"> 439</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  + <span class="string">"to the Internet and re-run dependency-check. If the problem persists determine whether you need "</span></pre></td></tr> +<tr> <td class="numLine"> 440</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  + <span class="string">"to set a proxy url and port.\\n\\nIf you are unable to solve this problem please contact the mailing "</span></pre></td></tr> +<tr> <td class="numLine"> 441</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  + <span class="string">"list for help: dependency-check@googlegroups.com"</span>);</pre></td></tr> +<tr> <td class="numLine"> 442</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 443</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 444</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 445</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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AbstractAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AbstractAnalyzer.html index 9ccfae01a..644bec385 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AbstractAnalyzer.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AbstractAnalyzer.html @@ -73,7 +73,7 @@ <td class="src"><pre class="src"> <span class="comment"> * @author Jeremy Long (jeremy.long@owasp.org)</span></pre></td></tr> <tr> <td class="numLine"> 28</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 29</td> <td class="nbHitsCovered"> 51</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">abstract</span> <span class="keyword">class</span> AbstractAnalyzer <span class="keyword">implements</span> Analyzer {</pre></td></tr> +<tr> <td class="numLineCover"> 29</td> <td class="nbHitsCovered"> 54</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">abstract</span> <span class="keyword">class</span> AbstractAnalyzer <span class="keyword">implements</span> Analyzer {</pre></td></tr> <tr> <td class="numLine"> 30</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 31</td> <td class="nbHits"> </td> @@ -125,7 +125,7 @@ <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> initialize() <span class="keyword">throws</span> Exception {</pre></td></tr> <tr> <td class="numLine"> 56</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//do nothing</span></pre></td></tr> -<tr> <td class="numLineCover"> 57</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 57</td> <td class="nbHitsCovered"> 13</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 58</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 59</td> <td class="nbHits"> </td> @@ -144,11 +144,11 @@ <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> close() <span class="keyword">throws</span> Exception {</pre></td></tr> <tr> <td class="numLine"> 66</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//do nothing</span></pre></td></tr> -<tr> <td class="numLineCover"> 67</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 67</td> <td class="nbHitsCovered"> 13</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 68</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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalysisException.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalysisException.html index 3de2824ca..4409e6e08 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalysisException.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalysisException.html @@ -145,6 +145,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalysisPhase.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalysisPhase.html index 1e1977bf4..39edec91b 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalysisPhase.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalysisPhase.html @@ -67,7 +67,7 @@ <td class="src"><pre class="src"> <span class="comment"> * @author Jeremy Long (jeremy.long@owasp.org)</span></pre></td></tr> <tr> <td class="numLine"> 25</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 26</td> <td class="nbHitsCovered"> 148</td> <td class="src"><pre class="src"> <span class="keyword">public</span> enum AnalysisPhase {</pre></td></tr> +<tr> <td class="numLineCover"> 26</td> <td class="nbHitsCovered"> 162</td> <td class="src"><pre class="src"> <span class="keyword">public</span> enum AnalysisPhase {</pre></td></tr> <tr> <td class="numLine"> 27</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 28</td> <td class="nbHits"> </td> @@ -137,6 +137,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.Analyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.Analyzer.html index 858764bb3..3e8342809 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.Analyzer.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.Analyzer.html @@ -223,6 +223,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalyzerService.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalyzerService.html index 2ecc76acc..7a0893400 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalyzerService.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalyzerService.html @@ -116,11 +116,11 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 51</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">synchronized</span> AnalyzerService getInstance() {</pre></td></tr> -<tr> <td class="numLineCover"> 52</td> <td class="nbHitsCovered"><a title="Line 52: Conditional coverage 100% (2/2)."> 4</a></td> <td class="src"><pre class="src"> <a title="Line 52: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (service == <span class="keyword">null</span>) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 52</td> <td class="nbHitsCovered"><a title="Line 52: Conditional coverage 100% (2/2)."> 7</a></td> <td class="src"><pre class="src"> <a title="Line 52: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (service == <span class="keyword">null</span>) {</a></pre></td></tr> <tr> <td class="numLineCover"> 53</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  service = <span class="keyword">new</span> AnalyzerService();</pre></td></tr> <tr> <td class="numLine"> 54</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 55</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src">  <span class="keyword">return</span> service;</pre></td></tr> +<tr> <td class="numLineCover"> 55</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  <span class="keyword">return</span> service;</pre></td></tr> <tr> <td class="numLine"> 56</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 57</td> <td class="nbHits"> </td> @@ -137,13 +137,13 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 63</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Iterator<Analyzer> getAnalyzers() {</pre></td></tr> -<tr> <td class="numLineCover"> 64</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src">  <span class="keyword">return</span> loader.iterator();</pre></td></tr> +<tr> <td class="numLineCover"> 64</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  <span class="keyword">return</span> loader.iterator();</pre></td></tr> <tr> <td class="numLine"> 65</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 66</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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.ArchiveAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.ArchiveAnalyzer.html index 6598be3ec..31bd347bc 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.ArchiveAnalyzer.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.ArchiveAnalyzer.html @@ -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.ArchiveAnalyzer.html">ArchiveAnalyzer</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">69%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:69px"><span class="text">74/107</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">65%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:65px"><span class="text">25/38</span></div></div></td></tr></table></td><td class="value"><span class="hidden">5.111111111111111;</span>5.111</td></tr> + <tr><td><a href="org.owasp.dependencycheck.analyzer.ArchiveAnalyzer.html">ArchiveAnalyzer</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">65%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:65px"><span class="text">98/150</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">69%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:69px"><span class="text">43/62</span></div></div></td></tr></table></td><td class="value"><span class="hidden">6.2727272727272725;</span>6.273</td></tr> </table> <div class="separator"> </div> @@ -86,480 +86,581 @@ <tr> <td class="numLine"> 34</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.logging.Logger;</pre></td></tr> <tr> <td class="numLine"> 35</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment">//import java.util.zip.ZipEntry;</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.apache.commons.compress.archivers.ArchiveEntry;</pre></td></tr> <tr> <td class="numLine"> 36</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment">//import java.util.zip.ZipException;</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.apache.commons.compress.archivers.ArchiveInputStream;</pre></td></tr> <tr> <td class="numLine"> 37</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment">//import java.util.zip.ZipInputStream;</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.apache.commons.compress.archivers.tar.TarArchiveInputStream;</pre></td></tr> <tr> <td class="numLine"> 38</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> org.apache.commons.compress.archivers.zip.ZipArchiveEntry;</pre></td></tr> -<tr> <td class="numLine"> 39</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="keyword">import</span> org.apache.commons.compress.archivers.zip.ZipArchiveInputStream;</pre></td></tr> +<tr> <td class="numLine"> 39</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.apache.commons.compress.compressors.CompressorInputStream;</pre></td></tr> <tr> <td class="numLine"> 40</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> org.h2.store.fs.FileUtils;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream;</pre></td></tr> <tr> <td class="numLine"> 41</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.Engine;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.apache.commons.compress.compressors.gzip.GzipUtils;</pre></td></tr> <tr> <td class="numLine"> 42</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.dependency.Dependency;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.h2.store.fs.FileUtils;</pre></td></tr> <tr> <td class="numLine"> 43</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.utils.Settings;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.Engine;</pre></td></tr> <tr> <td class="numLine"> 44</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.dependency.Dependency;</pre></td></tr> <tr> <td class="numLine"> 45</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.utils.Settings;</pre></td></tr> <tr> <td class="numLine"> 46</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * <p>An analyzer that works on archive files:</span></pre></td></tr> -<tr> <td class="numLine"> 47</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * <ul></span></pre></td></tr> -<tr> <td class="numLine"> 48</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * <li><b>ZIP</b> - if it is determined to be a JAR, WAR or EAR a copy is made</span></pre></td></tr> -<tr> <td class="numLine"> 49</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * and the copy is given the correct extension so that it will be correctly</span></pre></td></tr> -<tr> <td class="numLine"> 50</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * analyzed.</li></span></pre></td></tr> -<tr> <td class="numLine"> 51</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * <li><b>WAR</b> - the WAR contents are extracted and added as dependencies to</span></pre></td></tr> -<tr> <td class="numLine"> 52</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * the scan. The displayed path is relative to the WAR.</li></span></pre></td></tr> -<tr> <td class="numLine"> 53</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * <li><b>EAR</b> - the WAR contents are extracted and added as dependencies to</span></pre></td></tr> -<tr> <td class="numLine"> 54</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * the scan. Any WAR files are also processed so that the contained JAR files</span></pre></td></tr> -<tr> <td class="numLine"> 55</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * are added to the list of dependencies. The displayed path is relative to the</span></pre></td></tr> -<tr> <td class="numLine"> 56</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * EAR.</li></span></pre></td></tr> -<tr> <td class="numLine"> 57</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * </ul></p></span></pre></td></tr> -<tr> <td class="numLine"> 58</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 59</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @author Jeremy Long (jeremy.long@owasp.org)</span></pre></td></tr> -<tr> <td class="numLine"> 60</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 61</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> ArchiveAnalyzer <span class="keyword">extends</span> AbstractAnalyzer <span class="keyword">implements</span> Analyzer {</pre></td></tr> -<tr> <td class="numLine"> 62</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 63</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 47</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 48</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * <p>An analyzer that extracts files from archives and ensures any supported</span></pre></td></tr> +<tr> <td class="numLine"> 49</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * files contained within the archive are added to the dependency list.</p></span></pre></td></tr> +<tr> <td class="numLine"> 50</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 51</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @author Jeremy Long (jeremy.long@owasp.org)</span></pre></td></tr> +<tr> <td class="numLine"> 52</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLineCover"> 53</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> ArchiveAnalyzer <span class="keyword">extends</span> AbstractAnalyzer <span class="keyword">implements</span> Analyzer {</pre></td></tr> +<tr> <td class="numLine"> 54</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 55</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 64</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 56</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * The buffer size to use when extracting files from the archive.</span></pre></td></tr> -<tr> <td class="numLine"> 65</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 57</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 66</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 58</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> <span class="keyword">int</span> BUFFER_SIZE = 4096;</pre></td></tr> -<tr> <td class="numLine"> 67</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 59</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 68</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 60</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * The count of directories created during analysis. This is used for</span></pre></td></tr> -<tr> <td class="numLine"> 69</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 61</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * creating temporary directories.</span></pre></td></tr> -<tr> <td class="numLine"> 70</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 62</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 71</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">int</span> dirCount = 0;</pre></td></tr> -<tr> <td class="numLine"> 72</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 63</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">int</span> dirCount = 0;</pre></td></tr> +<tr> <td class="numLine"> 64</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 73</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 65</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"> 74</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 66</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 75</td> <td class="nbHitsCovered"> 8</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"> 76</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 67</td> <td class="nbHitsCovered"> 11</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"> 68</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 77</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 69</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * The max scan depth that the analyzer will recursively extract nested</span></pre></td></tr> -<tr> <td class="numLine"> 78</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 70</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * archives.</span></pre></td></tr> -<tr> <td class="numLine"> 79</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 71</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 80</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> <span class="keyword">int</span> MAX_SCAN_DEPTH = Settings.getInt(<span class="string">"archive.scan.depth"</span>, 3);</pre></td></tr> -<tr> <td class="numLine"> 81</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 72</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> <span class="keyword">int</span> MAX_SCAN_DEPTH = Settings.getInt(<span class="string">"archive.scan.depth"</span>, 3);</pre></td></tr> +<tr> <td class="numLine"> 73</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 82</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 74</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * Tracks the current scan/extraction depth for nested archives.</span></pre></td></tr> -<tr> <td class="numLine"> 83</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 75</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 84</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">int</span> scanDepth = 0;</pre></td></tr> -<tr> <td class="numLine"> 85</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 76</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">int</span> scanDepth = 0;</pre></td></tr> +<tr> <td class="numLine"> 77</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer"></span></pre></td></tr> +<tr> <td class="numLine"> 78</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 79</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * The name of the analyzer.</span></pre></td></tr> +<tr> <td class="numLine"> 80</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 81</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> String ANALYZER_NAME = <span class="string">"Archive Analyzer"</span>;</pre></td></tr> +<tr> <td class="numLine"> 82</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 83</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * The phase that this analyzer is intended to run in.</span></pre></td></tr> +<tr> <td class="numLine"> 84</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLineCover"> 85</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.INITIAL;</pre></td></tr> <tr> <td class="numLine"> 86</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 87</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * The name of the analyzer.</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * The set of file extensions supported by this analyzer.</span></pre></td></tr> <tr> <td class="numLine"> 88</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 89</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> String ANALYZER_NAME = <span class="string">"Archive Analyzer"</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 89</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Set<String> EXTENSIONS = newHashSet(<span class="string">"zip"</span>, <span class="string">"ear"</span>, <span class="string">"war"</span>, <span class="string">"tar"</span>, <span class="string">"gz"</span>, <span class="string">"tgz"</span>);</pre></td></tr> <tr> <td class="numLine"> 90</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 91</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * The phase that this analyzer is intended to run in.</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 92</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 93</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.INITIAL;</pre></td></tr> -<tr> <td class="numLine"> 94</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 95</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * The set of file extensions supported by this analyzer.</span></pre></td></tr> -<tr> <td class="numLine"> 96</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 97</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Set<String> EXTENSIONS = newHashSet(<span class="string">"zip"</span>, <span class="string">"ear"</span>, <span class="string">"war"</span>);</pre></td></tr> -<tr> <td class="numLine"> 98</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 99</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 100</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * Returns a list of file EXTENSIONS supported by this analyzer.</span></pre></td></tr> -<tr> <td class="numLine"> 101</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 93</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 102</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 94</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * @return a list of file EXTENSIONS supported by this analyzer.</span></pre></td></tr> -<tr> <td class="numLine"> 103</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 95</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 104</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 96</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Set<String> getSupportedExtensions() {</pre></td></tr> -<tr> <td class="numLineCover"> 105</td> <td class="nbHitsCovered"> 138</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EXTENSIONS;</pre></td></tr> -<tr> <td class="numLine"> 106</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 97</td> <td class="nbHitsCovered"> 149</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EXTENSIONS;</pre></td></tr> +<tr> <td class="numLine"> 98</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 107</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 99</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 108</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 100</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 109</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 101</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * Returns the name of the analyzer.</span></pre></td></tr> -<tr> <td class="numLine"> 110</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 102</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 111</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 103</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * @return the name of the analyzer.</span></pre></td></tr> -<tr> <td class="numLine"> 112</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 104</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 113</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 105</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"> 114</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYZER_NAME;</pre></td></tr> -<tr> <td class="numLine"> 115</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 106</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYZER_NAME;</pre></td></tr> +<tr> <td class="numLine"> 107</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 116</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 108</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 117</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 109</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 118</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 110</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * Returns whether or not this analyzer can process the given extension.</span></pre></td></tr> -<tr> <td class="numLine"> 119</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 111</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 120</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 112</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * @param extension the file extension to test for support.</span></pre></td></tr> -<tr> <td class="numLine"> 121</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 113</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * @return whether or not the specified file extension is supported by this</span></pre></td></tr> -<tr> <td class="numLine"> 122</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 114</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * analyzer.</span></pre></td></tr> -<tr> <td class="numLine"> 123</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 115</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 124</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 116</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> supportsExtension(String extension) {</pre></td></tr> -<tr> <td class="numLineCover"> 125</td> <td class="nbHitsCovered"> 142</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EXTENSIONS.contains(extension);</pre></td></tr> -<tr> <td class="numLine"> 126</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 117</td> <td class="nbHitsCovered"> 154</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EXTENSIONS.contains(extension);</pre></td></tr> +<tr> <td class="numLine"> 118</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 127</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 119</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 128</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 120</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 129</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 121</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * Returns the phase that the analyzer is intended to run in.</span></pre></td></tr> -<tr> <td class="numLine"> 130</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 122</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 131</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 123</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * @return the phase that the analyzer is intended to run in.</span></pre></td></tr> -<tr> <td class="numLine"> 132</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 124</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 133</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 125</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> AnalysisPhase getAnalysisPhase() {</pre></td></tr> -<tr> <td class="numLineCover"> 134</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYSIS_PHASE;</pre></td></tr> -<tr> <td class="numLine"> 135</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 126</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYSIS_PHASE;</pre></td></tr> +<tr> <td class="numLine"> 127</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 136</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 128</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//</editor-fold></span></pre></td></tr> -<tr> <td class="numLine"> 137</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 129</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 138</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 130</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 139</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 131</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * The initialize method does nothing for this Analyzer.</span></pre></td></tr> -<tr> <td class="numLine"> 140</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 132</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 141</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 133</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * @throws Exception is thrown if there is an exception deleting or creating</span></pre></td></tr> -<tr> <td class="numLine"> 142</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 134</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * temporary files</span></pre></td></tr> -<tr> <td class="numLine"> 143</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 135</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 144</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 136</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  @Override</pre></td></tr> -<tr> <td class="numLine"> 145</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 137</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> initialize() <span class="keyword">throws</span> Exception {</pre></td></tr> -<tr> <td class="numLineCover"> 146</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File baseDir = Settings.getTempDirectory();</pre></td></tr> -<tr> <td class="numLineCover"> 147</td> <td class="nbHitsUncovered"><a title="Line 147: Conditional coverage 50% (1/2)."> 4</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 147: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!baseDir.exists()) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 148</td> <td class="nbHitsUncovered"><a title="Line 148: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 148: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (!baseDir.mkdirs()) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 149</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 make a temporary folder '%s'"</span>, baseDir.getPath());</span></pre></td></tr> -<tr> <td class="numLineCover"> 150</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"> 151</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 138</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File baseDir = Settings.getTempDirectory();</pre></td></tr> +<tr> <td class="numLineCover"> 139</td> <td class="nbHitsUncovered"><a title="Line 139: Conditional coverage 50% (1/2)."> 9</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 139: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!baseDir.exists()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 140</td> <td class="nbHitsUncovered"><a title="Line 140: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 140: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (!baseDir.mkdirs()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 141</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 make a temporary folder '%s'"</span>, baseDir.getPath());</span></pre></td></tr> +<tr> <td class="numLineCover"> 142</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"> 143</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 152</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 144</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 153</td> <td class="nbHitsCovered"> 4</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"> 154</td> <td class="nbHitsUncovered"><a title="Line 154: Conditional coverage 50% (1/2)."> 4</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 154: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!tempFileLocation.delete()) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 155</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(<span class="string">"Unable to delete temporary file '"</span> + tempFileLocation.getAbsolutePath() + <span class="string">"'."</span>);</span></pre></td></tr> +<tr> <td class="numLineCover"> 145</td> <td class="nbHitsCovered"> 9</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"> 146</td> <td class="nbHitsUncovered"><a title="Line 146: Conditional coverage 50% (1/2)."> 9</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 146: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!tempFileLocation.delete()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 147</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"> 148</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"> 149</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 150</td> <td class="nbHitsUncovered"><a title="Line 150: Conditional coverage 50% (1/2)."> 9</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 150: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!tempFileLocation.mkdirs()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 151</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"> 152</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"> 153</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 154</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 155</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 156</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 157</td> <td class="nbHitsUncovered"><a title="Line 157: Conditional coverage 50% (1/2)."> 4</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 157: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!tempFileLocation.mkdirs()) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 158</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(<span class="string">"Unable to create directory '"</span> + tempFileLocation.getAbsolutePath() + <span class="string">"'."</span>);</span></pre></td></tr> -<tr> <td class="numLine"> 159</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 160</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 161</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 162</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 163</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 157</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * The close method does nothing for this Analyzer.</span></pre></td></tr> -<tr> <td class="numLine"> 164</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 158</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 165</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 159</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * @throws Exception thrown if there is an exception deleting temporary</span></pre></td></tr> -<tr> <td class="numLine"> 166</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 160</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * files</span></pre></td></tr> -<tr> <td class="numLine"> 167</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 161</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 168</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 162</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  @Override</pre></td></tr> -<tr> <td class="numLine"> 169</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 163</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> close() <span class="keyword">throws</span> Exception {</pre></td></tr> -<tr> <td class="numLineCover"> 170</td> <td class="nbHitsUncovered"><a title="Line 170: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 4</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 170: 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"> 171</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src">  FileUtils.deleteRecursive(tempFileLocation.getAbsolutePath(), <span class="keyword">true</span>);</pre></td></tr> -<tr> <td class="numLine"> 172</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 164</td> <td class="nbHitsUncovered"><a title="Line 164: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 9</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 164: 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"> 165</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  FileUtils.deleteRecursive(tempFileLocation.getAbsolutePath(), <span class="keyword">true</span>);</pre></td></tr> +<tr> <td class="numLine"> 166</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 173</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 174</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 167</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 168</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 175</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 169</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 176</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 170</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * Analyzes a given dependency. If the dependency is an archive, such as a</span></pre></td></tr> -<tr> <td class="numLine"> 177</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 171</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * WAR or EAR, the contents are extracted, scanned, and added to the list of</span></pre></td></tr> -<tr> <td class="numLine"> 178</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 172</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * dependencies within the engine.</span></pre></td></tr> -<tr> <td class="numLine"> 179</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 173</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 180</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 174</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * @param dependency the dependency to analyze</span></pre></td></tr> -<tr> <td class="numLine"> 181</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 175</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * @param engine the engine scanning</span></pre></td></tr> -<tr> <td class="numLine"> 182</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 176</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * @throws AnalysisException thrown if there is an analysis exception</span></pre></td></tr> -<tr> <td class="numLine"> 183</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 177</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 184</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 178</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  @Override</pre></td></tr> -<tr> <td class="numLine"> 185</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 179</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> analyze(Dependency dependency, Engine engine) <span class="keyword">throws</span> AnalysisException {</pre></td></tr> -<tr> <td class="numLineCover"> 186</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File f = <span class="keyword">new</span> File(dependency.getActualFilePath());</pre></td></tr> -<tr> <td class="numLineCover"> 187</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File tmpDir = getNextTempDirectory();</pre></td></tr> -<tr> <td class="numLineCover"> 188</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  extractFiles(f, tmpDir, engine);</pre></td></tr> -<tr> <td class="numLine"> 189</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 180</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File f = <span class="keyword">new</span> File(dependency.getActualFilePath());</pre></td></tr> +<tr> <td class="numLineCover"> 181</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File tmpDir = getNextTempDirectory();</pre></td></tr> +<tr> <td class="numLineCover"> 182</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  extractFiles(f, tmpDir, engine);</pre></td></tr> +<tr> <td class="numLine"> 183</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 190</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 184</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//make a copy</span></pre></td></tr> -<tr> <td class="numLineCover"> 191</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<Dependency> dependencies = <span class="keyword">new</span> ArrayList<Dependency>(engine.getDependencies());</pre></td></tr> -<tr> <td class="numLineCover"> 192</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  engine.scan(tmpDir);</pre></td></tr> -<tr> <td class="numLineCover"> 193</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<Dependency> newDependencies = engine.getDependencies();</pre></td></tr> -<tr> <td class="numLineCover"> 194</td> <td class="nbHitsCovered"><a title="Line 194: Conditional coverage 100% (2/2)."> 3</a></td> <td class="src"><pre class="src"> <a title="Line 194: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (dependencies.size() != newDependencies.size()) {</a></pre></td></tr> -<tr> <td class="numLine"> 195</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 185</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<Dependency> dependencies = <span class="keyword">new</span> ArrayList<Dependency>(engine.getDependencies());</pre></td></tr> +<tr> <td class="numLineCover"> 186</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  engine.scan(tmpDir);</pre></td></tr> +<tr> <td class="numLineCover"> 187</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<Dependency> newDependencies = engine.getDependencies();</pre></td></tr> +<tr> <td class="numLineCover"> 188</td> <td class="nbHitsCovered"><a title="Line 188: Conditional coverage 100% (2/2)."> 8</a></td> <td class="src"><pre class="src"> <a title="Line 188: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (dependencies.size() != newDependencies.size()) {</a></pre></td></tr> +<tr> <td class="numLine"> 189</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//get the new dependencies</span></pre></td></tr> -<tr> <td class="numLineCover"> 196</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Set<Dependency> dependencySet = <span class="keyword">new</span> HashSet<Dependency>();</pre></td></tr> -<tr> <td class="numLineCover"> 197</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  dependencySet.addAll(newDependencies);</pre></td></tr> -<tr> <td class="numLineCover"> 198</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  dependencySet.removeAll(dependencies);</pre></td></tr> -<tr> <td class="numLine"> 199</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 190</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Set<Dependency> dependencySet = <span class="keyword">new</span> HashSet<Dependency>();</pre></td></tr> +<tr> <td class="numLineCover"> 191</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  dependencySet.addAll(newDependencies);</pre></td></tr> +<tr> <td class="numLineCover"> 192</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  dependencySet.removeAll(dependencies);</pre></td></tr> +<tr> <td class="numLine"> 193</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 200</td> <td class="nbHitsCovered"><a title="Line 200: Conditional coverage 100% (2/2)."> 1</a></td> <td class="src"><pre class="src"> <a title="Line 200: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Dependency d : dependencySet) {</a></pre></td></tr> -<tr> <td class="numLine"> 201</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 194</td> <td class="nbHitsCovered"><a title="Line 194: Conditional coverage 100% (2/2)."> 6</a></td> <td class="src"><pre class="src"> <a title="Line 194: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Dependency d : dependencySet) {</a></pre></td></tr> +<tr> <td class="numLine"> 195</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//fix the dependency's display name and path</span></pre></td></tr> -<tr> <td class="numLineCover"> 202</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String displayPath = String.format(<span class="string">"%s%s"</span>,</pre></td></tr> -<tr> <td class="numLine"> 203</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 196</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String displayPath = String.format(<span class="string">"%s%s"</span>,</pre></td></tr> +<tr> <td class="numLine"> 197</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  dependency.getFilePath(),</pre></td></tr> -<tr> <td class="numLine"> 204</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 198</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  d.getActualFilePath().substring(tmpDir.getAbsolutePath().length()));</pre></td></tr> -<tr> <td class="numLineCover"> 205</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String displayName = String.format(<span class="string">"%s%s%s"</span>,</pre></td></tr> -<tr> <td class="numLine"> 206</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 199</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String displayName = String.format(<span class="string">"%s%s%s"</span>,</pre></td></tr> +<tr> <td class="numLine"> 200</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  dependency.getFileName(),</pre></td></tr> -<tr> <td class="numLine"> 207</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 201</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  File.separator,</pre></td></tr> -<tr> <td class="numLine"> 208</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 202</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  d.getFileName());</pre></td></tr> -<tr> <td class="numLineCover"> 209</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  d.setFilePath(displayPath);</pre></td></tr> -<tr> <td class="numLineCover"> 210</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  d.setFileName(displayName);</pre></td></tr> -<tr> <td class="numLine"> 211</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 203</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  d.setFilePath(displayPath);</pre></td></tr> +<tr> <td class="numLineCover"> 204</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  d.setFileName(displayName);</pre></td></tr> +<tr> <td class="numLine"> 205</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 212</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 206</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//TODO - can we get more evidence from the parent? EAR contains module name, etc.</span></pre></td></tr> -<tr> <td class="numLine"> 213</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 207</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 214</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 208</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//analyze the dependency (i.e. extract files) if it is a supported type.</span></pre></td></tr> -<tr> <td class="numLineCover"> 215</td> <td class="nbHitsUncovered"><a title="Line 215: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 5</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 215: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (<span class="keyword">this</span>.supportsExtension(d.getFileExtension()) && scanDepth < MAX_SCAN_DEPTH) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 216</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  scanDepth += 1;</pre></td></tr> -<tr> <td class="numLineCover"> 217</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  analyze(d, engine);</pre></td></tr> -<tr> <td class="numLineCover"> 218</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  scanDepth -= 1;</pre></td></tr> -<tr> <td class="numLine"> 219</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 209</td> <td class="nbHitsUncovered"><a title="Line 209: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 10</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 209: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (<span class="keyword">this</span>.supportsExtension(d.getFileExtension()) && scanDepth < MAX_SCAN_DEPTH) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 210</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  scanDepth += 1;</pre></td></tr> +<tr> <td class="numLineCover"> 211</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  analyze(d, engine);</pre></td></tr> +<tr> <td class="numLineCover"> 212</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  scanDepth -= 1;</pre></td></tr> +<tr> <td class="numLine"> 213</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 220</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 221</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 214</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 215</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 222</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  Collections.sort(engine.getDependencies());</pre></td></tr> -<tr> <td class="numLineCover"> 223</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 224</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 216</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  Collections.sort(engine.getDependencies());</pre></td></tr> +<tr> <td class="numLineCover"> 217</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 218</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 225</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 219</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 226</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 220</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"> 227</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 221</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 228</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 222</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"> 229</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 223</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"> 230</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 224</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 231</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 225</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"> 232</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  dirCount += 1;</pre></td></tr> -<tr> <td class="numLineCover"> 233</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File directory = <span class="keyword">new</span> File(tempFileLocation, String.valueOf(dirCount));</pre></td></tr> -<tr> <td class="numLineCover"> 234</td> <td class="nbHitsUncovered"><a title="Line 234: Conditional coverage 50% (1/2)."> 3</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 234: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!directory.mkdirs()) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 235</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(<span class="string">"Unable to create temp directory '"</span> + directory.getAbsolutePath() + <span class="string">"'."</span>);</span></pre></td></tr> -<tr> <td class="numLine"> 236</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 226</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  dirCount += 1;</pre></td></tr> +<tr> <td class="numLineCover"> 227</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File directory = <span class="keyword">new</span> File(tempFileLocation, String.valueOf(dirCount));</pre></td></tr> +<tr> <td class="numLine"> 228</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"> 229</td> <td class="nbHitsUncovered"><a title="Line 229: Conditional coverage 50% (1/2)."> 8</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 229: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (directory.exists()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 230</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"> 231</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 237</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">return</span> directory;</pre></td></tr> -<tr> <td class="numLine"> 238</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 232</td> <td class="nbHitsUncovered"><a title="Line 232: Conditional coverage 50% (1/2)."> 8</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 232: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!directory.mkdirs()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 233</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"> 234</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"> 235</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 236</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  <span class="keyword">return</span> directory;</pre></td></tr> +<tr> <td class="numLine"> 237</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 238</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 239</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 240</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 241</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 240</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * Extracts the contents of an archive into the specified directory.</span></pre></td></tr> -<tr> <td class="numLine"> 242</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 241</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 243</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 242</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * @param archive an archive file such as a WAR or EAR</span></pre></td></tr> +<tr> <td class="numLine"> 243</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param destination a directory to extract the contents to</span></pre></td></tr> <tr> <td class="numLine"> 244</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param extractTo a directory to extract the contents to</span></pre></td></tr> -<tr> <td class="numLine"> 245</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * @param engine the scanning engine</span></pre></td></tr> -<tr> <td class="numLine"> 246</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 245</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * @throws AnalysisException thrown if the archive is not found</span></pre></td></tr> -<tr> <td class="numLine"> 247</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 246</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 248</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> extractFiles(File archive, File extractTo, Engine engine) <span class="keyword">throws</span> AnalysisException {</pre></td></tr> -<tr> <td class="numLineCover"> 249</td> <td class="nbHitsUncovered"><a title="Line 249: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 3</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 249: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">if</span> (archive == <span class="keyword">null</span> || extractTo == <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 250</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"> 251</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 247</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> extractFiles(File archive, File destination, Engine engine) <span class="keyword">throws</span> AnalysisException {</pre></td></tr> +<tr> <td class="numLineCover"> 248</td> <td class="nbHitsUncovered"><a title="Line 248: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 8</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 248: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">if</span> (archive == <span class="keyword">null</span> || destination == <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 249</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"> 250</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 252</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 251</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 253</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  FileInputStream fis = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLine"> 254</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">//ZipInputStream zis = null;</span></pre></td></tr> -<tr> <td class="numLineCover"> 255</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  ZipArchiveInputStream zis = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLine"> 256</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 257</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 252</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  FileInputStream fis = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLine"> 253</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 258</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  fis = <span class="keyword">new</span> FileInputStream(archive);</pre></td></tr> -<tr> <td class="numLineCover"> 259</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (FileNotFoundException ex) {</span></pre></td></tr> -<tr> <td class="numLineCover"> 260</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(ArchiveAnalyzer.<span class="keyword">class</span>.getName()).log(Level.INFO, <span class="keyword">null</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 261</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(<span class="string">"Archive file was not found."</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 262</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 263</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  zis = <span class="keyword">new</span> ZipArchiveInputStream(<span class="keyword">new</span> BufferedInputStream(fis));</pre></td></tr> -<tr> <td class="numLine"> 264</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  ZipArchiveEntry entry;</pre></td></tr> -<tr> <td class="numLine"> 265</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 266</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 254</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  fis = <span class="keyword">new</span> FileInputStream(archive);</pre></td></tr> +<tr> <td class="numLineCover"> 255</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (FileNotFoundException ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 256</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(ArchiveAnalyzer.<span class="keyword">class</span>.getName()).log(Level.INFO, <span class="keyword">null</span>, ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 257</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(<span class="string">"Archive file was not found."</span>, ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 258</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 259</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String archiveExt = org.owasp.dependencycheck.utils.FileUtils.getFileExtension(archive.getName()).toLowerCase();</pre></td></tr> +<tr> <td class="numLine"> 260</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 267</td> <td class="nbHitsCovered"><a title="Line 267: Conditional coverage 100% (2/2)."> 166</a></td> <td class="src"><pre class="src"> <a title="Line 267: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> ((entry = zis.getNextZipEntry()) != <span class="keyword">null</span>) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 268</td> <td class="nbHitsCovered"><a title="Line 268: Conditional coverage 100% (2/2)."> 163</a></td> <td class="src"><pre class="src"> <a title="Line 268: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (entry.isDirectory()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 269</td> <td class="nbHitsCovered"> 25</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File d = <span class="keyword">new</span> File(extractTo, entry.getName());</pre></td></tr> -<tr> <td class="numLineCover"> 270</td> <td class="nbHitsUncovered"><a title="Line 270: Conditional coverage 50% (1/2)."> 25</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 270: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!d.mkdirs()) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 271</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(<span class="string">"Unable to create '"</span> + d.getAbsolutePath() + <span class="string">"'."</span>);</span></pre></td></tr> -<tr> <td class="numLine"> 272</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 273</td> <td class="nbHitsCovered"> 25</td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 274</td> <td class="nbHitsCovered"> 138</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File file = <span class="keyword">new</span> File(extractTo, entry.getName());</pre></td></tr> -<tr> <td class="numLineCover"> 275</td> <td class="nbHitsCovered"> 138</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String ext = org.owasp.dependencycheck.utils.FileUtils.getFileExtension(file.getName());</pre></td></tr> -<tr> <td class="numLineCover"> 276</td> <td class="nbHitsCovered"><a title="Line 276: Conditional coverage 100% (2/2)."> 138</a></td> <td class="src"><pre class="src"> <a title="Line 276: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (engine.supportsExtension(ext)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 277</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  BufferedOutputStream bos = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLine"> 278</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  FileOutputStream fos;</pre></td></tr> -<tr> <td class="numLine"> 279</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 280</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  fos = <span class="keyword">new</span> FileOutputStream(file);</pre></td></tr> -<tr> <td class="numLineCover"> 281</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  bos = <span class="keyword">new</span> BufferedOutputStream(fos, BUFFER_SIZE);</pre></td></tr> -<tr> <td class="numLine"> 282</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">int</span> count;</pre></td></tr> -<tr> <td class="numLineCover"> 283</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">byte</span> data[] = <span class="keyword">new</span> <span class="keyword">byte</span>[BUFFER_SIZE];</pre></td></tr> -<tr> <td class="numLineCover"> 284</td> <td class="nbHitsCovered"><a title="Line 284: Conditional coverage 100% (2/2)."> 1307</a></td> <td class="src"><pre class="src"> <a title="Line 284: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> ((count = zis.read(data, 0, BUFFER_SIZE)) != -1) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 285</td> <td class="nbHitsCovered"> 1302</td> <td class="src"><pre class="src">  bos.write(data, 0, count);</pre></td></tr> -<tr> <td class="numLine"> 286</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 287</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  bos.flush();</pre></td></tr> -<tr> <td class="numLineCover"> 288</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (FileNotFoundException ex) {</span></pre></td></tr> -<tr> <td class="numLineCover"> 289</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(ArchiveAnalyzer.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="keyword">null</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 290</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(<span class="string">"Unable to find file '"</span> + file.getName() + <span class="string">"'."</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 291</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"> 292</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(ArchiveAnalyzer.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="keyword">null</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 293</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(<span class="string">"IO Exception while parsing file '"</span> + file.getName() + <span class="string">"'."</span>, ex);</span></pre></td></tr> -<tr> <td class="numLine"> 294</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 295</td> <td class="nbHitsUncovered"><a title="Line 295: Conditional coverage 50% (1/2)."> 5</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 295: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (bos != <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLine"> 296</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 297</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  bos.close();</pre></td></tr> -<tr> <td class="numLineCover"> 298</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"> 299</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(ArchiveAnalyzer.<span class="keyword">class</span>.getName()).log(Level.FINEST, <span class="keyword">null</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 300</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 301</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 302</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 303</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 304</td> <td class="nbHitsCovered"> 138</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 305</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 261</td> <td class="nbHitsCovered"><a title="Line 261: Conditional coverage 100% (6/6) [each condition: 100%, 100%, 100%]."> 8</a></td> <td class="src"><pre class="src"> <a title="Line 261: Conditional coverage 100% (6/6) [each condition: 100%, 100%, 100%]."> <span class="keyword">if</span> (<span class="string">"zip"</span>.equals(archiveExt) || <span class="string">"war"</span>.equals(archiveExt) || <span class="string">"ear"</span>.equals(archiveExt)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 262</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  extractArchive(<span class="keyword">new</span> ZipArchiveInputStream(<span class="keyword">new</span> BufferedInputStream(fis)), destination, engine);</pre></td></tr> +<tr> <td class="numLineCover"> 263</td> <td class="nbHitsCovered"><a title="Line 263: Conditional coverage 100% (2/2)."> 5</a></td> <td class="src"><pre class="src"> <a title="Line 263: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (<span class="string">"tar"</span>.equals(archiveExt)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 264</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  extractArchive(<span class="keyword">new</span> TarArchiveInputStream(<span class="keyword">new</span> BufferedInputStream(fis)), destination, engine);</pre></td></tr> +<tr> <td class="numLineCover"> 265</td> <td class="nbHitsUncovered"><a title="Line 265: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 2</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 265: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> } <span class="keyword">else</span> <span class="keyword">if</span> (<span class="string">"gz"</span>.equals(archiveExt) || <span class="string">"tgz"</span>.equals(archiveExt)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 266</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String uncompressedName = GzipUtils.getUncompressedFilename(archive.getName());</pre></td></tr> +<tr> <td class="numLineCover"> 267</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String uncompressedExt = org.owasp.dependencycheck.utils.FileUtils.getFileExtension(uncompressedName).toLowerCase();</pre></td></tr> +<tr> <td class="numLineCover"> 268</td> <td class="nbHitsUncovered"><a title="Line 268: Conditional coverage 50% (1/2)."> 2</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 268: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (engine.supportsExtension(uncompressedExt)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 269</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  decompressFile(<span class="keyword">new</span> GzipCompressorInputStream(<span class="keyword">new</span> BufferedInputStream(fis)), <span class="keyword">new</span> File(destination, uncompressedName));</pre></td></tr> +<tr> <td class="numLine"> 270</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 271</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 306</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"> 307</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">"Exception reading archive '%s'."</span>, archive.getName());</span></pre></td></tr> -<tr> <td class="numLineCover"> 308</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(ArchiveAnalyzer.<span class="keyword">class</span>.getName()).log(Level.WARNING, msg);</span></pre></td></tr> -<tr> <td class="numLineCover"> 309</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(ArchiveAnalyzer.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="keyword">null</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 310</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, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 311</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (Throwable ex) {</span></pre></td></tr> -<tr> <td class="numLineCover"> 312</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">"Exception reading archive '%s'."</span>, archive.getName());</span></pre></td></tr> -<tr> <td class="numLineCover"> 313</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(ArchiveAnalyzer.<span class="keyword">class</span>.getName()).log(Level.WARNING, msg);</span></pre></td></tr> -<tr> <td class="numLineCover"> 314</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(ArchiveAnalyzer.<span class="keyword">class</span>.getName()).log(Level.WARNING, <span class="keyword">null</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 315</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, ex);</span></pre></td></tr> -<tr> <td class="numLine"> 316</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 272</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (ArchiveExtractionException ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 273</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">"Exception extracting archive '%s'."</span>, archive.getName());</span></pre></td></tr> +<tr> <td class="numLineCover"> 274</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(ArchiveAnalyzer.<span class="keyword">class</span>.getName()).log(Level.WARNING, msg);</span></pre></td></tr> +<tr> <td class="numLineCover"> 275</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(ArchiveAnalyzer.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="keyword">null</span>, ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 276</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"> 277</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">"Exception reading archive '%s'."</span>, archive.getName());</span></pre></td></tr> +<tr> <td class="numLineCover"> 278</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(ArchiveAnalyzer.<span class="keyword">class</span>.getName()).log(Level.WARNING, msg);</span></pre></td></tr> +<tr> <td class="numLineCover"> 279</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(ArchiveAnalyzer.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="keyword">null</span>, ex);</span></pre></td></tr> +<tr> <td class="numLine"> 280</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 317</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">try</span> {</span></pre></td></tr> -<tr> <td class="numLineCover"> 318</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  zis.close();</pre></td></tr> -<tr> <td class="numLineCover"> 319</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"> 320</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(ArchiveAnalyzer.<span class="keyword">class</span>.getName()).log(Level.FINEST, <span class="keyword">null</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 321</td> <td class="nbHitsCovered"> 3</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></pre></td></tr> -<tr> <td class="numLineCover"> 323</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 324</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 281</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">try</span> {</span></pre></td></tr> +<tr> <td class="numLineCover"> 282</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  fis.close();</pre></td></tr> +<tr> <td class="numLineCover"> 283</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"> 284</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(ArchiveAnalyzer.<span class="keyword">class</span>.getName()).log(Level.FINEST, <span class="keyword">null</span>, ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 285</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 286</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLineCover"> 287</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 288</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 289</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 290</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Extracts files from an archive.</span></pre></td></tr> +<tr> <td class="numLine"> 291</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 292</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param input the archive to extract files from</span></pre></td></tr> +<tr> <td class="numLine"> 293</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param destination the location to write the files too</span></pre></td></tr> +<tr> <td class="numLine"> 294</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param engine the dependency-check engine</span></pre></td></tr> +<tr> <td class="numLine"> 295</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @throws ArchiveExtractionException thrown if there is an exception</span></pre></td></tr> +<tr> <td class="numLine"> 296</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * extracting files from the archive</span></pre></td></tr> +<tr> <td class="numLine"> 297</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 298</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> extractArchive(ArchiveInputStream input, File destination, Engine engine) <span class="keyword">throws</span> ArchiveExtractionException {</pre></td></tr> +<tr> <td class="numLine"> 299</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  ArchiveEntry entry;</pre></td></tr> +<tr> <td class="numLine"> 300</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 301</td> <td class="nbHitsCovered"><a title="Line 301: Conditional coverage 100% (2/2)."> 172</a></td> <td class="src"><pre class="src"> <a title="Line 301: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> ((entry = input.getNextEntry()) != <span class="keyword">null</span>) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 302</td> <td class="nbHitsCovered"><a title="Line 302: Conditional coverage 100% (2/2)."> 166</a></td> <td class="src"><pre class="src"> <a title="Line 302: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (entry.isDirectory()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 303</td> <td class="nbHitsCovered"> 25</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File d = <span class="keyword">new</span> File(destination, entry.getName());</pre></td></tr> +<tr> <td class="numLineCover"> 304</td> <td class="nbHitsUncovered"><a title="Line 304: Conditional coverage 50% (1/2)."> 25</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 304: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!d.exists()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 305</td> <td class="nbHitsUncovered"><a title="Line 305: Conditional coverage 50% (1/2)."> 25</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 305: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!d.mkdirs()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 306</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 '%s'."</span>, d.getAbsolutePath());</span></pre></td></tr> +<tr> <td class="numLineCover"> 307</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"> 308</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 309</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 310</td> <td class="nbHitsCovered"> 25</td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 311</td> <td class="nbHitsCovered"> 141</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File file = <span class="keyword">new</span> File(destination, entry.getName());</pre></td></tr> +<tr> <td class="numLineCover"> 312</td> <td class="nbHitsCovered"> 141</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String ext = org.owasp.dependencycheck.utils.FileUtils.getFileExtension(file.getName());</pre></td></tr> +<tr> <td class="numLineCover"> 313</td> <td class="nbHitsCovered"><a title="Line 313: Conditional coverage 100% (2/2)."> 141</a></td> <td class="src"><pre class="src"> <a title="Line 313: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (engine.supportsExtension(ext)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 314</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  BufferedOutputStream bos = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLine"> 315</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  FileOutputStream fos;</pre></td></tr> +<tr> <td class="numLine"> 316</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 317</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  fos = <span class="keyword">new</span> FileOutputStream(file);</pre></td></tr> +<tr> <td class="numLineCover"> 318</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  bos = <span class="keyword">new</span> BufferedOutputStream(fos, BUFFER_SIZE);</pre></td></tr> +<tr> <td class="numLine"> 319</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">int</span> count;</pre></td></tr> +<tr> <td class="numLineCover"> 320</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">byte</span> data[] = <span class="keyword">new</span> <span class="keyword">byte</span>[BUFFER_SIZE];</pre></td></tr> +<tr> <td class="numLineCover"> 321</td> <td class="nbHitsCovered"><a title="Line 321: Conditional coverage 100% (2/2)."> 1709</a></td> <td class="src"><pre class="src"> <a title="Line 321: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> ((count = input.read(data, 0, BUFFER_SIZE)) != -1) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 322</td> <td class="nbHitsCovered"> 1701</td> <td class="src"><pre class="src">  bos.write(data, 0, count);</pre></td></tr> +<tr> <td class="numLine"> 323</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 324</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  bos.flush();</pre></td></tr> +<tr> <td class="numLineCover"> 325</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (FileNotFoundException ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 326</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(ArchiveAnalyzer.<span class="keyword">class</span></span></pre></td></tr> +<tr> <td class="numLine"> 327</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  .getName()).log(Level.FINE, <span class="keyword">null</span>, ex);</pre></td></tr> +<tr> <td class="numLineCover"> 328</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 find file '%s'."</span>, file.getName());</span></pre></td></tr> +<tr> <td class="numLineCover"> 329</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, ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 330</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"> 331</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(ArchiveAnalyzer.<span class="keyword">class</span></span></pre></td></tr> +<tr> <td class="numLine"> 332</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  .getName()).log(Level.FINE, <span class="keyword">null</span>, ex);</pre></td></tr> +<tr> <td class="numLineCover"> 333</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">"IO Exception while parsing file '%s'."</span>, file.getName());</span></pre></td></tr> +<tr> <td class="numLineCover"> 334</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, ex);</span></pre></td></tr> +<tr> <td class="numLine"> 335</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 336</td> <td class="nbHitsUncovered"><a title="Line 336: Conditional coverage 50% (1/2)."> 8</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 336: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (bos != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLine"> 337</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 338</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  bos.close();</pre></td></tr> +<tr> <td class="numLineCover"> 339</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"> 340</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(ArchiveAnalyzer.<span class="keyword">class</span></span></pre></td></tr> +<tr> <td class="numLine"> 341</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  .getName()).log(Level.FINEST, <span class="keyword">null</span>, ex);</pre></td></tr> +<tr> <td class="numLineCover"> 342</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 343</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 344</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 345</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 346</td> <td class="nbHitsCovered"> 141</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 347</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 348</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"> 349</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> ArchiveExtractionException(ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 350</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (Throwable ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 351</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> ArchiveExtractionException(ex);</span></pre></td></tr> +<tr> <td class="numLine"> 352</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 353</td> <td class="nbHitsUncovered"><a title="Line 353: Conditional coverage 50% (1/2)."> 6</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 353: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (input != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLine"> 354</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 355</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  input.close();</pre></td></tr> +<tr> <td class="numLineCover"> 356</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"> 357</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(ArchiveAnalyzer.<span class="keyword">class</span>.getName()).log(Level.FINEST, <span class="keyword">null</span>, ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 358</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 359</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 360</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 361</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 362</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 363</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 364</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Decompresses a file.</span></pre></td></tr> +<tr> <td class="numLine"> 365</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 366</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param inputStream the compressed file</span></pre></td></tr> +<tr> <td class="numLine"> 367</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param outputFile the location to write the decompressed file</span></pre></td></tr> +<tr> <td class="numLine"> 368</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @throws ArchiveExtractionException thrown if there is an exception</span></pre></td></tr> +<tr> <td class="numLine"> 369</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * decompressing the file</span></pre></td></tr> +<tr> <td class="numLine"> 370</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 371</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> decompressFile(CompressorInputStream inputStream, File outputFile) <span class="keyword">throws</span> ArchiveExtractionException {</pre></td></tr> +<tr> <td class="numLineCover"> 372</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  FileOutputStream out = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLine"> 373</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 374</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  out = <span class="keyword">new</span> FileOutputStream(outputFile);</pre></td></tr> +<tr> <td class="numLineCover"> 375</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">byte</span>[] buffer = <span class="keyword">new</span> <span class="keyword">byte</span>[BUFFER_SIZE];</pre></td></tr> +<tr> <td class="numLineCover"> 376</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  <span class="keyword">int</span> n = 0;</pre></td></tr> +<tr> <td class="numLineCover"> 377</td> <td class="nbHitsCovered"><a title="Line 377: Conditional coverage 100% (2/2)."> 272</a></td> <td class="src"><pre class="src"> <a title="Line 377: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (-1 != (n = inputStream.read(buffer))) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 378</td> <td class="nbHitsCovered"> 270</td> <td class="src"><pre class="src">  out.write(buffer, 0, n);</pre></td></tr> +<tr> <td class="numLine"> 379</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 380</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (FileNotFoundException ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 381</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(ArchiveAnalyzer.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="keyword">null</span>, ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 382</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> ArchiveExtractionException(ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 383</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"> 384</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(ArchiveAnalyzer.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="keyword">null</span>, ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 385</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> ArchiveExtractionException(ex);</span></pre></td></tr> +<tr> <td class="numLine"> 386</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 387</td> <td class="nbHitsUncovered"><a title="Line 387: Conditional coverage 50% (1/2)."> 2</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 387: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (out != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLine"> 388</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 389</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  out.close();</pre></td></tr> +<tr> <td class="numLineCover"> 390</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"> 391</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(ArchiveAnalyzer.<span class="keyword">class</span>.getName()).log(Level.FINEST, <span class="keyword">null</span>, ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 392</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 393</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 394</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 395</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 396</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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.CPEAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.CPEAnalyzer.html index c35c07950..90f91ab92 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.CPEAnalyzer.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.CPEAnalyzer.html @@ -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.CPEAnalyzer.html">CPEAnalyzer</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">88%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:88px"><span class="text">174/196</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">82%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:82px"><span class="text">105/128</span></div></div></td></tr></table></td><td class="value"><span class="hidden">4.0625;</span>4.062</td></tr> + <tr><td><a href="org.owasp.dependencycheck.analyzer.CPEAnalyzer.html">CPEAnalyzer</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">89%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:89px"><span class="text">175/196</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">84%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:84px"><span class="text">108/128</span></div></div></td></tr></table></td><td class="value"><span class="hidden">4.0625;</span>4.062</td></tr> <tr><td><a href="org.owasp.dependencycheck.analyzer.CPEAnalyzer.html">CPEAnalyzer$IdentifierConfidence</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">100%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:100px"><span class="text">3/3</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"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></td><td class="percentgraph"><div class="percentgraph"><div class="na" style="width:100px"><span class="text"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></span></div></div></td></tr></table></td><td class="value"><span class="hidden">4.0625;</span>4.062</td></tr> <tr><td><a href="org.owasp.dependencycheck.analyzer.CPEAnalyzer.html">CPEAnalyzer$IdentifierMatch</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">38%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:38px"><span class="text">15/39</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">16%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:16px"><span class="text">4/24</span></div></div></td></tr></table></td><td class="value"><span class="hidden">4.0625;</span>4.062</td></tr> @@ -222,20 +222,20 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 102</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> open() <span class="keyword">throws</span> IOException, DatabaseException {</pre></td></tr> -<tr> <td class="numLineCover"> 103</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  cpe = <span class="keyword">new</span> CpeIndexReader();</pre></td></tr> -<tr> <td class="numLineCover"> 104</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  cpe.open();</pre></td></tr> -<tr> <td class="numLineCover"> 105</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  cve = <span class="keyword">new</span> CveDB();</pre></td></tr> +<tr> <td class="numLineCover"> 103</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  cpe = <span class="keyword">new</span> CpeIndexReader();</pre></td></tr> +<tr> <td class="numLineCover"> 104</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  cpe.open();</pre></td></tr> +<tr> <td class="numLineCover"> 105</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  cve = <span class="keyword">new</span> CveDB();</pre></td></tr> <tr> <td class="numLine"> 106</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 107</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  cve.open();</pre></td></tr> +<tr> <td class="numLineCover"> 107</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  cve.open();</pre></td></tr> <tr> <td class="numLineCover"> 108</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (SQLException ex) {</span></pre></td></tr> <tr> <td class="numLineCover"> 109</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(CPEAnalyzer.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="keyword">null</span>, ex);</span></pre></td></tr> <tr> <td class="numLineCover"> 110</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> DatabaseException(<span class="string">"Unable to open the cve db"</span>, ex);</span></pre></td></tr> <tr> <td class="numLineCover"> 111</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (ClassNotFoundException ex) {</span></pre></td></tr> <tr> <td class="numLineCover"> 112</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(CPEAnalyzer.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="keyword">null</span>, ex);</span></pre></td></tr> <tr> <td class="numLineCover"> 113</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> DatabaseException(<span class="string">"Unable to open the cve db"</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 114</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 115</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 114</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 115</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 116</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 117</td> <td class="nbHits"> </td> @@ -248,15 +248,15 @@ <td class="src"><pre class="src">  @Override</pre></td></tr> <tr> <td class="numLine"> 121</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"> 122</td> <td class="nbHitsUncovered"><a title="Line 122: Conditional coverage 50% (1/2)."> 10</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 122: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (cpe != <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 123</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  cpe.close();</pre></td></tr> +<tr> <td class="numLineCover"> 122</td> <td class="nbHitsUncovered"><a title="Line 122: Conditional coverage 50% (1/2)."> 12</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 122: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (cpe != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 123</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  cpe.close();</pre></td></tr> <tr> <td class="numLine"> 124</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 125</td> <td class="nbHitsUncovered"><a title="Line 125: Conditional coverage 50% (1/2)."> 10</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 125: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (cve != <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 126</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  cve.close();</pre></td></tr> +<tr> <td class="numLineCover"> 125</td> <td class="nbHitsUncovered"><a title="Line 125: Conditional coverage 50% (1/2)."> 12</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 125: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (cve != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 126</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  cve.close();</pre></td></tr> <tr> <td class="numLine"> 127</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 128</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 128</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 129</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 130</td> <td class="nbHits"> </td> @@ -320,45 +320,45 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 162</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">protected</span> <span class="keyword">void</span> determineCPE(Dependency dependency) <span class="keyword">throws</span> CorruptIndexException, IOException, ParseException {</pre></td></tr> -<tr> <td class="numLineCover"> 163</td> <td class="nbHitsCovered"> 13</td> <td class="src"><pre class="src">  Confidence vendorConf = Confidence.HIGHEST;</pre></td></tr> -<tr> <td class="numLineCover"> 164</td> <td class="nbHitsCovered"> 13</td> <td class="src"><pre class="src">  Confidence productConf = Confidence.HIGHEST;</pre></td></tr> +<tr> <td class="numLineCover"> 163</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  Confidence vendorConf = Confidence.HIGHEST;</pre></td></tr> +<tr> <td class="numLineCover"> 164</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  Confidence productConf = Confidence.HIGHEST;</pre></td></tr> <tr> <td class="numLine"> 165</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 166</td> <td class="nbHitsCovered"> 13</td> <td class="src"><pre class="src">  String vendors = addEvidenceWithoutDuplicateTerms(<span class="string">""</span>, dependency.getVendorEvidence(), vendorConf);</pre></td></tr> -<tr> <td class="numLineCover"> 167</td> <td class="nbHitsCovered"> 13</td> <td class="src"><pre class="src">  String products = addEvidenceWithoutDuplicateTerms(<span class="string">""</span>, dependency.getProductEvidence(), productConf);</pre></td></tr> +<tr> <td class="numLineCover"> 166</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  String vendors = addEvidenceWithoutDuplicateTerms(<span class="string">""</span>, dependency.getVendorEvidence(), vendorConf);</pre></td></tr> +<tr> <td class="numLineCover"> 167</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  String products = addEvidenceWithoutDuplicateTerms(<span class="string">""</span>, dependency.getProductEvidence(), productConf);</pre></td></tr> <tr> <td class="numLine"> 168</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 169</td> <td class="nbHitsCovered"> 13</td> <td class="src"><pre class="src">  <span class="keyword">int</span> ctr = 0;</pre></td></tr> +<tr> <td class="numLineCover"> 169</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  <span class="keyword">int</span> ctr = 0;</pre></td></tr> <tr> <td class="numLine"> 170</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">do</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 171</td> <td class="nbHitsUncovered"><a title="Line 171: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 52</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 171: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">if</span> (!vendors.isEmpty() && !products.isEmpty()) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 172</td> <td class="nbHitsCovered"> 52</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<IndexEntry> entries = searchCPE(vendors, products, dependency.getProductEvidence().getWeighting(),</pre></td></tr> +<tr> <td class="numLineCover"> 171</td> <td class="nbHitsUncovered"><a title="Line 171: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 76</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 171: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (!vendors.isEmpty() && !products.isEmpty()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 172</td> <td class="nbHitsCovered"> 72</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<IndexEntry> entries = searchCPE(vendors, products, dependency.getProductEvidence().getWeighting(),</pre></td></tr> <tr> <td class="numLine"> 173</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  dependency.getVendorEvidence().getWeighting());</pre></td></tr> <tr> <td class="numLine"> 174</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 175</td> <td class="nbHitsCovered"><a title="Line 175: Conditional coverage 100% (2/2)."> 52</a></td> <td class="src"><pre class="src"> <a title="Line 175: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (IndexEntry e : entries) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 176</td> <td class="nbHitsCovered"><a title="Line 176: Conditional coverage 100% (2/2)."> 622</a></td> <td class="src"><pre class="src"> <a title="Line 176: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (verifyEntry(e, dependency)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 177</td> <td class="nbHitsCovered"> 51</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String vendor = e.getVendor();</pre></td></tr> -<tr> <td class="numLineCover"> 178</td> <td class="nbHitsCovered"> 51</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String product = e.getProduct();</pre></td></tr> -<tr> <td class="numLineCover"> 179</td> <td class="nbHitsCovered"> 51</td> <td class="src"><pre class="src">  determineIdentifiers(dependency, vendor, product);</pre></td></tr> -<tr> <td class="numLineCover"> 180</td> <td class="nbHitsCovered"> 622</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 175</td> <td class="nbHitsCovered"><a title="Line 175: Conditional coverage 100% (2/2)."> 72</a></td> <td class="src"><pre class="src"> <a title="Line 175: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (IndexEntry e : entries) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 176</td> <td class="nbHitsCovered"><a title="Line 176: Conditional coverage 100% (2/2)."> 722</a></td> <td class="src"><pre class="src"> <a title="Line 176: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (verifyEntry(e, dependency)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 177</td> <td class="nbHitsCovered"> 71</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String vendor = e.getVendor();</pre></td></tr> +<tr> <td class="numLineCover"> 178</td> <td class="nbHitsCovered"> 71</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String product = e.getProduct();</pre></td></tr> +<tr> <td class="numLineCover"> 179</td> <td class="nbHitsCovered"> 71</td> <td class="src"><pre class="src">  determineIdentifiers(dependency, vendor, product);</pre></td></tr> +<tr> <td class="numLineCover"> 180</td> <td class="nbHitsCovered"> 722</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 181</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 182</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 183</td> <td class="nbHitsCovered"> 52</td> <td class="src"><pre class="src">  vendorConf = reduceConfidence(vendorConf);</pre></td></tr> -<tr> <td class="numLineCover"> 184</td> <td class="nbHitsCovered"><a title="Line 184: Conditional coverage 100% (2/2)."> 52</a></td> <td class="src"><pre class="src"> <a title="Line 184: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (dependency.getVendorEvidence().contains(vendorConf)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 185</td> <td class="nbHitsCovered"> 49</td> <td class="src"><pre class="src">  vendors = addEvidenceWithoutDuplicateTerms(vendors, dependency.getVendorEvidence(), vendorConf);</pre></td></tr> +<tr> <td class="numLineCover"> 183</td> <td class="nbHitsCovered"> 76</td> <td class="src"><pre class="src">  vendorConf = reduceConfidence(vendorConf);</pre></td></tr> +<tr> <td class="numLineCover"> 184</td> <td class="nbHitsCovered"><a title="Line 184: Conditional coverage 100% (2/2)."> 76</a></td> <td class="src"><pre class="src"> <a title="Line 184: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (dependency.getVendorEvidence().contains(vendorConf)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 185</td> <td class="nbHitsCovered"> 61</td> <td class="src"><pre class="src">  vendors = addEvidenceWithoutDuplicateTerms(vendors, dependency.getVendorEvidence(), vendorConf);</pre></td></tr> <tr> <td class="numLine"> 186</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 187</td> <td class="nbHitsCovered"> 52</td> <td class="src"><pre class="src">  productConf = reduceConfidence(productConf);</pre></td></tr> -<tr> <td class="numLineCover"> 188</td> <td class="nbHitsUncovered"><a title="Line 188: Conditional coverage 50% (1/2)."> 52</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 188: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (dependency.getProductEvidence().contains(productConf)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 189</td> <td class="nbHitsCovered"> 52</td> <td class="src"><pre class="src">  products = addEvidenceWithoutDuplicateTerms(products, dependency.getProductEvidence(), productConf);</pre></td></tr> +<tr> <td class="numLineCover"> 187</td> <td class="nbHitsCovered"> 76</td> <td class="src"><pre class="src">  productConf = reduceConfidence(productConf);</pre></td></tr> +<tr> <td class="numLineCover"> 188</td> <td class="nbHitsCovered"><a title="Line 188: Conditional coverage 100% (2/2)."> 76</a></td> <td class="src"><pre class="src"> <a title="Line 188: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (dependency.getProductEvidence().contains(productConf)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 189</td> <td class="nbHitsCovered"> 64</td> <td class="src"><pre class="src">  products = addEvidenceWithoutDuplicateTerms(products, dependency.getProductEvidence(), productConf);</pre></td></tr> <tr> <td class="numLine"> 190</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 191</td> <td class="nbHitsCovered"><a title="Line 191: Conditional coverage 100% (2/2)."> 52</a></td> <td class="src"><pre class="src"> <a title="Line 191: Conditional coverage 100% (2/2)."> } <span class="keyword">while</span> ((++ctr) < 4);</a></pre></td></tr> -<tr> <td class="numLineCover"> 192</td> <td class="nbHitsCovered"> 13</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 191</td> <td class="nbHitsCovered"><a title="Line 191: Conditional coverage 100% (2/2)."> 76</a></td> <td class="src"><pre class="src"> <a title="Line 191: Conditional coverage 100% (2/2)."> } <span class="keyword">while</span> ((++ctr) < 4);</a></pre></td></tr> +<tr> <td class="numLineCover"> 192</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 193</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 194</td> <td class="nbHits"> </td> @@ -385,31 +385,31 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 205</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> String addEvidenceWithoutDuplicateTerms(<span class="keyword">final</span> String text, <span class="keyword">final</span> EvidenceCollection ec, Confidence confidenceFilter) {</pre></td></tr> -<tr> <td class="numLineCover"> 206</td> <td class="nbHitsUncovered"><a title="Line 206: Conditional coverage 50% (1/2)."> 127</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 206: Conditional coverage 50% (1/2)."> <span class="keyword">final</span> String txt = (text == <span class="keyword">null</span>) ? <span class="string">""</span> : text;</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 207</td> <td class="nbHitsCovered"> 127</td> <td class="src"><pre class="src">  <span class="keyword">final</span> StringBuilder sb = <span class="keyword">new</span> StringBuilder(txt.length() + (20 * ec.size()));</pre></td></tr> -<tr> <td class="numLineCover"> 208</td> <td class="nbHitsCovered"> 127</td> <td class="src"><pre class="src">  sb.append(<span class="string">' '</span>).append(txt).append(<span class="string">' '</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 209</td> <td class="nbHitsCovered"><a title="Line 209: Conditional coverage 100% (2/2)."> 127</a></td> <td class="src"><pre class="src"> <a title="Line 209: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence e : ec.iterator(confidenceFilter)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 210</td> <td class="nbHitsCovered"> 309</td> <td class="src"><pre class="src">  String value = e.getValue();</pre></td></tr> +<tr> <td class="numLineCover"> 206</td> <td class="nbHitsUncovered"><a title="Line 206: Conditional coverage 50% (1/2)."> 163</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 206: Conditional coverage 50% (1/2)."> <span class="keyword">final</span> String txt = (text == <span class="keyword">null</span>) ? <span class="string">""</span> : text;</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 207</td> <td class="nbHitsCovered"> 163</td> <td class="src"><pre class="src">  <span class="keyword">final</span> StringBuilder sb = <span class="keyword">new</span> StringBuilder(txt.length() + (20 * ec.size()));</pre></td></tr> +<tr> <td class="numLineCover"> 208</td> <td class="nbHitsCovered"> 163</td> <td class="src"><pre class="src">  sb.append(<span class="string">' '</span>).append(txt).append(<span class="string">' '</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 209</td> <td class="nbHitsCovered"><a title="Line 209: Conditional coverage 100% (2/2)."> 163</a></td> <td class="src"><pre class="src"> <a title="Line 209: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence e : ec.iterator(confidenceFilter)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 210</td> <td class="nbHitsCovered"> 355</td> <td class="src"><pre class="src">  String value = e.getValue();</pre></td></tr> <tr> <td class="numLine"> 211</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 212</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//hack to get around the fact that lucene does a really good job of recognizing domains and not</span></pre></td></tr> <tr> <td class="numLine"> 213</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">// splitting them. TODO - put together a better lucene analyzer specific to the domain.</span></pre></td></tr> -<tr> <td class="numLineCover"> 214</td> <td class="nbHitsCovered"><a title="Line 214: Conditional coverage 100% (2/2)."> 309</a></td> <td class="src"><pre class="src"> <a title="Line 214: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (value.startsWith(<span class="string">"http://"</span>)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 214</td> <td class="nbHitsCovered"><a title="Line 214: Conditional coverage 100% (2/2)."> 355</a></td> <td class="src"><pre class="src"> <a title="Line 214: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (value.startsWith(<span class="string">"http://"</span>)) {</a></pre></td></tr> <tr> <td class="numLineCover"> 215</td> <td class="nbHitsCovered"> 32</td> <td class="src"><pre class="src">  value = value.substring(7).replaceAll(<span class="string">"\\."</span>, <span class="string">" "</span>);</pre></td></tr> <tr> <td class="numLine"> 216</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 217</td> <td class="nbHitsUncovered"><a title="Line 217: Conditional coverage 50% (1/2)."> 309</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 217: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (value.startsWith(<span class="string">"https://"</span>)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 217</td> <td class="nbHitsUncovered"><a title="Line 217: Conditional coverage 50% (1/2)."> 355</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 217: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (value.startsWith(<span class="string">"https://"</span>)) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 218</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  value = value.substring(8).replaceAll(<span class="string">"\\."</span>, <span class="string">" "</span>);</span></pre></td></tr> <tr> <td class="numLine"> 219</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 220</td> <td class="nbHitsCovered"><a title="Line 220: Conditional coverage 100% (2/2)."> 309</a></td> <td class="src"><pre class="src"> <a title="Line 220: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (sb.indexOf(<span class="string">" "</span> + value + <span class="string">" "</span>) < 0) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 221</td> <td class="nbHitsCovered"> 200</td> <td class="src"><pre class="src">  sb.append(value).append(<span class="string">' '</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 220</td> <td class="nbHitsCovered"><a title="Line 220: Conditional coverage 100% (2/2)."> 355</a></td> <td class="src"><pre class="src"> <a title="Line 220: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (sb.indexOf(<span class="string">" "</span> + value + <span class="string">" "</span>) < 0) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 221</td> <td class="nbHitsCovered"> 222</td> <td class="src"><pre class="src">  sb.append(value).append(<span class="string">' '</span>);</pre></td></tr> <tr> <td class="numLine"> 222</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 223</td> <td class="nbHitsCovered"> 309</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 224</td> <td class="nbHitsCovered"> 127</td> <td class="src"><pre class="src">  <span class="keyword">return</span> sb.toString().trim();</pre></td></tr> +<tr> <td class="numLineCover"> 223</td> <td class="nbHitsCovered"> 355</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 224</td> <td class="nbHitsCovered"> 163</td> <td class="src"><pre class="src">  <span class="keyword">return</span> sb.toString().trim();</pre></td></tr> <tr> <td class="numLine"> 225</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 226</td> <td class="nbHits"> </td> @@ -430,13 +430,13 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 234</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> Confidence reduceConfidence(<span class="keyword">final</span> Confidence c) {</pre></td></tr> -<tr> <td class="numLineCover"> 235</td> <td class="nbHitsCovered"><a title="Line 235: Conditional coverage 100% (2/2)."> 104</a></td> <td class="src"><pre class="src"> <a title="Line 235: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (c == Confidence.HIGHEST) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 236</td> <td class="nbHitsCovered"> 26</td> <td class="src"><pre class="src">  <span class="keyword">return</span> Confidence.HIGH;</pre></td></tr> -<tr> <td class="numLineCover"> 237</td> <td class="nbHitsCovered"><a title="Line 237: Conditional coverage 100% (2/2)."> 78</a></td> <td class="src"><pre class="src"> <a title="Line 237: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (c == Confidence.HIGH) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 238</td> <td class="nbHitsCovered"> 26</td> <td class="src"><pre class="src">  <span class="keyword">return</span> Confidence.MEDIUM;</pre></td></tr> +<tr> <td class="numLineCover"> 235</td> <td class="nbHitsCovered"><a title="Line 235: Conditional coverage 100% (2/2)."> 152</a></td> <td class="src"><pre class="src"> <a title="Line 235: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (c == Confidence.HIGHEST) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 236</td> <td class="nbHitsCovered"> 38</td> <td class="src"><pre class="src">  <span class="keyword">return</span> Confidence.HIGH;</pre></td></tr> +<tr> <td class="numLineCover"> 237</td> <td class="nbHitsCovered"><a title="Line 237: Conditional coverage 100% (2/2)."> 114</a></td> <td class="src"><pre class="src"> <a title="Line 237: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (c == Confidence.HIGH) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 238</td> <td class="nbHitsCovered"> 38</td> <td class="src"><pre class="src">  <span class="keyword">return</span> Confidence.MEDIUM;</pre></td></tr> <tr> <td class="numLine"> 239</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 240</td> <td class="nbHitsCovered"> 52</td> <td class="src"><pre class="src">  <span class="keyword">return</span> Confidence.LOW;</pre></td></tr> +<tr> <td class="numLineCover"> 240</td> <td class="nbHitsCovered"> 76</td> <td class="src"><pre class="src">  <span class="keyword">return</span> Confidence.LOW;</pre></td></tr> <tr> <td class="numLine"> 241</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 242</td> <td class="nbHits"> </td> @@ -485,23 +485,23 @@ <td class="src"><pre class="src">  Set<String> vendorWeightings, Set<String> productWeightings)</pre></td></tr> <tr> <td class="numLine"> 264</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">throws</span> CorruptIndexException, IOException, ParseException {</pre></td></tr> -<tr> <td class="numLineCover"> 265</td> <td class="nbHitsCovered"> 53</td> <td class="src"><pre class="src">  <span class="keyword">final</span> ArrayList<IndexEntry> ret = <span class="keyword">new</span> ArrayList<IndexEntry>(MAX_QUERY_RESULTS);</pre></td></tr> +<tr> <td class="numLineCover"> 265</td> <td class="nbHitsCovered"> 73</td> <td class="src"><pre class="src">  <span class="keyword">final</span> ArrayList<IndexEntry> ret = <span class="keyword">new</span> ArrayList<IndexEntry>(MAX_QUERY_RESULTS);</pre></td></tr> <tr> <td class="numLine"> 266</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 267</td> <td class="nbHitsCovered"> 53</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String searchString = buildSearch(vendor, product, vendorWeightings, productWeightings);</pre></td></tr> -<tr> <td class="numLineCover"> 268</td> <td class="nbHitsUncovered"><a title="Line 268: Conditional coverage 50% (1/2)."> 53</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 268: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (searchString == <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 267</td> <td class="nbHitsCovered"> 73</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String searchString = buildSearch(vendor, product, vendorWeightings, productWeightings);</pre></td></tr> +<tr> <td class="numLineCover"> 268</td> <td class="nbHitsUncovered"><a title="Line 268: Conditional coverage 50% (1/2)."> 73</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 268: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (searchString == <span class="keyword">null</span>) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 269</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> ret;</span></pre></td></tr> <tr> <td class="numLine"> 270</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 271</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 272</td> <td class="nbHitsCovered"> 53</td> <td class="src"><pre class="src">  <span class="keyword">final</span> TopDocs docs = cpe.search(searchString, MAX_QUERY_RESULTS);</pre></td></tr> -<tr> <td class="numLineCover"> 273</td> <td class="nbHitsCovered"><a title="Line 273: Conditional coverage 100% (2/2)."> 1083</a></td> <td class="src"><pre class="src"> <a title="Line 273: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (ScoreDoc d : docs.scoreDocs) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 274</td> <td class="nbHitsCovered"><a title="Line 274: Conditional coverage 100% (2/2)."> 1030</a></td> <td class="src"><pre class="src"> <a title="Line 274: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (d.score >= 0.08) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 275</td> <td class="nbHitsCovered"> 640</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Document doc = cpe.getDocument(d.doc);</pre></td></tr> -<tr> <td class="numLineCover"> 276</td> <td class="nbHitsCovered"> 640</td> <td class="src"><pre class="src">  <span class="keyword">final</span> IndexEntry entry = <span class="keyword">new</span> IndexEntry();</pre></td></tr> -<tr> <td class="numLineCover"> 277</td> <td class="nbHitsCovered"> 640</td> <td class="src"><pre class="src">  entry.setVendor(doc.get(Fields.VENDOR));</pre></td></tr> -<tr> <td class="numLineCover"> 278</td> <td class="nbHitsCovered"> 640</td> <td class="src"><pre class="src">  entry.setProduct(doc.get(Fields.PRODUCT));</pre></td></tr> +<tr> <td class="numLineCover"> 272</td> <td class="nbHitsCovered"> 73</td> <td class="src"><pre class="src">  <span class="keyword">final</span> TopDocs docs = cpe.search(searchString, MAX_QUERY_RESULTS);</pre></td></tr> +<tr> <td class="numLineCover"> 273</td> <td class="nbHitsCovered"><a title="Line 273: Conditional coverage 100% (2/2)."> 1212</a></td> <td class="src"><pre class="src"> <a title="Line 273: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (ScoreDoc d : docs.scoreDocs) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 274</td> <td class="nbHitsCovered"><a title="Line 274: Conditional coverage 100% (2/2)."> 1139</a></td> <td class="src"><pre class="src"> <a title="Line 274: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (d.score >= 0.08) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 275</td> <td class="nbHitsCovered"> 741</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Document doc = cpe.getDocument(d.doc);</pre></td></tr> +<tr> <td class="numLineCover"> 276</td> <td class="nbHitsCovered"> 741</td> <td class="src"><pre class="src">  <span class="keyword">final</span> IndexEntry entry = <span class="keyword">new</span> IndexEntry();</pre></td></tr> +<tr> <td class="numLineCover"> 277</td> <td class="nbHitsCovered"> 741</td> <td class="src"><pre class="src">  entry.setVendor(doc.get(Fields.VENDOR));</pre></td></tr> +<tr> <td class="numLineCover"> 278</td> <td class="nbHitsCovered"> 741</td> <td class="src"><pre class="src">  entry.setProduct(doc.get(Fields.PRODUCT));</pre></td></tr> <tr> <td class="numLine"> 279</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment">// if (d.score < 0.08) {</span></pre></td></tr> <tr> <td class="numLine"> 280</td> <td class="nbHits"> </td> @@ -516,16 +516,16 @@ <td class="src"><pre class="src"> <span class="comment">// System.out.println(d.score);</span></pre></td></tr> <tr> <td class="numLine"> 285</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment">// }</span></pre></td></tr> -<tr> <td class="numLineCover"> 286</td> <td class="nbHitsCovered"> 640</td> <td class="src"><pre class="src">  entry.setSearchScore(d.score);</pre></td></tr> -<tr> <td class="numLineCover"> 287</td> <td class="nbHitsUncovered"><a title="Line 287: Conditional coverage 50% (1/2)."> 640</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 287: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!ret.contains(entry)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 288</td> <td class="nbHitsCovered"> 640</td> <td class="src"><pre class="src">  ret.add(entry);</pre></td></tr> +<tr> <td class="numLineCover"> 286</td> <td class="nbHitsCovered"> 741</td> <td class="src"><pre class="src">  entry.setSearchScore(d.score);</pre></td></tr> +<tr> <td class="numLineCover"> 287</td> <td class="nbHitsUncovered"><a title="Line 287: Conditional coverage 50% (1/2)."> 741</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 287: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!ret.contains(entry)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 288</td> <td class="nbHitsCovered"> 741</td> <td class="src"><pre class="src">  ret.add(entry);</pre></td></tr> <tr> <td class="numLine"> 289</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 290</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 291</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 292</td> <td class="nbHitsCovered"> 53</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ret;</pre></td></tr> +<tr> <td class="numLineCover"> 292</td> <td class="nbHitsCovered"> 73</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ret;</pre></td></tr> <tr> <td class="numLine"> 293</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 294</td> <td class="nbHits"> </td> @@ -566,23 +566,23 @@ <td class="src"><pre class="src">  <span class="keyword">protected</span> String buildSearch(String vendor, String product,</pre></td></tr> <tr> <td class="numLine"> 312</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  Set<String> vendorWeighting, Set<String> productWeightings) {</pre></td></tr> -<tr> <td class="numLineCover"> 313</td> <td class="nbHitsCovered"> 57</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String v = vendor; <span class="comment">//.replaceAll("[^\\w\\d]", " ");</span></pre></td></tr> -<tr> <td class="numLineCover"> 314</td> <td class="nbHitsCovered"> 57</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String p = product; <span class="comment">//.replaceAll("[^\\w\\d]", " ");</span></pre></td></tr> -<tr> <td class="numLineCover"> 315</td> <td class="nbHitsCovered"> 57</td> <td class="src"><pre class="src">  <span class="keyword">final</span> StringBuilder sb = <span class="keyword">new</span> StringBuilder(v.length() + p.length()</pre></td></tr> +<tr> <td class="numLineCover"> 313</td> <td class="nbHitsCovered"> 77</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String v = vendor; <span class="comment">//.replaceAll("[^\\w\\d]", " ");</span></pre></td></tr> +<tr> <td class="numLineCover"> 314</td> <td class="nbHitsCovered"> 77</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String p = product; <span class="comment">//.replaceAll("[^\\w\\d]", " ");</span></pre></td></tr> +<tr> <td class="numLineCover"> 315</td> <td class="nbHitsCovered"> 77</td> <td class="src"><pre class="src">  <span class="keyword">final</span> StringBuilder sb = <span class="keyword">new</span> StringBuilder(v.length() + p.length()</pre></td></tr> <tr> <td class="numLine"> 316</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  + Fields.PRODUCT.length() + Fields.VENDOR.length() + STRING_BUILDER_BUFFER);</pre></td></tr> <tr> <td class="numLine"> 317</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 318</td> <td class="nbHitsUncovered"><a title="Line 318: Conditional coverage 50% (1/2)."> 57</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 318: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!appendWeightedSearch(sb, Fields.PRODUCT, p, productWeightings)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 318</td> <td class="nbHitsUncovered"><a title="Line 318: Conditional coverage 50% (1/2)."> 77</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 318: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!appendWeightedSearch(sb, Fields.PRODUCT, p, productWeightings)) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 319</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">null</span>;</span></pre></td></tr> <tr> <td class="numLine"> 320</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 321</td> <td class="nbHitsCovered"> 57</td> <td class="src"><pre class="src">  sb.append(<span class="string">" AND "</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 322</td> <td class="nbHitsUncovered"><a title="Line 322: Conditional coverage 50% (1/2)."> 57</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 322: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!appendWeightedSearch(sb, Fields.VENDOR, v, vendorWeighting)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 321</td> <td class="nbHitsCovered"> 77</td> <td class="src"><pre class="src">  sb.append(<span class="string">" AND "</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 322</td> <td class="nbHitsUncovered"><a title="Line 322: Conditional coverage 50% (1/2)."> 77</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 322: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!appendWeightedSearch(sb, Fields.VENDOR, v, vendorWeighting)) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 323</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">null</span>;</span></pre></td></tr> <tr> <td class="numLine"> 324</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 325</td> <td class="nbHitsCovered"> 57</td> <td class="src"><pre class="src">  <span class="keyword">return</span> sb.toString();</pre></td></tr> +<tr> <td class="numLineCover"> 325</td> <td class="nbHitsCovered"> 77</td> <td class="src"><pre class="src">  <span class="keyword">return</span> sb.toString();</pre></td></tr> <tr> <td class="numLine"> 326</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 327</td> <td class="nbHits"> </td> @@ -617,47 +617,47 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 342</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">boolean</span> appendWeightedSearch(StringBuilder sb, String field, String searchText, Set<String> weightedText) {</pre></td></tr> -<tr> <td class="numLineCover"> 343</td> <td class="nbHitsCovered"> 114</td> <td class="src"><pre class="src">  sb.append(<span class="string">" "</span>).append(field).append(<span class="string">":( "</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 343</td> <td class="nbHitsCovered"> 154</td> <td class="src"><pre class="src">  sb.append(<span class="string">" "</span>).append(field).append(<span class="string">":( "</span>);</pre></td></tr> <tr> <td class="numLine"> 344</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 345</td> <td class="nbHitsCovered"> 114</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String cleanText = cleanseText(searchText);</pre></td></tr> +<tr> <td class="numLineCover"> 345</td> <td class="nbHitsCovered"> 154</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String cleanText = cleanseText(searchText);</pre></td></tr> <tr> <td class="numLine"> 346</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 347</td> <td class="nbHitsUncovered"><a title="Line 347: Conditional coverage 50% (1/2)."> 114</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 347: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (<span class="string">""</span>.equals(cleanText)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 347</td> <td class="nbHitsUncovered"><a title="Line 347: Conditional coverage 50% (1/2)."> 154</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 347: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (<span class="string">""</span>.equals(cleanText)) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 348</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> <tr> <td class="numLine"> 349</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 350</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 351</td> <td class="nbHitsCovered"><a title="Line 351: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 114</a></td> <td class="src"><pre class="src"> <a title="Line 351: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (weightedText == <span class="keyword">null</span> || weightedText.isEmpty()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 352</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  LuceneUtils.appendEscapedLuceneQuery(sb, cleanText);</pre></td></tr> +<tr> <td class="numLineCover"> 351</td> <td class="nbHitsCovered"><a title="Line 351: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 154</a></td> <td class="src"><pre class="src"> <a title="Line 351: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (weightedText == <span class="keyword">null</span> || weightedText.isEmpty()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 352</td> <td class="nbHitsCovered"> 40</td> <td class="src"><pre class="src">  LuceneUtils.appendEscapedLuceneQuery(sb, cleanText);</pre></td></tr> <tr> <td class="numLine"> 353</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 354</td> <td class="nbHitsCovered"> 98</td> <td class="src"><pre class="src">  <span class="keyword">final</span> StringTokenizer tokens = <span class="keyword">new</span> StringTokenizer(cleanText);</pre></td></tr> -<tr> <td class="numLineCover"> 355</td> <td class="nbHitsCovered"><a title="Line 355: Conditional coverage 100% (2/2)."> 1123</a></td> <td class="src"><pre class="src"> <a title="Line 355: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (tokens.hasMoreElements()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 356</td> <td class="nbHitsCovered"> 1025</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String word = tokens.nextToken();</pre></td></tr> -<tr> <td class="numLineCover"> 357</td> <td class="nbHitsCovered"> 1025</td> <td class="src"><pre class="src">  String temp = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 358</td> <td class="nbHitsCovered"><a title="Line 358: Conditional coverage 100% (2/2)."> 1025</a></td> <td class="src"><pre class="src"> <a title="Line 358: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (String weighted : weightedText) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 359</td> <td class="nbHitsCovered"> 2110</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String weightedStr = cleanseText(weighted);</pre></td></tr> -<tr> <td class="numLineCover"> 360</td> <td class="nbHitsCovered"><a title="Line 360: Conditional coverage 100% (2/2)."> 2110</a></td> <td class="src"><pre class="src"> <a title="Line 360: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (equalsIgnoreCaseAndNonAlpha(word, weightedStr)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 361</td> <td class="nbHitsCovered"> 225</td> <td class="src"><pre class="src">  temp = LuceneUtils.escapeLuceneQuery(word) + WEIGHTING_BOOST;</pre></td></tr> -<tr> <td class="numLineCover"> 362</td> <td class="nbHitsCovered"><a title="Line 362: Conditional coverage 100% (2/2)."> 225</a></td> <td class="src"><pre class="src"> <a title="Line 362: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (!word.equalsIgnoreCase(weightedStr)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 354</td> <td class="nbHitsCovered"> 114</td> <td class="src"><pre class="src">  <span class="keyword">final</span> StringTokenizer tokens = <span class="keyword">new</span> StringTokenizer(cleanText);</pre></td></tr> +<tr> <td class="numLineCover"> 355</td> <td class="nbHitsCovered"><a title="Line 355: Conditional coverage 100% (2/2)."> 1211</a></td> <td class="src"><pre class="src"> <a title="Line 355: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (tokens.hasMoreElements()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 356</td> <td class="nbHitsCovered"> 1097</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String word = tokens.nextToken();</pre></td></tr> +<tr> <td class="numLineCover"> 357</td> <td class="nbHitsCovered"> 1097</td> <td class="src"><pre class="src">  String temp = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 358</td> <td class="nbHitsCovered"><a title="Line 358: Conditional coverage 100% (2/2)."> 1097</a></td> <td class="src"><pre class="src"> <a title="Line 358: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (String weighted : weightedText) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 359</td> <td class="nbHitsCovered"> 2202</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String weightedStr = cleanseText(weighted);</pre></td></tr> +<tr> <td class="numLineCover"> 360</td> <td class="nbHitsCovered"><a title="Line 360: Conditional coverage 100% (2/2)."> 2202</a></td> <td class="src"><pre class="src"> <a title="Line 360: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (equalsIgnoreCaseAndNonAlpha(word, weightedStr)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 361</td> <td class="nbHitsCovered"> 251</td> <td class="src"><pre class="src">  temp = LuceneUtils.escapeLuceneQuery(word) + WEIGHTING_BOOST;</pre></td></tr> +<tr> <td class="numLineCover"> 362</td> <td class="nbHitsCovered"><a title="Line 362: Conditional coverage 100% (2/2)."> 251</a></td> <td class="src"><pre class="src"> <a title="Line 362: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (!word.equalsIgnoreCase(weightedStr)) {</a></pre></td></tr> <tr> <td class="numLineCover"> 363</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  temp += <span class="string">" "</span> + LuceneUtils.escapeLuceneQuery(weightedStr) + WEIGHTING_BOOST;</pre></td></tr> <tr> <td class="numLine"> 364</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 365</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 366</td> <td class="nbHitsCovered"> 2110</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 367</td> <td class="nbHitsCovered"><a title="Line 367: Conditional coverage 100% (2/2)."> 1025</a></td> <td class="src"><pre class="src"> <a title="Line 367: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (temp == <span class="keyword">null</span>) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 368</td> <td class="nbHitsCovered"> 800</td> <td class="src"><pre class="src">  temp = LuceneUtils.escapeLuceneQuery(word);</pre></td></tr> +<tr> <td class="numLineCover"> 366</td> <td class="nbHitsCovered"> 2202</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 367</td> <td class="nbHitsCovered"><a title="Line 367: Conditional coverage 100% (2/2)."> 1097</a></td> <td class="src"><pre class="src"> <a title="Line 367: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (temp == <span class="keyword">null</span>) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 368</td> <td class="nbHitsCovered"> 846</td> <td class="src"><pre class="src">  temp = LuceneUtils.escapeLuceneQuery(word);</pre></td></tr> <tr> <td class="numLine"> 369</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 370</td> <td class="nbHitsCovered"> 1025</td> <td class="src"><pre class="src">  sb.append(<span class="string">" "</span>).append(temp);</pre></td></tr> -<tr> <td class="numLineCover"> 371</td> <td class="nbHitsCovered"> 1025</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 370</td> <td class="nbHitsCovered"> 1097</td> <td class="src"><pre class="src">  sb.append(<span class="string">" "</span>).append(temp);</pre></td></tr> +<tr> <td class="numLineCover"> 371</td> <td class="nbHitsCovered"> 1097</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 372</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 373</td> <td class="nbHitsCovered"> 114</td> <td class="src"><pre class="src">  sb.append(<span class="string">" ) "</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 374</td> <td class="nbHitsCovered"> 114</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 373</td> <td class="nbHitsCovered"> 154</td> <td class="src"><pre class="src">  sb.append(<span class="string">" ) "</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 374</td> <td class="nbHitsCovered"> 154</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> <tr> <td class="numLine"> 375</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 376</td> <td class="nbHits"> </td> @@ -678,7 +678,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 384</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> String cleanseText(String text) {</pre></td></tr> -<tr> <td class="numLineCover"> 385</td> <td class="nbHitsCovered"> 2224</td> <td class="src"><pre class="src">  <span class="keyword">return</span> text.replaceAll(CLEANSE_CHARACTER_RX, <span class="string">" "</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 385</td> <td class="nbHitsCovered"> 2356</td> <td class="src"><pre class="src">  <span class="keyword">return</span> text.replaceAll(CLEANSE_CHARACTER_RX, <span class="string">" "</span>);</pre></td></tr> <tr> <td class="numLine"> 386</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 387</td> <td class="nbHits"> </td> @@ -701,15 +701,15 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 396</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">boolean</span> equalsIgnoreCaseAndNonAlpha(String l, String r) {</pre></td></tr> -<tr> <td class="numLineCover"> 397</td> <td class="nbHitsUncovered"><a title="Line 397: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 2110</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 397: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">if</span> (l == <span class="keyword">null</span> || r == <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 397</td> <td class="nbHitsUncovered"><a title="Line 397: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 2202</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 397: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">if</span> (l == <span class="keyword">null</span> || r == <span class="keyword">null</span>) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 398</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> <tr> <td class="numLine"> 399</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 400</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 401</td> <td class="nbHitsCovered"> 2110</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String left = l.replaceAll(CLEANSE_NONALPHA_RX, <span class="string">""</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 402</td> <td class="nbHitsCovered"> 2110</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String right = r.replaceAll(CLEANSE_NONALPHA_RX, <span class="string">""</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 403</td> <td class="nbHitsCovered"> 2110</td> <td class="src"><pre class="src">  <span class="keyword">return</span> left.equalsIgnoreCase(right);</pre></td></tr> +<tr> <td class="numLineCover"> 401</td> <td class="nbHitsCovered"> 2202</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String left = l.replaceAll(CLEANSE_NONALPHA_RX, <span class="string">""</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 402</td> <td class="nbHitsCovered"> 2202</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String right = r.replaceAll(CLEANSE_NONALPHA_RX, <span class="string">""</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 403</td> <td class="nbHitsCovered"> 2202</td> <td class="src"><pre class="src">  <span class="keyword">return</span> left.equalsIgnoreCase(right);</pre></td></tr> <tr> <td class="numLine"> 404</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 405</td> <td class="nbHits"> </td> @@ -734,18 +734,18 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 415</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">boolean</span> verifyEntry(<span class="keyword">final</span> IndexEntry entry, <span class="keyword">final</span> Dependency dependency) {</pre></td></tr> -<tr> <td class="numLineCover"> 416</td> <td class="nbHitsCovered"> 622</td> <td class="src"><pre class="src">  <span class="keyword">boolean</span> isValid = <span class="keyword">false</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 416</td> <td class="nbHitsCovered"> 722</td> <td class="src"><pre class="src">  <span class="keyword">boolean</span> isValid = <span class="keyword">false</span>;</pre></td></tr> <tr> <td class="numLine"> 417</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 418</td> <td class="nbHitsCovered"><a title="Line 418: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 622</a></td> <td class="src"><pre class="src"> <a title="Line 418: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (collectionContainsString(dependency.getProductEvidence(), entry.getProduct())</a></pre></td></tr> +<tr> <td class="numLineCover"> 418</td> <td class="nbHitsCovered"><a title="Line 418: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 722</a></td> <td class="src"><pre class="src"> <a title="Line 418: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (collectionContainsString(dependency.getProductEvidence(), entry.getProduct())</a></pre></td></tr> <tr> <td class="numLine"> 419</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  && collectionContainsString(dependency.getVendorEvidence(), entry.getVendor())) {</pre></td></tr> <tr> <td class="numLine"> 420</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//&& collectionContainsVersion(dependency.getVersionEvidence(), entry.getVersion())</span></pre></td></tr> -<tr> <td class="numLineCover"> 421</td> <td class="nbHitsCovered"> 51</td> <td class="src"><pre class="src">  isValid = <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 421</td> <td class="nbHitsCovered"> 71</td> <td class="src"><pre class="src">  isValid = <span class="keyword">true</span>;</pre></td></tr> <tr> <td class="numLine"> 422</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 423</td> <td class="nbHitsCovered"> 622</td> <td class="src"><pre class="src">  <span class="keyword">return</span> isValid;</pre></td></tr> +<tr> <td class="numLineCover"> 423</td> <td class="nbHitsCovered"> 722</td> <td class="src"><pre class="src">  <span class="keyword">return</span> isValid;</pre></td></tr> <tr> <td class="numLine"> 424</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 425</td> <td class="nbHits"> </td> @@ -792,41 +792,41 @@ <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 446</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//TODO - likely need to change the split... not sure if this will work for CPE with special chars</span></pre></td></tr> -<tr> <td class="numLineCover"> 447</td> <td class="nbHitsUncovered"><a title="Line 447: Conditional coverage 50% (1/2)."> 679</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 447: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (text == <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 447</td> <td class="nbHitsUncovered"><a title="Line 447: Conditional coverage 50% (1/2)."> 799</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 447: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (text == <span class="keyword">null</span>) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 448</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> <tr> <td class="numLine"> 449</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 450</td> <td class="nbHitsCovered"> 679</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String[] words = text.split(<span class="string">"[\\s_-]"</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 451</td> <td class="nbHitsCovered"> 679</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<String> list = <span class="keyword">new</span> ArrayList<String>();</pre></td></tr> -<tr> <td class="numLineCover"> 452</td> <td class="nbHitsCovered"> 679</td> <td class="src"><pre class="src">  String tempWord = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 453</td> <td class="nbHitsCovered"><a title="Line 453: Conditional coverage 100% (2/2)."> 1826</a></td> <td class="src"><pre class="src"> <a title="Line 453: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (String word : words) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 450</td> <td class="nbHitsCovered"> 799</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String[] words = text.split(<span class="string">"[\\s_-]"</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 451</td> <td class="nbHitsCovered"> 799</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<String> list = <span class="keyword">new</span> ArrayList<String>();</pre></td></tr> +<tr> <td class="numLineCover"> 452</td> <td class="nbHitsCovered"> 799</td> <td class="src"><pre class="src">  String tempWord = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 453</td> <td class="nbHitsCovered"><a title="Line 453: Conditional coverage 100% (2/2)."> 2254</a></td> <td class="src"><pre class="src"> <a title="Line 453: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (String word : words) {</a></pre></td></tr> <tr> <td class="numLine"> 454</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//single letter words should be concatonated with the next word.</span></pre></td></tr> <tr> <td class="numLine"> 455</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">// so { "m", "core", "sample" } -> { "mcore", "sample" }</span></pre></td></tr> -<tr> <td class="numLineCover"> 456</td> <td class="nbHitsCovered"><a title="Line 456: Conditional coverage 100% (2/2)."> 1147</a></td> <td class="src"><pre class="src"> <a title="Line 456: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (tempWord != <span class="keyword">null</span>) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 456</td> <td class="nbHitsCovered"><a title="Line 456: Conditional coverage 100% (2/2)."> 1455</a></td> <td class="src"><pre class="src"> <a title="Line 456: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (tempWord != <span class="keyword">null</span>) {</a></pre></td></tr> <tr> <td class="numLineCover"> 457</td> <td class="nbHitsCovered"> 17</td> <td class="src"><pre class="src">  list.add(tempWord + word);</pre></td></tr> <tr> <td class="numLineCover"> 458</td> <td class="nbHitsCovered"> 17</td> <td class="src"><pre class="src">  tempWord = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 459</td> <td class="nbHitsCovered"><a title="Line 459: Conditional coverage 100% (2/2)."> 1130</a></td> <td class="src"><pre class="src"> <a title="Line 459: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (word.length() <= 2) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 460</td> <td class="nbHitsCovered"> 40</td> <td class="src"><pre class="src">  tempWord = word;</pre></td></tr> +<tr> <td class="numLineCover"> 459</td> <td class="nbHitsCovered"><a title="Line 459: Conditional coverage 100% (2/2)."> 1438</a></td> <td class="src"><pre class="src"> <a title="Line 459: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (word.length() <= 2) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 460</td> <td class="nbHitsCovered"> 41</td> <td class="src"><pre class="src">  tempWord = word;</pre></td></tr> <tr> <td class="numLine"> 461</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 462</td> <td class="nbHitsCovered"> 1090</td> <td class="src"><pre class="src">  list.add(word);</pre></td></tr> +<tr> <td class="numLineCover"> 462</td> <td class="nbHitsCovered"> 1397</td> <td class="src"><pre class="src">  list.add(word);</pre></td></tr> <tr> <td class="numLine"> 463</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 464</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 465</td> <td class="nbHitsCovered"><a title="Line 465: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 679</a></td> <td class="src"><pre class="src"> <a title="Line 465: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (tempWord != <span class="keyword">null</span> && !list.isEmpty()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 466</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String tmp = list.get(list.size() - 1) + tempWord;</pre></td></tr> -<tr> <td class="numLineCover"> 467</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  list.add(tmp);</pre></td></tr> +<tr> <td class="numLineCover"> 465</td> <td class="nbHitsCovered"><a title="Line 465: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 799</a></td> <td class="src"><pre class="src"> <a title="Line 465: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (tempWord != <span class="keyword">null</span> && !list.isEmpty()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 466</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String tmp = list.get(list.size() - 1) + tempWord;</pre></td></tr> +<tr> <td class="numLineCover"> 467</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src">  list.add(tmp);</pre></td></tr> <tr> <td class="numLine"> 468</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 469</td> <td class="nbHitsCovered"> 679</td> <td class="src"><pre class="src">  <span class="keyword">boolean</span> contains = <span class="keyword">true</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 470</td> <td class="nbHitsCovered"><a title="Line 470: Conditional coverage 100% (2/2)."> 679</a></td> <td class="src"><pre class="src"> <a title="Line 470: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (String word : list) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 471</td> <td class="nbHitsCovered"> 1126</td> <td class="src"><pre class="src">  contains &= ec.containsUsedString(word);</pre></td></tr> +<tr> <td class="numLineCover"> 469</td> <td class="nbHitsCovered"> 799</td> <td class="src"><pre class="src">  <span class="keyword">boolean</span> contains = <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 470</td> <td class="nbHitsCovered"><a title="Line 470: Conditional coverage 100% (2/2)."> 799</a></td> <td class="src"><pre class="src"> <a title="Line 470: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (String word : list) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 471</td> <td class="nbHitsCovered"> 1434</td> <td class="src"><pre class="src">  contains &= ec.containsUsedString(word);</pre></td></tr> <tr> <td class="numLine"> 472</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 473</td> <td class="nbHitsCovered"> 679</td> <td class="src"><pre class="src">  <span class="keyword">return</span> contains;</pre></td></tr> +<tr> <td class="numLineCover"> 473</td> <td class="nbHitsCovered"> 799</td> <td class="src"><pre class="src">  <span class="keyword">return</span> contains;</pre></td></tr> <tr> <td class="numLine"> 474</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 475</td> <td class="nbHits"> </td> @@ -855,15 +855,15 @@ <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> analyze(Dependency dependency, Engine engine) <span class="keyword">throws</span> AnalysisException {</pre></td></tr> <tr> <td class="numLine"> 487</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 488</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  determineCPE(dependency);</pre></td></tr> +<tr> <td class="numLineCover"> 488</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  determineCPE(dependency);</pre></td></tr> <tr> <td class="numLineCover"> 489</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (CorruptIndexException ex) {</span></pre></td></tr> <tr> <td class="numLineCover"> 490</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(<span class="string">"CPE Index is corrupt."</span>, ex);</span></pre></td></tr> <tr> <td class="numLineCover"> 491</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"> 492</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(<span class="string">"Failure opening the CPE Index."</span>, ex);</span></pre></td></tr> <tr> <td class="numLineCover"> 493</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (ParseException ex) {</span></pre></td></tr> <tr> <td class="numLineCover"> 494</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(<span class="string">"Unable to parse the generated Lucene query for this dependency."</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 495</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 496</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 495</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 496</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 497</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 498</td> <td class="nbHits"> </td> @@ -880,7 +880,7 @@ <td class="src"><pre class="src">  @Override</pre></td></tr> <tr> <td class="numLine"> 504</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Set<String> getSupportedExtensions() {</pre></td></tr> -<tr> <td class="numLineCover"> 505</td> <td class="nbHitsCovered"> 129</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 505</td> <td class="nbHitsCovered"> 132</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">null</span>;</pre></td></tr> <tr> <td class="numLine"> 506</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 507</td> <td class="nbHits"> </td> @@ -899,7 +899,7 @@ <td class="src"><pre class="src">  @Override</pre></td></tr> <tr> <td class="numLine"> 514</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"> 515</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="string">"CPE Analyzer"</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 515</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="string">"CPE Analyzer"</span>;</pre></td></tr> <tr> <td class="numLine"> 516</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 517</td> <td class="nbHits"> </td> @@ -920,7 +920,7 @@ <td class="src"><pre class="src">  @Override</pre></td></tr> <tr> <td class="numLine"> 525</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> supportsExtension(String extension) {</pre></td></tr> -<tr> <td class="numLineCover"> 526</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 526</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> <tr> <td class="numLine"> 527</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 528</td> <td class="nbHits"> </td> @@ -939,7 +939,7 @@ <td class="src"><pre class="src">  @Override</pre></td></tr> <tr> <td class="numLine"> 535</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> AnalysisPhase getAnalysisPhase() {</pre></td></tr> -<tr> <td class="numLineCover"> 536</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">return</span> AnalysisPhase.IDENTIFIER_ANALYSIS;</pre></td></tr> +<tr> <td class="numLineCover"> 536</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  <span class="keyword">return</span> AnalysisPhase.IDENTIFIER_ANALYSIS;</pre></td></tr> <tr> <td class="numLine"> 537</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 538</td> <td class="nbHits"> </td> @@ -958,8 +958,8 @@ <td class="src"><pre class="src">  @Override</pre></td></tr> <tr> <td class="numLine"> 545</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> initialize() <span class="keyword">throws</span> Exception {</pre></td></tr> -<tr> <td class="numLineCover"> 546</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.open();</pre></td></tr> -<tr> <td class="numLineCover"> 547</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 546</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.open();</pre></td></tr> +<tr> <td class="numLineCover"> 547</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 548</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 549</td> <td class="nbHits"> </td> @@ -988,37 +988,37 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 561</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> determineIdentifiers(Dependency dependency, String vendor, String product) <span class="keyword">throws</span> UnsupportedEncodingException {</pre></td></tr> -<tr> <td class="numLineCover"> 562</td> <td class="nbHitsCovered"> 51</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Set<VulnerableSoftware> cpes = cve.getCPEs(vendor, product);</pre></td></tr> -<tr> <td class="numLineCover"> 563</td> <td class="nbHitsCovered"> 51</td> <td class="src"><pre class="src">  DependencyVersion bestGuess = <span class="keyword">new</span> DependencyVersion(<span class="string">"-"</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 564</td> <td class="nbHitsCovered"> 51</td> <td class="src"><pre class="src">  Confidence bestGuessConf = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 565</td> <td class="nbHitsCovered"> 51</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<IdentifierMatch> collected = <span class="keyword">new</span> ArrayList<IdentifierMatch>();</pre></td></tr> -<tr> <td class="numLineCover"> 566</td> <td class="nbHitsCovered"><a title="Line 566: Conditional coverage 100% (2/2)."> 255</a></td> <td class="src"><pre class="src"> <a title="Line 566: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Confidence conf : Confidence.values()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 567</td> <td class="nbHitsCovered"><a title="Line 567: Conditional coverage 100% (2/2)."> 204</a></td> <td class="src"><pre class="src"> <a title="Line 567: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence evidence : dependency.getVersionEvidence().iterator(conf)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 568</td> <td class="nbHitsCovered"> 144</td> <td class="src"><pre class="src">  <span class="keyword">final</span> DependencyVersion evVer = DependencyVersionUtil.parseVersion(evidence.getValue());</pre></td></tr> -<tr> <td class="numLineCover"> 569</td> <td class="nbHitsUncovered"><a title="Line 569: Conditional coverage 50% (1/2)."> 144</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 569: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (evVer == <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 562</td> <td class="nbHitsCovered"> 71</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Set<VulnerableSoftware> cpes = cve.getCPEs(vendor, product);</pre></td></tr> +<tr> <td class="numLineCover"> 563</td> <td class="nbHitsCovered"> 71</td> <td class="src"><pre class="src">  DependencyVersion bestGuess = <span class="keyword">new</span> DependencyVersion(<span class="string">"-"</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 564</td> <td class="nbHitsCovered"> 71</td> <td class="src"><pre class="src">  Confidence bestGuessConf = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 565</td> <td class="nbHitsCovered"> 71</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<IdentifierMatch> collected = <span class="keyword">new</span> ArrayList<IdentifierMatch>();</pre></td></tr> +<tr> <td class="numLineCover"> 566</td> <td class="nbHitsCovered"><a title="Line 566: Conditional coverage 100% (2/2)."> 355</a></td> <td class="src"><pre class="src"> <a title="Line 566: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Confidence conf : Confidence.values()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 567</td> <td class="nbHitsCovered"><a title="Line 567: Conditional coverage 100% (2/2)."> 284</a></td> <td class="src"><pre class="src"> <a title="Line 567: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence evidence : dependency.getVersionEvidence().iterator(conf)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 568</td> <td class="nbHitsCovered"> 160</td> <td class="src"><pre class="src">  <span class="keyword">final</span> DependencyVersion evVer = DependencyVersionUtil.parseVersion(evidence.getValue());</pre></td></tr> +<tr> <td class="numLineCover"> 569</td> <td class="nbHitsUncovered"><a title="Line 569: Conditional coverage 50% (1/2)."> 160</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 569: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (evVer == <span class="keyword">null</span>) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 570</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"> 571</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 572</td> <td class="nbHitsCovered"><a title="Line 572: Conditional coverage 100% (2/2)."> 144</a></td> <td class="src"><pre class="src"> <a title="Line 572: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (VulnerableSoftware vs : cpes) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 572</td> <td class="nbHitsCovered"><a title="Line 572: Conditional coverage 100% (2/2)."> 160</a></td> <td class="src"><pre class="src"> <a title="Line 572: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (VulnerableSoftware vs : cpes) {</a></pre></td></tr> <tr> <td class="numLine"> 573</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  DependencyVersion dbVer;</pre></td></tr> -<tr> <td class="numLineCover"> 574</td> <td class="nbHitsUncovered"><a title="Line 574: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 8188</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 574: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (vs.getRevision() != <span class="keyword">null</span> && !vs.getRevision().isEmpty()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 574</td> <td class="nbHitsUncovered"><a title="Line 574: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 9080</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 574: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (vs.getRevision() != <span class="keyword">null</span> && !vs.getRevision().isEmpty()) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 575</td> <td class="nbHitsCovered"> 2855</td> <td class="src"><pre class="src">  dbVer = DependencyVersionUtil.parseVersion(vs.getVersion() + <span class="string">"."</span> + vs.getRevision());</pre></td></tr> <tr> <td class="numLine"> 576</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 577</td> <td class="nbHitsCovered"> 5333</td> <td class="src"><pre class="src">  dbVer = DependencyVersionUtil.parseVersion(vs.getVersion());</pre></td></tr> +<tr> <td class="numLineCover"> 577</td> <td class="nbHitsCovered"> 6225</td> <td class="src"><pre class="src">  dbVer = DependencyVersionUtil.parseVersion(vs.getVersion());</pre></td></tr> <tr> <td class="numLine"> 578</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 579</td> <td class="nbHitsCovered"><a title="Line 579: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 8188</a></td> <td class="src"><pre class="src"> <a title="Line 579: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (dbVer == <span class="keyword">null</span> <span class="comment">//special case, no version specified - everything is vulnerable</span></a></pre></td></tr> +<tr> <td class="numLineCover"> 579</td> <td class="nbHitsCovered"><a title="Line 579: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 9080</a></td> <td class="src"><pre class="src"> <a title="Line 579: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (dbVer == <span class="keyword">null</span> <span class="comment">//special case, no version specified - everything is vulnerable</span></a></pre></td></tr> <tr> <td class="numLine"> 580</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  || evVer.equals(dbVer)) { <span class="comment">//woot exect match</span></pre></td></tr> -<tr> <td class="numLineCover"> 581</td> <td class="nbHitsCovered"> 137</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String url = String.format(<span class="string">"http://web.nvd.nist.gov/view/vuln/search?cpe=%s"</span>, URLEncoder.encode(vs.getName(), <span class="string">"UTF-8"</span>));</pre></td></tr> -<tr> <td class="numLineCover"> 582</td> <td class="nbHitsCovered"> 137</td> <td class="src"><pre class="src">  <span class="keyword">final</span> IdentifierMatch match = <span class="keyword">new</span> IdentifierMatch(<span class="string">"cpe"</span>, vs.getName(), url, IdentifierConfidence.EXACT_MATCH, conf);</pre></td></tr> -<tr> <td class="numLineCover"> 583</td> <td class="nbHitsCovered"> 137</td> <td class="src"><pre class="src">  collected.add(match);</pre></td></tr> -<tr> <td class="numLineCover"> 584</td> <td class="nbHitsCovered"> 137</td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 581</td> <td class="nbHitsCovered"> 169</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String url = String.format(<span class="string">"http://web.nvd.nist.gov/view/vuln/search?cpe=%s"</span>, URLEncoder.encode(vs.getName(), <span class="string">"UTF-8"</span>));</pre></td></tr> +<tr> <td class="numLineCover"> 582</td> <td class="nbHitsCovered"> 169</td> <td class="src"><pre class="src">  <span class="keyword">final</span> IdentifierMatch match = <span class="keyword">new</span> IdentifierMatch(<span class="string">"cpe"</span>, vs.getName(), url, IdentifierConfidence.EXACT_MATCH, conf);</pre></td></tr> +<tr> <td class="numLineCover"> 583</td> <td class="nbHitsCovered"> 169</td> <td class="src"><pre class="src">  collected.add(match);</pre></td></tr> +<tr> <td class="numLineCover"> 584</td> <td class="nbHitsCovered"> 169</td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> <tr> <td class="numLine"> 585</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//TODO the following isn't quite right is it? need to think about this guessing game a bit more.</span></pre></td></tr> -<tr> <td class="numLineCover"> 586</td> <td class="nbHitsCovered"><a title="Line 586: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 8051</a></td> <td class="src"><pre class="src"> <a title="Line 586: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (evVer.getVersionParts().size() <= dbVer.getVersionParts().size()</a></pre></td></tr> +<tr> <td class="numLineCover"> 586</td> <td class="nbHitsCovered"><a title="Line 586: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 8911</a></td> <td class="src"><pre class="src"> <a title="Line 586: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (evVer.getVersionParts().size() <= dbVer.getVersionParts().size()</a></pre></td></tr> <tr> <td class="numLine"> 587</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  && evVer.matchesAtLeastThreeLevels(dbVer)) {</pre></td></tr> <tr> <td class="numLineCover"> 588</td> <td class="nbHitsUncovered"><a title="Line 588: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 412</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 588: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (bestGuessConf == <span class="keyword">null</span> || bestGuessConf.compareTo(conf) > 0) {</a></span></pre></td></tr> @@ -1033,41 +1033,41 @@ <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 595</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 596</td> <td class="nbHitsCovered"> 8188</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 597</td> <td class="nbHitsUncovered"><a title="Line 597: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 144</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 597: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (bestGuessConf == <span class="keyword">null</span> || bestGuessConf.compareTo(conf) > 0) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 598</td> <td class="nbHitsUncovered"><a title="Line 598: Conditional coverage 50% (1/2)."> 41</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 598: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (bestGuess.getVersionParts().size() < evVer.getVersionParts().size()) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 599</td> <td class="nbHitsCovered"> 41</td> <td class="src"><pre class="src">  bestGuess = evVer;</pre></td></tr> -<tr> <td class="numLineCover"> 600</td> <td class="nbHitsCovered"> 41</td> <td class="src"><pre class="src">  bestGuessConf = conf;</pre></td></tr> +<tr> <td class="numLineCover"> 596</td> <td class="nbHitsCovered"> 9080</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 597</td> <td class="nbHitsUncovered"><a title="Line 597: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 160</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 597: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (bestGuessConf == <span class="keyword">null</span> || bestGuessConf.compareTo(conf) > 0) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 598</td> <td class="nbHitsUncovered"><a title="Line 598: Conditional coverage 50% (1/2)."> 49</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 598: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (bestGuess.getVersionParts().size() < evVer.getVersionParts().size()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 599</td> <td class="nbHitsCovered"> 49</td> <td class="src"><pre class="src">  bestGuess = evVer;</pre></td></tr> +<tr> <td class="numLineCover"> 600</td> <td class="nbHitsCovered"> 49</td> <td class="src"><pre class="src">  bestGuessConf = conf;</pre></td></tr> <tr> <td class="numLine"> 601</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 602</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 603</td> <td class="nbHitsCovered"> 144</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 603</td> <td class="nbHitsCovered"> 160</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 604</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 605</td> <td class="nbHitsCovered"> 51</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String cpeName = String.format(<span class="string">"cpe:/a:%s:%s:%s"</span>, vendor, product, bestGuess.toString());</pre></td></tr> -<tr> <td class="numLineCover"> 606</td> <td class="nbHitsCovered"> 51</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String url = <span class="keyword">null</span>; <span class="comment">//String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(cpeName, "UTF-8"));</span></pre></td></tr> -<tr> <td class="numLineCover"> 607</td> <td class="nbHitsUncovered"><a title="Line 607: Conditional coverage 50% (1/2)."> 51</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 607: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (bestGuessConf == <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 608</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  bestGuessConf = Confidence.LOW;</span></pre></td></tr> +<tr> <td class="numLineCover"> 605</td> <td class="nbHitsCovered"> 71</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String cpeName = String.format(<span class="string">"cpe:/a:%s:%s:%s"</span>, vendor, product, bestGuess.toString());</pre></td></tr> +<tr> <td class="numLineCover"> 606</td> <td class="nbHitsCovered"> 71</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String url = <span class="keyword">null</span>; <span class="comment">//String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(cpeName, "UTF-8"));</span></pre></td></tr> +<tr> <td class="numLineCover"> 607</td> <td class="nbHitsCovered"><a title="Line 607: Conditional coverage 100% (2/2)."> 71</a></td> <td class="src"><pre class="src"> <a title="Line 607: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (bestGuessConf == <span class="keyword">null</span>) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 608</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  bestGuessConf = Confidence.LOW;</pre></td></tr> <tr> <td class="numLine"> 609</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 610</td> <td class="nbHitsCovered"> 51</td> <td class="src"><pre class="src">  <span class="keyword">final</span> IdentifierMatch match = <span class="keyword">new</span> IdentifierMatch(<span class="string">"cpe"</span>, cpeName, url, IdentifierConfidence.BEST_GUESS, bestGuessConf);</pre></td></tr> -<tr> <td class="numLineCover"> 611</td> <td class="nbHitsCovered"> 51</td> <td class="src"><pre class="src">  collected.add(match);</pre></td></tr> +<tr> <td class="numLineCover"> 610</td> <td class="nbHitsCovered"> 71</td> <td class="src"><pre class="src">  <span class="keyword">final</span> IdentifierMatch match = <span class="keyword">new</span> IdentifierMatch(<span class="string">"cpe"</span>, cpeName, url, IdentifierConfidence.BEST_GUESS, bestGuessConf);</pre></td></tr> +<tr> <td class="numLineCover"> 611</td> <td class="nbHitsCovered"> 71</td> <td class="src"><pre class="src">  collected.add(match);</pre></td></tr> <tr> <td class="numLine"> 612</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 613</td> <td class="nbHitsCovered"> 51</td> <td class="src"><pre class="src">  Collections.sort(collected);</pre></td></tr> -<tr> <td class="numLineCover"> 614</td> <td class="nbHitsCovered"> 51</td> <td class="src"><pre class="src">  <span class="keyword">final</span> IdentifierConfidence bestIdentifierQuality = collected.get(0).getConfidence();</pre></td></tr> -<tr> <td class="numLineCover"> 615</td> <td class="nbHitsCovered"> 51</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Confidence bestEvidenceQuality = collected.get(0).getEvidenceConfidence();</pre></td></tr> -<tr> <td class="numLineCover"> 616</td> <td class="nbHitsCovered"><a title="Line 616: Conditional coverage 100% (2/2)."> 51</a></td> <td class="src"><pre class="src"> <a title="Line 616: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (IdentifierMatch m : collected) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 617</td> <td class="nbHitsCovered"><a title="Line 617: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 188</a></td> <td class="src"><pre class="src"> <a title="Line 617: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (bestIdentifierQuality.equals(m.getConfidence())</a></pre></td></tr> +<tr> <td class="numLineCover"> 613</td> <td class="nbHitsCovered"> 71</td> <td class="src"><pre class="src">  Collections.sort(collected);</pre></td></tr> +<tr> <td class="numLineCover"> 614</td> <td class="nbHitsCovered"> 71</td> <td class="src"><pre class="src">  <span class="keyword">final</span> IdentifierConfidence bestIdentifierQuality = collected.get(0).getConfidence();</pre></td></tr> +<tr> <td class="numLineCover"> 615</td> <td class="nbHitsCovered"> 71</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Confidence bestEvidenceQuality = collected.get(0).getEvidenceConfidence();</pre></td></tr> +<tr> <td class="numLineCover"> 616</td> <td class="nbHitsCovered"><a title="Line 616: Conditional coverage 100% (2/2)."> 71</a></td> <td class="src"><pre class="src"> <a title="Line 616: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (IdentifierMatch m : collected) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 617</td> <td class="nbHitsCovered"><a title="Line 617: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 240</a></td> <td class="src"><pre class="src"> <a title="Line 617: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (bestIdentifierQuality.equals(m.getConfidence())</a></pre></td></tr> <tr> <td class="numLine"> 618</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  && bestEvidenceQuality.equals(m.getEvidenceConfidence())) {</pre></td></tr> -<tr> <td class="numLineCover"> 619</td> <td class="nbHitsCovered"> 60</td> <td class="src"><pre class="src">  dependency.addIdentifier(m.getIdentifier());</pre></td></tr> +<tr> <td class="numLineCover"> 619</td> <td class="nbHitsCovered"> 88</td> <td class="src"><pre class="src">  dependency.addIdentifier(m.getIdentifier());</pre></td></tr> <tr> <td class="numLine"> 620</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 621</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 622</td> <td class="nbHitsCovered"> 51</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 622</td> <td class="nbHitsCovered"> 71</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 623</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 624</td> <td class="nbHits"> </td> @@ -1105,7 +1105,7 @@ <td class="src"><pre class="src"> <span class="comment"> * confidence in the identifier.</span></pre></td></tr> <tr> <td class="numLine"> 642</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 643</td> <td class="nbHitsCovered"> 185</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">class</span> IdentifierMatch <span class="keyword">implements</span> Comparable<IdentifierMatch> {</pre></td></tr> +<tr> <td class="numLineCover"> 643</td> <td class="nbHitsCovered"> 225</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">class</span> IdentifierMatch <span class="keyword">implements</span> Comparable<IdentifierMatch> {</pre></td></tr> <tr> <td class="numLine"> 644</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 645</td> <td class="nbHits"> </td> @@ -1130,11 +1130,11 @@ <td class="src"><pre class="src"> <span class="comment"> * the identifier</span></pre></td></tr> <tr> <td class="numLine"> 655</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 656</td> <td class="nbHitsCovered"> 188</td> <td class="src"><pre class="src">  IdentifierMatch(String type, String value, String url, IdentifierConfidence identifierConfidence, Confidence evidenceConfidence) {</pre></td></tr> -<tr> <td class="numLineCover"> 657</td> <td class="nbHitsCovered"> 188</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.identifier = <span class="keyword">new</span> Identifier(type, value, url);</pre></td></tr> -<tr> <td class="numLineCover"> 658</td> <td class="nbHitsCovered"> 188</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.confidence = identifierConfidence;</pre></td></tr> -<tr> <td class="numLineCover"> 659</td> <td class="nbHitsCovered"> 188</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.evidenceConfidence = evidenceConfidence;</pre></td></tr> -<tr> <td class="numLineCover"> 660</td> <td class="nbHitsCovered"> 188</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 656</td> <td class="nbHitsCovered"> 240</td> <td class="src"><pre class="src">  IdentifierMatch(String type, String value, String url, IdentifierConfidence identifierConfidence, Confidence evidenceConfidence) {</pre></td></tr> +<tr> <td class="numLineCover"> 657</td> <td class="nbHitsCovered"> 240</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.identifier = <span class="keyword">new</span> Identifier(type, value, url);</pre></td></tr> +<tr> <td class="numLineCover"> 658</td> <td class="nbHitsCovered"> 240</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.confidence = identifierConfidence;</pre></td></tr> +<tr> <td class="numLineCover"> 659</td> <td class="nbHitsCovered"> 240</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.evidenceConfidence = evidenceConfidence;</pre></td></tr> +<tr> <td class="numLineCover"> 660</td> <td class="nbHitsCovered"> 240</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 661</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//<editor-fold defaultstate="collapsed" desc="Property implementations: evidenceConfidence, confidence, identifier"></span></pre></td></tr> <tr> <td class="numLine"> 662</td> <td class="nbHits"> </td> @@ -1159,7 +1159,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 672</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Confidence getEvidenceConfidence() {</pre></td></tr> -<tr> <td class="numLineCover"> 673</td> <td class="nbHitsCovered"> 199</td> <td class="src"><pre class="src">  <span class="keyword">return</span> evidenceConfidence;</pre></td></tr> +<tr> <td class="numLineCover"> 673</td> <td class="nbHitsCovered"> 263</td> <td class="src"><pre class="src">  <span class="keyword">return</span> evidenceConfidence;</pre></td></tr> <tr> <td class="numLine"> 674</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 675</td> <td class="nbHits"> </td> @@ -1200,7 +1200,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 694</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> IdentifierConfidence getConfidence() {</pre></td></tr> -<tr> <td class="numLineCover"> 695</td> <td class="nbHitsCovered"> 239</td> <td class="src"><pre class="src">  <span class="keyword">return</span> confidence;</pre></td></tr> +<tr> <td class="numLineCover"> 695</td> <td class="nbHitsCovered"> 311</td> <td class="src"><pre class="src">  <span class="keyword">return</span> confidence;</pre></td></tr> <tr> <td class="numLine"> 696</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 697</td> <td class="nbHits"> </td> @@ -1241,7 +1241,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 716</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Identifier getIdentifier() {</pre></td></tr> -<tr> <td class="numLineCover"> 717</td> <td class="nbHitsCovered"> 60</td> <td class="src"><pre class="src">  <span class="keyword">return</span> identifier;</pre></td></tr> +<tr> <td class="numLineCover"> 717</td> <td class="nbHitsCovered"> 88</td> <td class="src"><pre class="src">  <span class="keyword">return</span> identifier;</pre></td></tr> <tr> <td class="numLine"> 718</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 719</td> <td class="nbHits"> </td> @@ -1372,16 +1372,16 @@ <td class="src"><pre class="src">  @Override</pre></td></tr> <tr> <td class="numLine"> 792</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">int</span> compareTo(IdentifierMatch o) {</pre></td></tr> -<tr> <td class="numLineCover"> 793</td> <td class="nbHitsCovered"> 185</td> <td class="src"><pre class="src">  <span class="keyword">int</span> conf = <span class="keyword">this</span>.confidence.compareTo(o.confidence);</pre></td></tr> -<tr> <td class="numLineCover"> 794</td> <td class="nbHitsCovered"><a title="Line 794: Conditional coverage 100% (2/2)."> 185</a></td> <td class="src"><pre class="src"> <a title="Line 794: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (conf == 0) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 795</td> <td class="nbHitsCovered"> 145</td> <td class="src"><pre class="src">  conf = <span class="keyword">this</span>.evidenceConfidence.compareTo(o.evidenceConfidence);</pre></td></tr> -<tr> <td class="numLineCover"> 796</td> <td class="nbHitsCovered"><a title="Line 796: Conditional coverage 100% (2/2)."> 145</a></td> <td class="src"><pre class="src"> <a title="Line 796: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (conf == 0) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 797</td> <td class="nbHitsCovered"> 67</td> <td class="src"><pre class="src">  conf = identifier.compareTo(o.identifier);</pre></td></tr> +<tr> <td class="numLineCover"> 793</td> <td class="nbHitsCovered"> 225</td> <td class="src"><pre class="src">  <span class="keyword">int</span> conf = <span class="keyword">this</span>.confidence.compareTo(o.confidence);</pre></td></tr> +<tr> <td class="numLineCover"> 794</td> <td class="nbHitsCovered"><a title="Line 794: Conditional coverage 100% (2/2)."> 225</a></td> <td class="src"><pre class="src"> <a title="Line 794: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (conf == 0) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 795</td> <td class="nbHitsCovered"> 177</td> <td class="src"><pre class="src">  conf = <span class="keyword">this</span>.evidenceConfidence.compareTo(o.evidenceConfidence);</pre></td></tr> +<tr> <td class="numLineCover"> 796</td> <td class="nbHitsCovered"><a title="Line 796: Conditional coverage 100% (2/2)."> 177</a></td> <td class="src"><pre class="src"> <a title="Line 796: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (conf == 0) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 797</td> <td class="nbHitsCovered"> 83</td> <td class="src"><pre class="src">  conf = identifier.compareTo(o.identifier);</pre></td></tr> <tr> <td class="numLine"> 798</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 799</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 800</td> <td class="nbHitsCovered"> 185</td> <td class="src"><pre class="src">  <span class="keyword">return</span> conf;</pre></td></tr> +<tr> <td class="numLineCover"> 800</td> <td class="nbHitsCovered"> 225</td> <td class="src"><pre class="src">  <span class="keyword">return</span> conf;</pre></td></tr> <tr> <td class="numLine"> 801</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 802</td> <td class="nbHits"> </td> @@ -1390,6 +1390,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer.html index f7a57a20c..3b7691e1a 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer.html @@ -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.DependencyBundlingAnalyzer.html">DependencyBundlingAnalyzer</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">24%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:24px"><span class="text">26/105</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">17%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:17px"><span class="text">16/94</span></div></div></td></tr></table></td><td class="value"><span class="hidden">7.1;</span>7.1</td></tr> + <tr><td><a href="org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer.html">DependencyBundlingAnalyzer</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">33%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:33px"><span class="text">37/112</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">26%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:26px"><span class="text">25/96</span></div></div></td></tr></table></td><td class="value"><span class="hidden">6.9;</span>6.9</td></tr> </table> <div class="separator"> </div> @@ -68,508 +68,531 @@ <tr> <td class="numLine"> 25</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.Set;</pre></td></tr> <tr> <td class="numLine"> 26</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.regex.Matcher;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.logging.Level;</pre></td></tr> <tr> <td class="numLine"> 27</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.regex.Pattern;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.logging.Logger;</pre></td></tr> <tr> <td class="numLine"> 28</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.Engine;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.regex.Matcher;</pre></td></tr> <tr> <td class="numLine"> 29</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.dependency.Dependency;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.regex.Pattern;</pre></td></tr> <tr> <td class="numLine"> 30</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.utils.DependencyVersion;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.Engine;</pre></td></tr> <tr> <td class="numLine"> 31</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.utils.DependencyVersionUtil;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.dependency.Dependency;</pre></td></tr> <tr> <td class="numLine"> 32</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.utils.DependencyVersion;</pre></td></tr> <tr> <td class="numLine"> 33</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.utils.DependencyVersionUtil;</pre></td></tr> <tr> <td class="numLine"> 34</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * <p>This analyzer ensures dependencies that should be grouped together, to</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> org.owasp.dependencycheck.utils.LogUtils;</pre></td></tr> <tr> <td class="numLine"> 35</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * remove excess noise from the report, are grouped. An example would be Spring,</span></pre></td></tr> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 36</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Spring Beans, Spring MVC, etc. If they are all for the same version and have</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 37</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * the same relative path then these should be grouped into a single dependency</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * <p>This analyzer ensures dependencies that should be grouped together, to</span></pre></td></tr> <tr> <td class="numLine"> 38</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * under the core/main library.</p></span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * remove excess noise from the report, are grouped. An example would be Spring,</span></pre></td></tr> <tr> <td class="numLine"> 39</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * <p>Note, this grouping only works on dependencies with identified CVE</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * Spring Beans, Spring MVC, etc. If they are all for the same version and have</span></pre></td></tr> <tr> <td class="numLine"> 40</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * entries</p></span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * the same relative path then these should be grouped into a single dependency</span></pre></td></tr> <tr> <td class="numLine"> 41</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * under the core/main library.</p></span></pre></td></tr> <tr> <td class="numLine"> 42</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @author Jeremy Long (jeremy.long@owasp.org)</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * <p>Note, this grouping only works on dependencies with identified CVE</span></pre></td></tr> <tr> <td class="numLine"> 43</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 44</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> DependencyBundlingAnalyzer <span class="keyword">extends</span> AbstractAnalyzer <span class="keyword">implements</span> Analyzer {</pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * entries</p></span></pre></td></tr> +<tr> <td class="numLine"> 44</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> <tr> <td class="numLine"> 45</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * @author Jeremy Long (jeremy.long@owasp.org)</span></pre></td></tr> <tr> <td class="numLine"> 46</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">//<editor-fold defaultstate="collapsed" desc="Constants and Member Variables"></span></pre></td></tr> -<tr> <td class="numLine"> 47</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLineCover"> 47</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> DependencyBundlingAnalyzer <span class="keyword">extends</span> AbstractAnalyzer <span class="keyword">implements</span> Analyzer {</pre></td></tr> <tr> <td class="numLine"> 48</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * A pattern for obtaining the first part of a filename.</span></pre></td></tr> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 49</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 50</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Pattern STARTING_TEXT_PATTERN = Pattern.compile(<span class="string">"^[a-zA-Z]*"</span>);</pre></td></tr> + <td class="src"><pre class="src">  <span class="comment">//<editor-fold defaultstate="collapsed" desc="Constants and Member Variables"></span></pre></td></tr> +<tr> <td class="numLine"> 50</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 51</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * A pattern for obtaining the first part of a filename.</span></pre></td></tr> <tr> <td class="numLine"> 52</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * a flag indicating if this analyzer has run. This analyzer only runs once.</span></pre></td></tr> -<tr> <td class="numLine"> 53</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 54</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">boolean</span> analyzed = <span class="keyword">false</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 53</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Pattern STARTING_TEXT_PATTERN = Pattern.compile(<span class="string">"^[a-zA-Z]*"</span>);</pre></td></tr> +<tr> <td class="numLine"> 54</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 55</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">//</editor-fold></span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * a flag indicating if this analyzer has run. This analyzer only runs once.</span></pre></td></tr> <tr> <td class="numLine"> 56</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">//<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer"></span></pre></td></tr> -<tr> <td class="numLine"> 57</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLineCover"> 57</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">boolean</span> analyzed = <span class="keyword">false</span>;</pre></td></tr> <tr> <td class="numLine"> 58</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * The set of file extensions supported by this analyzer.</span></pre></td></tr> -<tr> <td class="numLine"> 59</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 60</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Set<String> EXTENSIONS = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLine"> 61</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 62</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * The name of the analyzer.</span></pre></td></tr> -<tr> <td class="numLine"> 63</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 64</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> String ANALYZER_NAME = <span class="string">"Dependency Bundling Analyzer"</span>;</pre></td></tr> -<tr> <td class="numLine"> 65</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 66</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * The phase that this analyzer is intended to run in.</span></pre></td></tr> -<tr> <td class="numLine"> 67</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 68</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.PRE_FINDING_ANALYSIS;</pre></td></tr> -<tr> <td class="numLine"> 69</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 70</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 71</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Returns a list of file EXTENSIONS supported by this analyzer.</span></pre></td></tr> -<tr> <td class="numLine"> 72</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 73</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @return a list of file EXTENSIONS supported by this analyzer.</span></pre></td></tr> -<tr> <td class="numLine"> 74</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 75</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> Set<String> getSupportedExtensions() {</pre></td></tr> -<tr> <td class="numLineCover"> 76</td> <td class="nbHitsCovered"> 129</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EXTENSIONS;</pre></td></tr> -<tr> <td class="numLine"> 77</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 78</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 79</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 80</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Returns the name of the analyzer.</span></pre></td></tr> -<tr> <td class="numLine"> 81</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 82</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @return the name of the analyzer.</span></pre></td></tr> -<tr> <td class="numLine"> 83</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 84</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"> 85</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYZER_NAME;</pre></td></tr> -<tr> <td class="numLine"> 86</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 87</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 88</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 89</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Returns whether or not this analyzer can process the given extension.</span></pre></td></tr> -<tr> <td class="numLine"> 90</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 91</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param extension the file extension to test for support</span></pre></td></tr> -<tr> <td class="numLine"> 92</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @return whether or not the specified file extension is supported by this</span></pre></td></tr> -<tr> <td class="numLine"> 93</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * analyzer.</span></pre></td></tr> -<tr> <td class="numLine"> 94</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 95</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> supportsExtension(String extension) {</pre></td></tr> -<tr> <td class="numLineCover"> 96</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> -<tr> <td class="numLine"> 97</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 98</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 99</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 100</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Returns the phase that the analyzer is intended to run in.</span></pre></td></tr> -<tr> <td class="numLine"> 101</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 102</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @return the phase that the analyzer is intended to run in.</span></pre></td></tr> -<tr> <td class="numLine"> 103</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 104</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> AnalysisPhase getAnalysisPhase() {</pre></td></tr> -<tr> <td class="numLineCover"> 105</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYSIS_PHASE;</pre></td></tr> -<tr> <td class="numLine"> 106</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 107</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//</editor-fold></span></pre></td></tr> -<tr> <td class="numLine"> 108</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 109</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 59</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">//<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer"></span></pre></td></tr> +<tr> <td class="numLine"> 60</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 110</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Analyzes a set of dependencies. If they have been found to have the same</span></pre></td></tr> -<tr> <td class="numLine"> 111</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * base path and the same set of identifiers they are likely related. The</span></pre></td></tr> -<tr> <td class="numLine"> 112</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * related dependencies are bundled into a single reportable item.</span></pre></td></tr> -<tr> <td class="numLine"> 113</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 114</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param ignore this analyzer ignores the dependency being analyzed</span></pre></td></tr> -<tr> <td class="numLine"> 115</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param engine the engine that is scanning the dependencies</span></pre></td></tr> -<tr> <td class="numLine"> 116</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @throws AnalysisException is thrown if there is an error reading the JAR</span></pre></td></tr> -<tr> <td class="numLine"> 117</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * file.</span></pre></td></tr> -<tr> <td class="numLine"> 118</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 61</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * The set of file extensions supported by this analyzer.</span></pre></td></tr> +<tr> <td class="numLine"> 62</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLineCover"> 63</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Set<String> EXTENSIONS = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLine"> 64</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 65</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * The name of the analyzer.</span></pre></td></tr> +<tr> <td class="numLine"> 66</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 67</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> String ANALYZER_NAME = <span class="string">"Dependency Bundling Analyzer"</span>;</pre></td></tr> +<tr> <td class="numLine"> 68</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 69</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * The phase that this analyzer is intended to run in.</span></pre></td></tr> +<tr> <td class="numLine"> 70</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLineCover"> 71</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.PRE_FINDING_ANALYSIS;</pre></td></tr> +<tr> <td class="numLine"> 72</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 73</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 74</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Returns a list of file EXTENSIONS supported by this analyzer.</span></pre></td></tr> +<tr> <td class="numLine"> 75</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 76</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @return a list of file EXTENSIONS supported by this analyzer.</span></pre></td></tr> +<tr> <td class="numLine"> 77</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 78</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">public</span> Set<String> getSupportedExtensions() {</pre></td></tr> +<tr> <td class="numLineCover"> 79</td> <td class="nbHitsCovered"> 132</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EXTENSIONS;</pre></td></tr> +<tr> <td class="numLine"> 80</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 81</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 82</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 83</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Returns the name of the analyzer.</span></pre></td></tr> +<tr> <td class="numLine"> 84</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 85</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @return the name of the analyzer.</span></pre></td></tr> +<tr> <td class="numLine"> 86</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 87</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"> 88</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYZER_NAME;</pre></td></tr> +<tr> <td class="numLine"> 89</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 90</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 91</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 92</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Returns whether or not this analyzer can process the given extension.</span></pre></td></tr> +<tr> <td class="numLine"> 93</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 94</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param extension the file extension to test for support</span></pre></td></tr> +<tr> <td class="numLine"> 95</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @return whether or not the specified file extension is supported by this</span></pre></td></tr> +<tr> <td class="numLine"> 96</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * analyzer.</span></pre></td></tr> +<tr> <td class="numLine"> 97</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 98</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> supportsExtension(String extension) {</pre></td></tr> +<tr> <td class="numLineCover"> 99</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLine"> 100</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 101</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 102</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 103</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Returns the phase that the analyzer is intended to run in.</span></pre></td></tr> +<tr> <td class="numLine"> 104</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 105</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @return the phase that the analyzer is intended to run in.</span></pre></td></tr> +<tr> <td class="numLine"> 106</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 107</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">public</span> AnalysisPhase getAnalysisPhase() {</pre></td></tr> +<tr> <td class="numLineCover"> 108</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYSIS_PHASE;</pre></td></tr> +<tr> <td class="numLine"> 109</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 110</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">//</editor-fold></span></pre></td></tr> +<tr> <td class="numLine"> 111</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 112</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 113</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Analyzes a set of dependencies. If they have been found to have the same</span></pre></td></tr> +<tr> <td class="numLine"> 114</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * base path and the same set of identifiers they are likely related. The</span></pre></td></tr> +<tr> <td class="numLine"> 115</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * related dependencies are bundled into a single reportable item.</span></pre></td></tr> +<tr> <td class="numLine"> 116</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 117</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param ignore this analyzer ignores the dependency being analyzed</span></pre></td></tr> +<tr> <td class="numLine"> 118</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param engine the engine that is scanning the dependencies</span></pre></td></tr> <tr> <td class="numLine"> 119</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  @Override</pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * @throws AnalysisException is thrown if there is an error reading the JAR</span></pre></td></tr> <tr> <td class="numLine"> 120</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * file.</span></pre></td></tr> +<tr> <td class="numLine"> 121</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 122</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  @Override</pre></td></tr> +<tr> <td class="numLine"> 123</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> analyze(Dependency ignore, Engine engine) <span class="keyword">throws</span> AnalysisException {</pre></td></tr> -<tr> <td class="numLineCover"> 121</td> <td class="nbHitsCovered"><a title="Line 121: Conditional coverage 100% (2/2)."> 3</a></td> <td class="src"><pre class="src"> <a title="Line 121: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (!analyzed) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 122</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  analyzed = <span class="keyword">true</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 123</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Set<Dependency> dependenciesToRemove = <span class="keyword">new</span> HashSet<Dependency>();</pre></td></tr> -<tr> <td class="numLineCover"> 124</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">final</span> ListIterator<Dependency> mainIterator = engine.getDependencies().listIterator();</pre></td></tr> -<tr> <td class="numLine"> 125</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 124</td> <td class="nbHitsCovered"><a title="Line 124: Conditional coverage 100% (2/2)."> 9</a></td> <td class="src"><pre class="src"> <a title="Line 124: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (!analyzed) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 125</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  analyzed = <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 126</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Set<Dependency> dependenciesToRemove = <span class="keyword">new</span> HashSet<Dependency>();</pre></td></tr> +<tr> <td class="numLineCover"> 127</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">final</span> ListIterator<Dependency> mainIterator = engine.getDependencies().listIterator();</pre></td></tr> +<tr> <td class="numLine"> 128</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//for (Dependency nextDependency : engine.getDependencies()) {</span></pre></td></tr> -<tr> <td class="numLineCover"> 126</td> <td class="nbHitsCovered"><a title="Line 126: Conditional coverage 100% (2/2)."> 4</a></td> <td class="src"><pre class="src"> <a title="Line 126: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (mainIterator.hasNext()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 127</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Dependency dependency = mainIterator.next();</pre></td></tr> -<tr> <td class="numLineCover"> 128</td> <td class="nbHitsCovered"><a title="Line 128: Conditional coverage 100% (2/2)."> 3</a></td> <td class="src"><pre class="src"> <a title="Line 128: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (mainIterator.hasNext()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 129</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  <span class="keyword">final</span> ListIterator<Dependency> subIterator = engine.getDependencies().listIterator(mainIterator.nextIndex());</pre></td></tr> -<tr> <td class="numLineCover"> 130</td> <td class="nbHitsCovered"><a title="Line 130: Conditional coverage 100% (2/2)."> 5</a></td> <td class="src"><pre class="src"> <a title="Line 130: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (subIterator.hasNext()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 131</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Dependency nextDependency = subIterator.next();</pre></td></tr> -<tr> <td class="numLine"> 132</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 133</td> <td class="nbHitsUncovered"><a title="Line 133: Conditional coverage 16% (1/6) [each condition: 50%, 0%, 0%]."> 3</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 133: Conditional coverage 16% (1/6) [each condition: 50%, 0%, 0%]."> <span class="keyword">if</span> (identifiersMatch(dependency, nextDependency)</a></span></pre></td></tr> -<tr> <td class="numLine"> 134</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  && hasSameBasePath(dependency, nextDependency)</pre></td></tr> +<tr> <td class="numLineCover"> 129</td> <td class="nbHitsCovered"><a title="Line 129: Conditional coverage 100% (2/2)."> 4</a></td> <td class="src"><pre class="src"> <a title="Line 129: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (mainIterator.hasNext()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 130</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Dependency dependency = mainIterator.next();</pre></td></tr> +<tr> <td class="numLineCover"> 131</td> <td class="nbHitsCovered"><a title="Line 131: Conditional coverage 100% (2/2)."> 3</a></td> <td class="src"><pre class="src"> <a title="Line 131: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (mainIterator.hasNext()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 132</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  <span class="keyword">final</span> ListIterator<Dependency> subIterator = engine.getDependencies().listIterator(mainIterator.nextIndex());</pre></td></tr> +<tr> <td class="numLineCover"> 133</td> <td class="nbHitsCovered"><a title="Line 133: Conditional coverage 100% (2/2)."> 5</a></td> <td class="src"><pre class="src"> <a title="Line 133: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (subIterator.hasNext()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 134</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Dependency nextDependency = subIterator.next();</pre></td></tr> <tr> <td class="numLine"> 135</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  && fileNameMatch(dependency, nextDependency)) {</pre></td></tr> -<tr> <td class="numLine"> 136</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 137</td> <td class="nbHitsUncovered"><a title="Line 137: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 137: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (isCore(dependency, nextDependency)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 138</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  dependency.addRelatedDependency(nextDependency);</span></pre></td></tr> +<tr> <td class="numLineCover"> 136</td> <td class="nbHitsUncovered"><a title="Line 136: Conditional coverage 50% (3/6) [each condition: 100%, 50%, 0%]."> 3</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 136: Conditional coverage 50% (3/6) [each condition: 100%, 50%, 0%]."> <span class="keyword">if</span> (identifiersMatch(dependency, nextDependency)</a></span></pre></td></tr> +<tr> <td class="numLine"> 137</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  && hasSameBasePath(dependency, nextDependency)</pre></td></tr> +<tr> <td class="numLine"> 138</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  && fileNameMatch(dependency, nextDependency)) {</pre></td></tr> <tr> <td class="numLine"> 139</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLineCover"> 140</td> <td class="nbHitsUncovered"><a title="Line 140: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 140: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (isCore(dependency, nextDependency)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 141</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  dependency.addRelatedDependency(nextDependency);</span></pre></td></tr> +<tr> <td class="numLine"> 142</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//move any "related dependencies" to the new "parent" dependency</span></pre></td></tr> -<tr> <td class="numLineCover"> 140</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> Iterator<Dependency> i = nextDependency.getRelatedDependencies().iterator();</span></pre></td></tr> -<tr> <td class="numLineCover"> 141</td> <td class="nbHitsUncovered"><a title="Line 141: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 141: Conditional coverage 0% (0/2)."> <span class="keyword">while</span> (i.hasNext()) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 142</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  dependency.addRelatedDependency(i.next());</span></pre></td></tr> -<tr> <td class="numLineCover"> 143</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  i.remove();</span></pre></td></tr> -<tr> <td class="numLine"> 144</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 143</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> Iterator<Dependency> i = nextDependency.getRelatedDependencies().iterator();</span></pre></td></tr> +<tr> <td class="numLineCover"> 144</td> <td class="nbHitsUncovered"><a title="Line 144: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 144: Conditional coverage 0% (0/2)."> <span class="keyword">while</span> (i.hasNext()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 145</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  dependency.addRelatedDependency(i.next());</span></pre></td></tr> +<tr> <td class="numLineCover"> 146</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  i.remove();</span></pre></td></tr> +<tr> <td class="numLine"> 147</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 145</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  dependenciesToRemove.add(nextDependency);</span></pre></td></tr> -<tr> <td class="numLineCover"> 146</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"> 147</td> <td class="nbHitsUncovered"><a title="Line 147: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 147: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (isCore(nextDependency, dependency)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 148</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  nextDependency.addRelatedDependency(dependency);</span></pre></td></tr> -<tr> <td class="numLine"> 149</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">//move any "related dependencies" to the new "parent" dependency</span></pre></td></tr> -<tr> <td class="numLineCover"> 150</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> Iterator<Dependency> i = dependency.getRelatedDependencies().iterator();</span></pre></td></tr> -<tr> <td class="numLineCover"> 151</td> <td class="nbHitsUncovered"><a title="Line 151: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 151: Conditional coverage 0% (0/2)."> <span class="keyword">while</span> (i.hasNext()) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 152</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  nextDependency.addRelatedDependency(i.next());</span></pre></td></tr> -<tr> <td class="numLineCover"> 153</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  i.remove();</span></pre></td></tr> -<tr> <td class="numLine"> 154</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 155</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  dependenciesToRemove.add(dependency);</span></pre></td></tr> +<tr> <td class="numLineCover"> 148</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  dependenciesToRemove.add(nextDependency);</span></pre></td></tr> +<tr> <td class="numLineCover"> 149</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"> 150</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  nextDependency.addRelatedDependency(dependency);</span></pre></td></tr> +<tr> <td class="numLine"> 151</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">//move any "related dependencies" to the new "parent" dependency</span></pre></td></tr> +<tr> <td class="numLineCover"> 152</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> Iterator<Dependency> i = dependency.getRelatedDependencies().iterator();</span></pre></td></tr> +<tr> <td class="numLineCover"> 153</td> <td class="nbHitsUncovered"><a title="Line 153: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 153: Conditional coverage 0% (0/2)."> <span class="keyword">while</span> (i.hasNext()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 154</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  nextDependency.addRelatedDependency(i.next());</span></pre></td></tr> +<tr> <td class="numLineCover"> 155</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  i.remove();</span></pre></td></tr> <tr> <td class="numLine"> 156</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 157</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 157</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  dependenciesToRemove.add(dependency);</span></pre></td></tr> <tr> <td class="numLine"> 158</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 159</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 159</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 160</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 160</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 161</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 161</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 162</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">//removing dependencies here as ensuring correctness and avoiding ConcurrentUpdateExceptions</span></pre></td></tr> +<tr> <td class="numLineCover"> 162</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 163</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">//removing dependencies here as ensuring correctness and avoiding ConcurrentUpdateExceptions</span></pre></td></tr> +<tr> <td class="numLine"> 164</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">// was difficult because of the inner iterator.</span></pre></td></tr> -<tr> <td class="numLineCover"> 164</td> <td class="nbHitsUncovered"><a title="Line 164: Conditional coverage 50% (1/2)."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 164: Conditional coverage 50% (1/2)."> <span class="keyword">for</span> (Dependency d : dependenciesToRemove) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 165</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  engine.getDependencies().remove(d);</span></pre></td></tr> -<tr> <td class="numLine"> 166</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 165</td> <td class="nbHitsUncovered"><a title="Line 165: Conditional coverage 50% (1/2)."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 165: Conditional coverage 50% (1/2)."> <span class="keyword">for</span> (Dependency d : dependenciesToRemove) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 166</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  engine.getDependencies().remove(d);</span></pre></td></tr> <tr> <td class="numLine"> 167</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 168</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 168</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 169</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLineCover"> 169</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 170</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 171</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Attempts to trim a maven repo to a common base path. This is typically</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 172</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * [drive]\[repo_location]\repository\[path1]\[path2].</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * Attempts to trim a maven repo to a common base path. This is typically</span></pre></td></tr> <tr> <td class="numLine"> 173</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * [drive]\[repo_location]\repository\[path1]\[path2].</span></pre></td></tr> <tr> <td class="numLine"> 174</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param path the path to trim</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> <tr> <td class="numLine"> 175</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @return a string representing the base path.</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * @param path the path to trim</span></pre></td></tr> <tr> <td class="numLine"> 176</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * @return a string representing the base path.</span></pre></td></tr> <tr> <td class="numLine"> 177</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 178</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> String getBaseRepoPath(<span class="keyword">final</span> String path) {</pre></td></tr> -<tr> <td class="numLineCover"> 178</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">int</span> pos = path.indexOf(<span class="string">"repository"</span> + File.separator) + 11;</span></pre></td></tr> -<tr> <td class="numLineCover"> 179</td> <td class="nbHitsUncovered"><a title="Line 179: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 179: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (pos < 0) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 180</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> path;</span></pre></td></tr> -<tr> <td class="numLine"> 181</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 179</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">int</span> pos = path.indexOf(<span class="string">"repository"</span> + File.separator) + 11;</span></pre></td></tr> +<tr> <td class="numLineCover"> 180</td> <td class="nbHitsUncovered"><a title="Line 180: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 180: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (pos < 0) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 181</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> path;</span></pre></td></tr> +<tr> <td class="numLine"> 182</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 182</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">int</span> tmp = path.indexOf(File.separator, pos);</span></pre></td></tr> -<tr> <td class="numLineCover"> 183</td> <td class="nbHitsUncovered"><a title="Line 183: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 183: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (tmp <= 0) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 184</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> path;</span></pre></td></tr> -<tr> <td class="numLine"> 185</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 183</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">int</span> tmp = path.indexOf(File.separator, pos);</span></pre></td></tr> +<tr> <td class="numLineCover"> 184</td> <td class="nbHitsUncovered"><a title="Line 184: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 184: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (tmp <= 0) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 185</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> path;</span></pre></td></tr> +<tr> <td class="numLine"> 186</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 186</td> <td class="nbHitsUncovered"><a title="Line 186: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 186: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (tmp > 0) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 187</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  pos = tmp + 1;</span></pre></td></tr> -<tr> <td class="numLine"> 188</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 187</td> <td class="nbHitsUncovered"><a title="Line 187: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 187: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (tmp > 0) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 188</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  pos = tmp + 1;</span></pre></td></tr> +<tr> <td class="numLine"> 189</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 189</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  tmp = path.indexOf(File.separator, pos);</span></pre></td></tr> -<tr> <td class="numLineCover"> 190</td> <td class="nbHitsUncovered"><a title="Line 190: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 190: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (tmp > 0) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 191</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  pos = tmp + 1;</span></pre></td></tr> -<tr> <td class="numLine"> 192</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 190</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  tmp = path.indexOf(File.separator, pos);</span></pre></td></tr> +<tr> <td class="numLineCover"> 191</td> <td class="nbHitsUncovered"><a title="Line 191: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 191: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (tmp > 0) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 192</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  pos = tmp + 1;</span></pre></td></tr> +<tr> <td class="numLine"> 193</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 193</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> path.substring(0, pos);</span></pre></td></tr> -<tr> <td class="numLine"> 194</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 194</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> path.substring(0, pos);</span></pre></td></tr> <tr> <td class="numLine"> 195</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"> 196</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 197</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Returns true if the file names (and version if it exists) of the two</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 198</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * dependencies are sufficiently similiar.</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * Returns true if the file names (and version if it exists) of the two</span></pre></td></tr> <tr> <td class="numLine"> 199</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * dependencies are sufficiently similiar.</span></pre></td></tr> <tr> <td class="numLine"> 200</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param dependency1 a dependency2 to compare</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> <tr> <td class="numLine"> 201</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param dependency2 a dependency2 to compare</span></pre></td></tr> -<tr> <td class="numLine"> 202</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @return true if the identifiers in the two supplied dependencies are</span></pre></td></tr> -<tr> <td class="numLine"> 203</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * equal</span></pre></td></tr> -<tr> <td class="numLine"> 204</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 205</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">boolean</span> fileNameMatch(Dependency dependency1, Dependency dependency2) {</pre></td></tr> -<tr> <td class="numLineCover"> 206</td> <td class="nbHitsUncovered"><a title="Line 206: Conditional coverage 0% (0/8) [each condition: 0%, 0%, 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 206: Conditional coverage 0% (0/8) [each condition: 0%, 0%, 0%, 0%]."> <span class="keyword">if</span> (dependency1 == <span class="keyword">null</span> || dependency1.getFileName() == <span class="keyword">null</span></a></span></pre></td></tr> -<tr> <td class="numLine"> 207</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  || dependency2 == <span class="keyword">null</span> || dependency2.getFileName() == <span class="keyword">null</span>) {</pre></td></tr> -<tr> <td class="numLineCover"> 208</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> -<tr> <td class="numLine"> 209</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 210</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  String fileName1 = dependency1.getFileName();</span></pre></td></tr> -<tr> <td class="numLineCover"> 211</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  String fileName2 = dependency2.getFileName();</span></pre></td></tr> -<tr> <td class="numLine"> 212</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 213</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">//update to deal with archive analyzer, the starting name maybe the same</span></pre></td></tr> -<tr> <td class="numLine"> 214</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">// as this is incorrectly looking at the starting path</span></pre></td></tr> -<tr> <td class="numLineCover"> 215</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> File one = <span class="keyword">new</span> File(fileName1);</span></pre></td></tr> -<tr> <td class="numLineCover"> 216</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> File two = <span class="keyword">new</span> File(fileName2);</span></pre></td></tr> -<tr> <td class="numLineCover"> 217</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String oneParent = one.getParent();</span></pre></td></tr> -<tr> <td class="numLineCover"> 218</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String twoParent = two.getParent();</span></pre></td></tr> -<tr> <td class="numLineCover"> 219</td> <td class="nbHitsUncovered"><a title="Line 219: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 219: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (oneParent != <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 220</td> <td class="nbHitsUncovered"><a title="Line 220: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 220: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> <span class="keyword">if</span> (twoParent != <span class="keyword">null</span> && oneParent.equals(twoParent)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 221</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  fileName1 = one.getName();</span></pre></td></tr> -<tr> <td class="numLineCover"> 222</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  fileName2 = two.getName();</span></pre></td></tr> -<tr> <td class="numLine"> 223</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 224</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> -<tr> <td class="numLine"> 225</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 226</td> <td class="nbHitsUncovered"><a title="Line 226: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 226: Conditional coverage 0% (0/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (twoParent != <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 227</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> -<tr> <td class="numLine"> 228</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 229</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 230</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">//version check</span></pre></td></tr> -<tr> <td class="numLineCover"> 231</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> DependencyVersion version1 = DependencyVersionUtil.parseVersion(fileName1);</span></pre></td></tr> -<tr> <td class="numLineCover"> 232</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> DependencyVersion version2 = DependencyVersionUtil.parseVersion(fileName2);</span></pre></td></tr> -<tr> <td class="numLineCover"> 233</td> <td class="nbHitsUncovered"><a title="Line 233: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 233: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> <span class="keyword">if</span> (version1 != <span class="keyword">null</span> && version2 != <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 234</td> <td class="nbHitsUncovered"><a title="Line 234: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 234: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (!version1.equals(version2)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 235</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> -<tr> <td class="numLine"> 236</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 237</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 238</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 239</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">//filename check</span></pre></td></tr> -<tr> <td class="numLineCover"> 240</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> Matcher match1 = STARTING_TEXT_PATTERN.matcher(fileName1);</span></pre></td></tr> -<tr> <td class="numLineCover"> 241</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> Matcher match2 = STARTING_TEXT_PATTERN.matcher(fileName2);</span></pre></td></tr> -<tr> <td class="numLineCover"> 242</td> <td class="nbHitsUncovered"><a title="Line 242: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 242: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> <span class="keyword">if</span> (match1.find() && match2.find()) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 243</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> match1.group().equals(match2.group());</span></pre></td></tr> -<tr> <td class="numLine"> 244</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 245</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 246</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> -<tr> <td class="numLine"> 247</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 248</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 249</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 250</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Returns true if the identifiers in the two supplied dependencies are</span></pre></td></tr> -<tr> <td class="numLine"> 251</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * equal.</span></pre></td></tr> -<tr> <td class="numLine"> 252</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 253</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * @param dependency1 a dependency2 to compare</span></pre></td></tr> -<tr> <td class="numLine"> 254</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 202</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * @param dependency2 a dependency2 to compare</span></pre></td></tr> -<tr> <td class="numLine"> 255</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 203</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * @return true if the identifiers in the two supplied dependencies are</span></pre></td></tr> -<tr> <td class="numLine"> 256</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 204</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * equal</span></pre></td></tr> +<tr> <td class="numLine"> 205</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 206</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">boolean</span> fileNameMatch(Dependency dependency1, Dependency dependency2) {</pre></td></tr> +<tr> <td class="numLineCover"> 207</td> <td class="nbHitsUncovered"><a title="Line 207: Conditional coverage 0% (0/8) [each condition: 0%, 0%, 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 207: Conditional coverage 0% (0/8) [each condition: 0%, 0%, 0%, 0%]."> <span class="keyword">if</span> (dependency1 == <span class="keyword">null</span> || dependency1.getFileName() == <span class="keyword">null</span></a></span></pre></td></tr> +<tr> <td class="numLine"> 208</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  || dependency2 == <span class="keyword">null</span> || dependency2.getFileName() == <span class="keyword">null</span>) {</pre></td></tr> +<tr> <td class="numLineCover"> 209</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> +<tr> <td class="numLine"> 210</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 211</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  String fileName1 = dependency1.getFileName();</span></pre></td></tr> +<tr> <td class="numLineCover"> 212</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  String fileName2 = dependency2.getFileName();</span></pre></td></tr> +<tr> <td class="numLine"> 213</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 214</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">//update to deal with archive analyzer, the starting name maybe the same</span></pre></td></tr> +<tr> <td class="numLine"> 215</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">// as this is incorrectly looking at the starting path</span></pre></td></tr> +<tr> <td class="numLineCover"> 216</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> File one = <span class="keyword">new</span> File(fileName1);</span></pre></td></tr> +<tr> <td class="numLineCover"> 217</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> File two = <span class="keyword">new</span> File(fileName2);</span></pre></td></tr> +<tr> <td class="numLineCover"> 218</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String oneParent = one.getParent();</span></pre></td></tr> +<tr> <td class="numLineCover"> 219</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String twoParent = two.getParent();</span></pre></td></tr> +<tr> <td class="numLineCover"> 220</td> <td class="nbHitsUncovered"><a title="Line 220: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 220: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (oneParent != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 221</td> <td class="nbHitsUncovered"><a title="Line 221: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 221: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> <span class="keyword">if</span> (twoParent != <span class="keyword">null</span> && oneParent.equals(twoParent)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 222</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  fileName1 = one.getName();</span></pre></td></tr> +<tr> <td class="numLineCover"> 223</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  fileName2 = two.getName();</span></pre></td></tr> +<tr> <td class="numLine"> 224</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 225</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> +<tr> <td class="numLine"> 226</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 227</td> <td class="nbHitsUncovered"><a title="Line 227: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 227: Conditional coverage 0% (0/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (twoParent != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 228</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> +<tr> <td class="numLine"> 229</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 230</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 231</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">//version check</span></pre></td></tr> +<tr> <td class="numLineCover"> 232</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> DependencyVersion version1 = DependencyVersionUtil.parseVersion(fileName1);</span></pre></td></tr> +<tr> <td class="numLineCover"> 233</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> DependencyVersion version2 = DependencyVersionUtil.parseVersion(fileName2);</span></pre></td></tr> +<tr> <td class="numLineCover"> 234</td> <td class="nbHitsUncovered"><a title="Line 234: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 234: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> <span class="keyword">if</span> (version1 != <span class="keyword">null</span> && version2 != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 235</td> <td class="nbHitsUncovered"><a title="Line 235: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 235: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (!version1.equals(version2)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 236</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> +<tr> <td class="numLine"> 237</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 238</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 239</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 240</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">//filename check</span></pre></td></tr> +<tr> <td class="numLineCover"> 241</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> Matcher match1 = STARTING_TEXT_PATTERN.matcher(fileName1);</span></pre></td></tr> +<tr> <td class="numLineCover"> 242</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> Matcher match2 = STARTING_TEXT_PATTERN.matcher(fileName2);</span></pre></td></tr> +<tr> <td class="numLineCover"> 243</td> <td class="nbHitsUncovered"><a title="Line 243: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 243: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> <span class="keyword">if</span> (match1.find() && match2.find()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 244</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> match1.group().equals(match2.group());</span></pre></td></tr> +<tr> <td class="numLine"> 245</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 246</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLineCover"> 247</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> +<tr> <td class="numLine"> 248</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 249</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 250</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 251</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Returns true if the identifiers in the two supplied dependencies are</span></pre></td></tr> +<tr> <td class="numLine"> 252</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * equal.</span></pre></td></tr> +<tr> <td class="numLine"> 253</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 254</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param dependency1 a dependency2 to compare</span></pre></td></tr> +<tr> <td class="numLine"> 255</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param dependency2 a dependency2 to compare</span></pre></td></tr> +<tr> <td class="numLine"> 256</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @return true if the identifiers in the two supplied dependencies are</span></pre></td></tr> <tr> <td class="numLine"> 257</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * equal</span></pre></td></tr> <tr> <td class="numLine"> 258</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 259</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">boolean</span> identifiersMatch(Dependency dependency1, Dependency dependency2) {</pre></td></tr> -<tr> <td class="numLineCover"> 259</td> <td class="nbHitsUncovered"><a title="Line 259: Conditional coverage 50% (4/8) [each condition: 50%, 50%, 50%, 50%]."> 3</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 259: Conditional coverage 50% (4/8) [each condition: 50%, 50%, 50%, 50%]."> <span class="keyword">if</span> (dependency1 == <span class="keyword">null</span> || dependency1.getIdentifiers() == <span class="keyword">null</span></a></span></pre></td></tr> -<tr> <td class="numLine"> 260</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 260</td> <td class="nbHitsUncovered"><a title="Line 260: Conditional coverage 50% (4/8) [each condition: 50%, 50%, 50%, 50%]."> 3</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 260: Conditional coverage 50% (4/8) [each condition: 50%, 50%, 50%, 50%]."> <span class="keyword">if</span> (dependency1 == <span class="keyword">null</span> || dependency1.getIdentifiers() == <span class="keyword">null</span></a></span></pre></td></tr> +<tr> <td class="numLine"> 261</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  || dependency2 == <span class="keyword">null</span> || dependency2.getIdentifiers() == <span class="keyword">null</span>) {</pre></td></tr> -<tr> <td class="numLineCover"> 261</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> -<tr> <td class="numLine"> 262</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 262</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> +<tr> <td class="numLine"> 263</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 263</td> <td class="nbHitsUncovered"><a title="Line 263: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 3</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 263: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">return</span> dependency1.getIdentifiers().size() > 0</a></span></pre></td></tr> -<tr> <td class="numLine"> 264</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  && dependency2.getIdentifiers().equals(dependency1.getIdentifiers());</pre></td></tr> +<tr> <td class="numLineCover"> 264</td> <td class="nbHitsUncovered"><a title="Line 264: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> 3</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 264: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> <span class="keyword">final</span> <span class="keyword">boolean</span> matches = dependency1.getIdentifiers().size() > 0</a></span></pre></td></tr> <tr> <td class="numLine"> 265</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 266</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 267</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 268</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Determines if the two dependencies have the same base path.</span></pre></td></tr> + <td class="src"><pre class="src">  && dependency2.getIdentifiers().equals(dependency1.getIdentifiers());</pre></td></tr> +<tr> <td class="numLineCover"> 266</td> <td class="nbHitsUncovered"><a title="Line 266: Conditional coverage 50% (1/2)."> 3</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 266: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (LogUtils.isVerboseLoggingEnabled()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 267</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">"IdentifiersMatch=%s (%s, %s)"</span>, matches, dependency1.getFileName(), dependency2.getFileName());</span></pre></td></tr> +<tr> <td class="numLineCover"> 268</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(DependencyBundlingAnalyzer.<span class="keyword">class</span>.getName()).log(Level.FINE, msg);</span></pre></td></tr> <tr> <td class="numLine"> 269</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 270</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param dependency1 a Dependency object</span></pre></td></tr> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 270</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">return</span> matches;</pre></td></tr> <tr> <td class="numLine"> 271</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param dependency2 a Dependency object</span></pre></td></tr> + <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 272</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @return true if the base paths of the dependencies are identical</span></pre></td></tr> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 273</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 274</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">boolean</span> hasSameBasePath(Dependency dependency1, Dependency dependency2) {</pre></td></tr> -<tr> <td class="numLineCover"> 275</td> <td class="nbHitsUncovered"><a title="Line 275: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 275: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> <span class="keyword">if</span> (dependency1 == <span class="keyword">null</span> || dependency2 == <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 276</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> -<tr> <td class="numLine"> 277</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 278</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> File lFile = <span class="keyword">new</span> File(dependency1.getFilePath());</span></pre></td></tr> -<tr> <td class="numLineCover"> 279</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  String left = lFile.getParent();</span></pre></td></tr> -<tr> <td class="numLineCover"> 280</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> File rFile = <span class="keyword">new</span> File(dependency2.getFilePath());</span></pre></td></tr> -<tr> <td class="numLineCover"> 281</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  String right = rFile.getParent();</span></pre></td></tr> -<tr> <td class="numLineCover"> 282</td> <td class="nbHitsUncovered"><a title="Line 282: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 282: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (left == <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 283</td> <td class="nbHitsUncovered"><a title="Line 283: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 283: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (right == <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 284</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">true</span>;</span></pre></td></tr> -<tr> <td class="numLine"> 285</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 286</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> -<tr> <td class="numLine"> 287</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 288</td> <td class="nbHitsUncovered"><a title="Line 288: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 288: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (left.equalsIgnoreCase(right)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 289</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">true</span>;</span></pre></td></tr> -<tr> <td class="numLine"> 290</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 291</td> <td class="nbHitsUncovered"><a title="Line 291: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 291: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> <span class="keyword">if</span> (left.matches(<span class="string">".*[/\\\\]repository[/\\\\].*"</span>) && right.matches(<span class="string">".*[/\\\\]repository[/\\\\].*"</span>)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 292</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  left = getBaseRepoPath(left);</span></pre></td></tr> -<tr> <td class="numLineCover"> 293</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  right = getBaseRepoPath(right);</span></pre></td></tr> -<tr> <td class="numLine"> 294</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 295</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> left.equalsIgnoreCase(right);</span></pre></td></tr> -<tr> <td class="numLine"> 296</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 297</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 298</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 299</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * This is likely a very broken attempt at determining if the 'left'</span></pre></td></tr> -<tr> <td class="numLine"> 300</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * dependency is the 'core' library in comparison to the 'right' library.</span></pre></td></tr> -<tr> <td class="numLine"> 301</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 274</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Determines if the two dependencies have the same base path.</span></pre></td></tr> +<tr> <td class="numLine"> 275</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 302</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * TODO - consider splitting on /\._-\s/ and checking if all of one side is</span></pre></td></tr> -<tr> <td class="numLine"> 303</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * fully contained in the other With the exception of the word "core". This</span></pre></td></tr> -<tr> <td class="numLine"> 304</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * might work even on groups when we don't have a CVE.</span></pre></td></tr> -<tr> <td class="numLine"> 305</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 306</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param left the dependency to test</span></pre></td></tr> -<tr> <td class="numLine"> 307</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param right the dependency to test against</span></pre></td></tr> -<tr> <td class="numLine"> 308</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @return a boolean indicating whether or not the left dependency should be</span></pre></td></tr> -<tr> <td class="numLine"> 309</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * considered the "core" version.</span></pre></td></tr> -<tr> <td class="numLine"> 310</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 276</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param dependency1 a Dependency object</span></pre></td></tr> +<tr> <td class="numLine"> 277</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param dependency2 a Dependency object</span></pre></td></tr> +<tr> <td class="numLine"> 278</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @return true if the base paths of the dependencies are identical</span></pre></td></tr> +<tr> <td class="numLine"> 279</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 311</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">boolean</span> isCore(Dependency left, Dependency right) {</pre></td></tr> -<tr> <td class="numLineCover"> 312</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String leftName = left.getFileName().toLowerCase();</span></pre></td></tr> -<tr> <td class="numLineCover"> 313</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String rightName = right.getFileName().toLowerCase();</span></pre></td></tr> -<tr> <td class="numLine"> 314</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 315</td> <td class="nbHitsUncovered"><a title="Line 315: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 315: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> <span class="keyword">if</span> (rightName.contains(<span class="string">"core"</span>) && !leftName.contains(<span class="string">"core"</span>)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 316</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> -<tr> <td class="numLineCover"> 317</td> <td class="nbHitsUncovered"><a title="Line 317: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 317: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> } <span class="keyword">else</span> <span class="keyword">if</span> (!rightName.contains(<span class="string">"core"</span>) && leftName.contains(<span class="string">"core"</span>)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 318</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">true</span>;</span></pre></td></tr> -<tr> <td class="numLine"> 319</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLine"> 320</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">//TODO should we be splitting the name on [-_(.\d)+] and seeing if the</span></pre></td></tr> -<tr> <td class="numLine"> 321</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">// parts are contained in the other side?</span></pre></td></tr> -<tr> <td class="numLineCover"> 322</td> <td class="nbHitsUncovered"><a title="Line 322: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 322: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (leftName.length() > rightName.length()) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 323</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> -<tr> <td class="numLine"> 324</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 325</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">true</span>;</span></pre></td></tr> -<tr> <td class="numLine"> 326</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 280</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">boolean</span> hasSameBasePath(Dependency dependency1, Dependency dependency2) {</pre></td></tr> +<tr> <td class="numLineCover"> 281</td> <td class="nbHitsUncovered"><a title="Line 281: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 281: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">if</span> (dependency1 == <span class="keyword">null</span> || dependency2 == <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 282</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> +<tr> <td class="numLine"> 283</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 327</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 284</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File lFile = <span class="keyword">new</span> File(dependency1.getFilePath());</pre></td></tr> +<tr> <td class="numLineCover"> 285</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  String left = lFile.getParent();</pre></td></tr> +<tr> <td class="numLineCover"> 286</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File rFile = <span class="keyword">new</span> File(dependency2.getFilePath());</pre></td></tr> +<tr> <td class="numLineCover"> 287</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  String right = rFile.getParent();</pre></td></tr> +<tr> <td class="numLineCover"> 288</td> <td class="nbHitsUncovered"><a title="Line 288: Conditional coverage 50% (1/2)."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 288: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (left == <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 289</td> <td class="nbHitsUncovered"><a title="Line 289: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 289: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (right == <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 290</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">true</span>;</span></pre></td></tr> +<tr> <td class="numLine"> 291</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 292</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> +<tr> <td class="numLine"> 293</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 294</td> <td class="nbHitsUncovered"><a title="Line 294: Conditional coverage 50% (1/2)."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 294: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (left.equalsIgnoreCase(right)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 295</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">true</span>;</span></pre></td></tr> +<tr> <td class="numLine"> 296</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 297</td> <td class="nbHitsUncovered"><a title="Line 297: Conditional coverage 25% (1/4) [each condition: 50%, 0%]."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 297: Conditional coverage 25% (1/4) [each condition: 50%, 0%]."> <span class="keyword">if</span> (left.matches(<span class="string">".*[/\\\\]repository[/\\\\].*"</span>) && right.matches(<span class="string">".*[/\\\\]repository[/\\\\].*"</span>)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 298</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  left = getBaseRepoPath(left);</span></pre></td></tr> +<tr> <td class="numLineCover"> 299</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  right = getBaseRepoPath(right);</span></pre></td></tr> +<tr> <td class="numLine"> 300</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 301</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">return</span> left.equalsIgnoreCase(right);</pre></td></tr> +<tr> <td class="numLine"> 302</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 303</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 304</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 305</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * This is likely a very broken attempt at determining if the 'left'</span></pre></td></tr> +<tr> <td class="numLine"> 306</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * dependency is the 'core' library in comparison to the 'right' library.</span></pre></td></tr> +<tr> <td class="numLine"> 307</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 308</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param left the dependency to test</span></pre></td></tr> +<tr> <td class="numLine"> 309</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param right the dependency to test against</span></pre></td></tr> +<tr> <td class="numLine"> 310</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @return a boolean indicating whether or not the left dependency should be</span></pre></td></tr> +<tr> <td class="numLine"> 311</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * considered the "core" version.</span></pre></td></tr> +<tr> <td class="numLine"> 312</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 313</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">boolean</span> isCore(Dependency left, Dependency right) {</pre></td></tr> +<tr> <td class="numLineCover"> 314</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String leftName = left.getFileName().toLowerCase();</span></pre></td></tr> +<tr> <td class="numLineCover"> 315</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String rightName = right.getFileName().toLowerCase();</span></pre></td></tr> +<tr> <td class="numLine"> 316</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">boolean</span> returnVal;</pre></td></tr> +<tr> <td class="numLineCover"> 317</td> <td class="nbHitsUncovered"><a title="Line 317: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 317: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> <span class="keyword">if</span> (rightName.contains(<span class="string">"core"</span>) && !leftName.contains(<span class="string">"core"</span>)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 318</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  returnVal = <span class="keyword">false</span>;</span></pre></td></tr> +<tr> <td class="numLineCover"> 319</td> <td class="nbHitsUncovered"><a title="Line 319: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 319: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> } <span class="keyword">else</span> <span class="keyword">if</span> (!rightName.contains(<span class="string">"core"</span>) && leftName.contains(<span class="string">"core"</span>)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 320</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  returnVal = <span class="keyword">true</span>;</span></pre></td></tr> +<tr> <td class="numLine"> 321</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> +<tr> <td class="numLine"> 322</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/*</span></pre></td></tr> +<tr> <td class="numLine"> 323</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * considered splitting the names up and comparing the components,</span></pre></td></tr> +<tr> <td class="numLine"> 324</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * but decided that the file name length should be sufficient as the</span></pre></td></tr> +<tr> <td class="numLine"> 325</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * "core" component, if this follows a normal namming protocol should</span></pre></td></tr> +<tr> <td class="numLine"> 326</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * be shorter:</span></pre></td></tr> +<tr> <td class="numLine"> 327</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * axis2-saaj-1.4.1.jar</span></pre></td></tr> <tr> <td class="numLine"> 328</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * axis2-1.4.1.jar <-----</span></pre></td></tr> +<tr> <td class="numLine"> 329</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * axis2-kernal-1.4.1.jar</span></pre></td></tr> +<tr> <td class="numLine"> 330</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLineCover"> 331</td> <td class="nbHitsUncovered"><a title="Line 331: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 331: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (leftName.length() > rightName.length()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 332</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  returnVal = <span class="keyword">false</span>;</span></pre></td></tr> +<tr> <td class="numLine"> 333</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 334</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  returnVal = <span class="keyword">true</span>;</span></pre></td></tr> +<tr> <td class="numLine"> 335</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 336</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 337</td> <td class="nbHitsUncovered"><a title="Line 337: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 337: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (LogUtils.isVerboseLoggingEnabled()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 338</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">"IsCore=%s (%s, %s)"</span>, returnVal, left.getFileName(), right.getFileName());</span></pre></td></tr> +<tr> <td class="numLineCover"> 339</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(DependencyBundlingAnalyzer.<span class="keyword">class</span>.getName()).log(Level.FINE, msg);</span></pre></td></tr> +<tr> <td class="numLine"> 340</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 341</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> returnVal;</span></pre></td></tr> +<tr> <td class="numLine"> 342</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 343</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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.html index 8b5f4b01b..04cbe9da4 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.html @@ -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.FalsePositiveAnalyzer.html">FalsePositiveAnalyzer</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">70%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:70px"><span class="text">66/94</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">46%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:46px"><span class="text">39/84</span></div></div></td></tr></table></td><td class="value"><span class="hidden">5.6;</span>5.6</td></tr> + <tr><td><a href="org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.html">FalsePositiveAnalyzer</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">69%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:69px"><span class="text">80/115</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">46%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:46px"><span class="text">52/112</span></div></div></td></tr></table></td><td class="value"><span class="hidden">6.454545454545454;</span>6.455</td></tr> </table> <div class="separator"> </div> @@ -144,7 +144,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 65</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Set<String> getSupportedExtensions() {</pre></td></tr> -<tr> <td class="numLineCover"> 66</td> <td class="nbHitsCovered"> 129</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EXTENSIONS;</pre></td></tr> +<tr> <td class="numLineCover"> 66</td> <td class="nbHitsCovered"> 132</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EXTENSIONS;</pre></td></tr> <tr> <td class="numLine"> 67</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 68</td> <td class="nbHits"> </td> @@ -161,7 +161,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 74</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"> 75</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYZER_NAME;</pre></td></tr> +<tr> <td class="numLineCover"> 75</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYZER_NAME;</pre></td></tr> <tr> <td class="numLine"> 76</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 77</td> <td class="nbHits"> </td> @@ -182,7 +182,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 85</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> supportsExtension(String extension) {</pre></td></tr> -<tr> <td class="numLineCover"> 86</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 86</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> <tr> <td class="numLine"> 87</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 88</td> <td class="nbHits"> </td> @@ -199,7 +199,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 94</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> AnalysisPhase getAnalysisPhase() {</pre></td></tr> -<tr> <td class="numLineCover"> 95</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYSIS_PHASE;</pre></td></tr> +<tr> <td class="numLineCover"> 95</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYSIS_PHASE;</pre></td></tr> <tr> <td class="numLine"> 96</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 97</td> <td class="nbHits"> </td> @@ -228,373 +228,424 @@ <td class="src"><pre class="src">  @Override</pre></td></tr> <tr> <td class="numLine"> 109</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> analyze(Dependency dependency, Engine engine) <span class="keyword">throws</span> AnalysisException {</pre></td></tr> -<tr> <td class="numLineCover"> 110</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  removeJreEntries(dependency);</pre></td></tr> -<tr> <td class="numLineCover"> 111</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  removeBadMatches(dependency);</pre></td></tr> -<tr> <td class="numLineCover"> 112</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  removeSpuriousCPE(dependency);</pre></td></tr> -<tr> <td class="numLineCover"> 113</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  addFalseNegativeCPEs(dependency);</pre></td></tr> -<tr> <td class="numLineCover"> 114</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 115</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLineCover"> 110</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  removeJreEntries(dependency);</pre></td></tr> +<tr> <td class="numLineCover"> 111</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  removeBadMatches(dependency);</pre></td></tr> +<tr> <td class="numLineCover"> 112</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  removeWrongVersionMatches(dependency);</pre></td></tr> +<tr> <td class="numLineCover"> 113</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  removeSpuriousCPE(dependency);</pre></td></tr> +<tr> <td class="numLineCover"> 114</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  addFalseNegativeCPEs(dependency);</pre></td></tr> +<tr> <td class="numLineCover"> 115</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 116</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 117</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * <p>Intended to remove spurious CPE entries. By spurious we mean</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 118</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * duplicate, less specific CPE entries.</p></span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * <p>Intended to remove spurious CPE entries. By spurious we mean</span></pre></td></tr> <tr> <td class="numLine"> 119</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * <p>Example:</p></span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * duplicate, less specific CPE entries.</p></span></pre></td></tr> <tr> <td class="numLine"> 120</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * <code></span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * <p>Example:</p></span></pre></td></tr> <tr> <td class="numLine"> 121</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * cpe:/a:some-vendor:some-product</span></pre></td></tr> -<tr> <td class="numLine"> 122</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * cpe:/a:some-vendor:some-product:1.5</span></pre></td></tr> -<tr> <td class="numLine"> 123</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * cpe:/a:some-vendor:some-product:1.5.2</span></pre></td></tr> -<tr> <td class="numLine"> 124</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * </code></span></pre></td></tr> -<tr> <td class="numLine"> 125</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * <p>Should be trimmed to:</p></span></pre></td></tr> -<tr> <td class="numLine"> 126</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * <code></span></pre></td></tr> -<tr> <td class="numLine"> 127</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 122</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * cpe:/a:some-vendor:some-product</span></pre></td></tr> +<tr> <td class="numLine"> 123</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * cpe:/a:some-vendor:some-product:1.5</span></pre></td></tr> +<tr> <td class="numLine"> 124</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * cpe:/a:some-vendor:some-product:1.5.2</span></pre></td></tr> -<tr> <td class="numLine"> 128</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 125</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * </code></span></pre></td></tr> +<tr> <td class="numLine"> 126</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * <p>Should be trimmed to:</p></span></pre></td></tr> +<tr> <td class="numLine"> 127</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * <code></span></pre></td></tr> +<tr> <td class="numLine"> 128</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * cpe:/a:some-vendor:some-product:1.5.2</span></pre></td></tr> <tr> <td class="numLine"> 129</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * </code></span></pre></td></tr> <tr> <td class="numLine"> 130</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param dependency the dependency being analyzed</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> <tr> <td class="numLine"> 131</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * @param dependency the dependency being analyzed</span></pre></td></tr> <tr> <td class="numLine"> 132</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 133</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  @SuppressWarnings(<span class="string">"null"</span>)</pre></td></tr> +<tr> <td class="numLine"> 134</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> removeSpuriousCPE(Dependency dependency) {</pre></td></tr> -<tr> <td class="numLineCover"> 133</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<Identifier> ids = <span class="keyword">new</span> ArrayList<Identifier>();</pre></td></tr> -<tr> <td class="numLineCover"> 134</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  ids.addAll(dependency.getIdentifiers());</pre></td></tr> -<tr> <td class="numLineCover"> 135</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  Collections.sort(ids);</pre></td></tr> -<tr> <td class="numLineCover"> 136</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">final</span> ListIterator<Identifier> mainItr = ids.listIterator();</pre></td></tr> -<tr> <td class="numLineCover"> 137</td> <td class="nbHitsCovered"><a title="Line 137: Conditional coverage 100% (2/2)."> 23</a></td> <td class="src"><pre class="src"> <a title="Line 137: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (mainItr.hasNext()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 138</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Identifier currentId = mainItr.next();</pre></td></tr> -<tr> <td class="numLineCover"> 139</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src">  <span class="keyword">final</span> VulnerableSoftware currentCpe = parseCpe(currentId.getType(), currentId.getValue());</pre></td></tr> -<tr> <td class="numLineCover"> 140</td> <td class="nbHitsUncovered"><a title="Line 140: Conditional coverage 50% (1/2)."> 14</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 140: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (currentCpe == <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 141</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"> 142</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 135</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<Identifier> ids = <span class="keyword">new</span> ArrayList<Identifier>();</pre></td></tr> +<tr> <td class="numLineCover"> 136</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  ids.addAll(dependency.getIdentifiers());</pre></td></tr> +<tr> <td class="numLineCover"> 137</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  Collections.sort(ids);</pre></td></tr> +<tr> <td class="numLineCover"> 138</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> ListIterator<Identifier> mainItr = ids.listIterator();</pre></td></tr> +<tr> <td class="numLineCover"> 139</td> <td class="nbHitsCovered"><a title="Line 139: Conditional coverage 100% (2/2)."> 36</a></td> <td class="src"><pre class="src"> <a title="Line 139: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (mainItr.hasNext()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 140</td> <td class="nbHitsCovered"> 21</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Identifier currentId = mainItr.next();</pre></td></tr> +<tr> <td class="numLineCover"> 141</td> <td class="nbHitsCovered"> 21</td> <td class="src"><pre class="src">  <span class="keyword">final</span> VulnerableSoftware currentCpe = parseCpe(currentId.getType(), currentId.getValue());</pre></td></tr> +<tr> <td class="numLineCover"> 142</td> <td class="nbHitsUncovered"><a title="Line 142: Conditional coverage 50% (1/2)."> 21</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 142: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (currentCpe == <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 143</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"> 144</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 143</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src">  <span class="keyword">final</span> ListIterator<Identifier> subItr = ids.listIterator(mainItr.nextIndex());</pre></td></tr> -<tr> <td class="numLineCover"> 144</td> <td class="nbHitsCovered"><a title="Line 144: Conditional coverage 100% (2/2)."> 24</a></td> <td class="src"><pre class="src"> <a title="Line 144: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (subItr.hasNext()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 145</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Identifier nextId = subItr.next();</pre></td></tr> -<tr> <td class="numLineCover"> 146</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  <span class="keyword">final</span> VulnerableSoftware nextCpe = parseCpe(nextId.getType(), nextId.getValue());</pre></td></tr> -<tr> <td class="numLineCover"> 147</td> <td class="nbHitsUncovered"><a title="Line 147: Conditional coverage 50% (1/2)."> 10</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 147: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (nextCpe == <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 148</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"> 149</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 145</td> <td class="nbHitsCovered"> 21</td> <td class="src"><pre class="src">  <span class="keyword">final</span> ListIterator<Identifier> subItr = ids.listIterator(mainItr.nextIndex());</pre></td></tr> +<tr> <td class="numLineCover"> 146</td> <td class="nbHitsCovered"><a title="Line 146: Conditional coverage 100% (2/2)."> 32</a></td> <td class="src"><pre class="src"> <a title="Line 146: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (subItr.hasNext()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 147</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Identifier nextId = subItr.next();</pre></td></tr> +<tr> <td class="numLineCover"> 148</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  <span class="keyword">final</span> VulnerableSoftware nextCpe = parseCpe(nextId.getType(), nextId.getValue());</pre></td></tr> +<tr> <td class="numLineCover"> 149</td> <td class="nbHitsUncovered"><a title="Line 149: Conditional coverage 50% (1/2)."> 11</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 149: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (nextCpe == <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 150</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"> 151</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 150</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 152</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//TODO fix the version problem below</span></pre></td></tr> -<tr> <td class="numLineCover"> 151</td> <td class="nbHitsCovered"><a title="Line 151: Conditional coverage 100% (2/2)."> 10</a></td> <td class="src"><pre class="src"> <a title="Line 151: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (currentCpe.getVendor().equals(nextCpe.getVendor())) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 152</td> <td class="nbHitsCovered"><a title="Line 152: Conditional coverage 100% (2/2)."> 2</a></td> <td class="src"><pre class="src"> <a title="Line 152: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (currentCpe.getProduct().equals(nextCpe.getProduct())) {</a></pre></td></tr> -<tr> <td class="numLine"> 153</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 153</td> <td class="nbHitsCovered"><a title="Line 153: Conditional coverage 100% (2/2)."> 11</a></td> <td class="src"><pre class="src"> <a title="Line 153: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (currentCpe.getVendor().equals(nextCpe.getVendor())) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 154</td> <td class="nbHitsUncovered"><a title="Line 154: Conditional coverage 50% (1/2)."> 3</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 154: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (currentCpe.getProduct().equals(nextCpe.getProduct())) {</a></span></pre></td></tr> +<tr> <td class="numLine"> 155</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">// see if one is contained in the other.. remove the contained one from dependency.getIdentifier</span></pre></td></tr> -<tr> <td class="numLineCover"> 154</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String currentVersion = currentCpe.getVersion();</pre></td></tr> -<tr> <td class="numLineCover"> 155</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String nextVersion = nextCpe.getVersion();</pre></td></tr> -<tr> <td class="numLineCover"> 156</td> <td class="nbHitsUncovered"><a title="Line 156: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 156: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">if</span> (currentVersion == <span class="keyword">null</span> && nextVersion == <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLine"> 157</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">//how did we get here?</span></pre></td></tr> -<tr> <td class="numLineCover"> 158</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(FalsePositiveAnalyzer.<span class="keyword">class</span></span></pre></td></tr> +<tr> <td class="numLineCover"> 156</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String currentVersion = currentCpe.getVersion();</pre></td></tr> +<tr> <td class="numLineCover"> 157</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String nextVersion = nextCpe.getVersion();</pre></td></tr> +<tr> <td class="numLineCover"> 158</td> <td class="nbHitsUncovered"><a title="Line 158: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 3</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 158: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">if</span> (currentVersion == <span class="keyword">null</span> && nextVersion == <span class="keyword">null</span>) {</a></span></pre></td></tr> <tr> <td class="numLine"> 159</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">//how did we get here?</span></pre></td></tr> +<tr> <td class="numLineCover"> 160</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(FalsePositiveAnalyzer.<span class="keyword">class</span></span></pre></td></tr> +<tr> <td class="numLine"> 161</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  .getName()).log(Level.FINE, <span class="string">"currentVersion and nextVersion are both null?"</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 160</td> <td class="nbHitsUncovered"><a title="Line 160: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 160: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> } <span class="keyword">else</span> <span class="keyword">if</span> (currentVersion == <span class="keyword">null</span> && nextVersion != <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 161</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  dependency.getIdentifiers().remove(currentId);</pre></td></tr> -<tr> <td class="numLineCover"> 162</td> <td class="nbHitsUncovered"><a title="Line 162: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 162: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> } <span class="keyword">else</span> <span class="keyword">if</span> (nextVersion == <span class="keyword">null</span> && currentVersion != <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 163</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  dependency.getIdentifiers().remove(nextId);</span></pre></td></tr> -<tr> <td class="numLineCover"> 164</td> <td class="nbHitsUncovered"><a title="Line 164: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 164: Conditional coverage 0% (0/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (currentVersion.length() < nextVersion.length()) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 165</td> <td class="nbHitsUncovered"><a title="Line 165: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 165: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> <span class="keyword">if</span> (nextVersion.startsWith(currentVersion) || <span class="string">"-"</span>.equals(currentVersion)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 166</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  dependency.getIdentifiers().remove(currentId);</span></pre></td></tr> -<tr> <td class="numLine"> 167</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 162</td> <td class="nbHitsUncovered"><a title="Line 162: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 3</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 162: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> } <span class="keyword">else</span> <span class="keyword">if</span> (currentVersion == <span class="keyword">null</span> && nextVersion != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 163</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  dependency.getIdentifiers().remove(currentId);</pre></td></tr> +<tr> <td class="numLineCover"> 164</td> <td class="nbHitsUncovered"><a title="Line 164: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 164: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> } <span class="keyword">else</span> <span class="keyword">if</span> (nextVersion == <span class="keyword">null</span> && currentVersion != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 165</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  dependency.getIdentifiers().remove(nextId);</span></pre></td></tr> +<tr> <td class="numLineCover"> 166</td> <td class="nbHitsUncovered"><a title="Line 166: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 166: Conditional coverage 0% (0/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (currentVersion.length() < nextVersion.length()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 167</td> <td class="nbHitsUncovered"><a title="Line 167: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 167: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> <span class="keyword">if</span> (nextVersion.startsWith(currentVersion) || <span class="string">"-"</span>.equals(currentVersion)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 168</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  dependency.getIdentifiers().remove(currentId);</span></pre></td></tr> +<tr> <td class="numLine"> 169</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 168</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 170</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 169</td> <td class="nbHitsUncovered"><a title="Line 169: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 169: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> <span class="keyword">if</span> (currentVersion.startsWith(nextVersion) || <span class="string">"-"</span>.equals(nextVersion)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 170</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  dependency.getIdentifiers().remove(nextId);</span></pre></td></tr> -<tr> <td class="numLine"> 171</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 172</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 171</td> <td class="nbHitsUncovered"><a title="Line 171: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 171: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> <span class="keyword">if</span> (currentVersion.startsWith(nextVersion) || <span class="string">"-"</span>.equals(nextVersion)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 172</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  dependency.getIdentifiers().remove(nextId);</span></pre></td></tr> <tr> <td class="numLine"> 173</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"> 174</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 175</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 176</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 175</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 176</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 177</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 178</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 179</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Regex to identify core java libraries and a few other commonly</span></pre></td></tr> +<tr> <td class="numLineCover"> 177</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 178</td> <td class="nbHitsCovered"> 21</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 179</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 180</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * misidentified ones.</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 181</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 182</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">final</span> Pattern CORE_JAVA = Pattern.compile(<span class="string">"^cpe:/a:(sun|oracle|ibm):(j2[ems]e|"</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * Regex to identify core java libraries and a few other commonly</span></pre></td></tr> +<tr> <td class="numLine"> 182</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * misidentified ones.</span></pre></td></tr> <tr> <td class="numLine"> 183</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  + <span class="string">"java(_platfrom_micro_edition|_runtime_environment|_se|virtual_machine|se_development_kit|fx)?|"</span></pre></td></tr> -<tr> <td class="numLine"> 184</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  + <span class="string">"jdk|jre|jsf|jsse)($|:.*)"</span>);</pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLineCover"> 184</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">final</span> Pattern CORE_JAVA = Pattern.compile(<span class="string">"^cpe:/a:(sun|oracle|ibm):(j2[ems]e|"</span></pre></td></tr> <tr> <td class="numLine"> 185</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> + <td class="src"><pre class="src">  + <span class="string">"java(_platfrom_micro_edition|_runtime_environment|_se|virtual_machine|se_development_kit|fx)?|"</span></pre></td></tr> <tr> <td class="numLine"> 186</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Regex to identify core java library files. This is currently incomplete.</span></pre></td></tr> + <td class="src"><pre class="src">  + <span class="string">"jdk|jre|jsf|jsse)($|:.*)"</span>);</pre></td></tr> <tr> <td class="numLine"> 187</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 188</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">final</span> Pattern CORE_FILES = Pattern.compile(<span class="string">"^((alt[-])?rt|jsf[-].*|jsse|jfxrt|jfr|jce|javaws|deploy|charsets)\\.jar$"</span>);</pre></td></tr> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 188</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Regex to identify core java library files. This is currently incomplete.</span></pre></td></tr> <tr> <td class="numLine"> 189</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 190</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLineCover"> 190</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">final</span> Pattern CORE_FILES = Pattern.compile(<span class="string">"^((alt[-])?rt|jsf[-].*|jsse|jfxrt|jfr|jce|javaws|deploy|charsets)\\.jar$"</span>);</pre></td></tr> <tr> <td class="numLine"> 191</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Removes any CPE entries for the JDK/JRE unless the filename ends with</span></pre></td></tr> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 192</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * rt.jar</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 193</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * Removes any CPE entries for the JDK/JRE unless the filename ends with</span></pre></td></tr> <tr> <td class="numLine"> 194</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param dependency the dependency to remove JRE CPEs from</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * rt.jar</span></pre></td></tr> <tr> <td class="numLine"> 195</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> <tr> <td class="numLine"> 196</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param dependency the dependency to remove JRE CPEs from</span></pre></td></tr> +<tr> <td class="numLine"> 197</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 198</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> removeJreEntries(Dependency dependency) {</pre></td></tr> -<tr> <td class="numLineCover"> 197</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Set<Identifier> identifiers = dependency.getIdentifiers();</pre></td></tr> -<tr> <td class="numLineCover"> 198</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Iterator<Identifier> itr = identifiers.iterator();</pre></td></tr> -<tr> <td class="numLineCover"> 199</td> <td class="nbHitsCovered"><a title="Line 199: Conditional coverage 100% (2/2)."> 23</a></td> <td class="src"><pre class="src"> <a title="Line 199: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (itr.hasNext()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 200</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Identifier i = itr.next();</pre></td></tr> -<tr> <td class="numLineCover"> 201</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Matcher coreCPE = CORE_JAVA.matcher(i.getValue());</pre></td></tr> -<tr> <td class="numLineCover"> 202</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Matcher coreFiles = CORE_FILES.matcher(dependency.getFileName());</pre></td></tr> -<tr> <td class="numLineCover"> 203</td> <td class="nbHitsUncovered"><a title="Line 203: Conditional coverage 25% (1/4) [each condition: 50%, 0%]."> 14</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 203: Conditional coverage 25% (1/4) [each condition: 50%, 0%]."> <span class="keyword">if</span> (coreCPE.matches() && !coreFiles.matches()) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 204</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  itr.remove();</span></pre></td></tr> -<tr> <td class="numLine"> 205</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 206</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLineCover"> 199</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Set<Identifier> identifiers = dependency.getIdentifiers();</pre></td></tr> +<tr> <td class="numLineCover"> 200</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Iterator<Identifier> itr = identifiers.iterator();</pre></td></tr> +<tr> <td class="numLineCover"> 201</td> <td class="nbHitsCovered"><a title="Line 201: Conditional coverage 100% (2/2)."> 37</a></td> <td class="src"><pre class="src"> <a title="Line 201: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (itr.hasNext()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 202</td> <td class="nbHitsCovered"> 22</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Identifier i = itr.next();</pre></td></tr> +<tr> <td class="numLineCover"> 203</td> <td class="nbHitsCovered"> 22</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Matcher coreCPE = CORE_JAVA.matcher(i.getValue());</pre></td></tr> +<tr> <td class="numLineCover"> 204</td> <td class="nbHitsCovered"> 22</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Matcher coreFiles = CORE_FILES.matcher(dependency.getFileName());</pre></td></tr> +<tr> <td class="numLineCover"> 205</td> <td class="nbHitsUncovered"><a title="Line 205: Conditional coverage 25% (1/4) [each condition: 50%, 0%]."> 22</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 205: Conditional coverage 25% (1/4) [each condition: 50%, 0%]."> <span class="keyword">if</span> (coreCPE.matches() && !coreFiles.matches()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 206</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  itr.remove();</span></pre></td></tr> <tr> <td class="numLine"> 207</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">//replacecd with the regex above.</span></pre></td></tr> -<tr> <td class="numLine"> 208</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">// if (("cpe:/a:sun:java".equals(i.getValue())</span></pre></td></tr> -<tr> <td class="numLine"> 209</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">// || "cpe:/a:oracle:java".equals(i.getValue())</span></pre></td></tr> -<tr> <td class="numLine"> 210</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">// || "cpe:/a:ibm:java".equals(i.getValue())</span></pre></td></tr> -<tr> <td class="numLine"> 211</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">// || "cpe:/a:sun:j2se".equals(i.getValue())</span></pre></td></tr> -<tr> <td class="numLine"> 212</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">// || "cpe:/a:oracle:j2se".equals(i.getValue())</span></pre></td></tr> -<tr> <td class="numLine"> 213</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">// || i.getValue().startsWith("cpe:/a:sun:java:")</span></pre></td></tr> -<tr> <td class="numLine"> 214</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">// || i.getValue().startsWith("cpe:/a:sun:j2se:")</span></pre></td></tr> -<tr> <td class="numLine"> 215</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">// || i.getValue().startsWith("cpe:/a:sun:java:jre")</span></pre></td></tr> -<tr> <td class="numLine"> 216</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">// || i.getValue().startsWith("cpe:/a:sun:java:jdk")</span></pre></td></tr> -<tr> <td class="numLine"> 217</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">// || i.getValue().startsWith("cpe:/a:sun:java_se")</span></pre></td></tr> -<tr> <td class="numLine"> 218</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">// || i.getValue().startsWith("cpe:/a:oracle:java_se")</span></pre></td></tr> -<tr> <td class="numLine"> 219</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">// || i.getValue().startsWith("cpe:/a:oracle:java:")</span></pre></td></tr> -<tr> <td class="numLine"> 220</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">// || i.getValue().startsWith("cpe:/a:oracle:j2se:")</span></pre></td></tr> -<tr> <td class="numLine"> 221</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">// || i.getValue().startsWith("cpe:/a:oracle:jre")</span></pre></td></tr> -<tr> <td class="numLine"> 222</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">// || i.getValue().startsWith("cpe:/a:oracle:jdk")</span></pre></td></tr> -<tr> <td class="numLine"> 223</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">// || i.getValue().startsWith("cpe:/a:ibm:java:"))</span></pre></td></tr> -<tr> <td class="numLine"> 224</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">// && !dependency.getFileName().toLowerCase().endsWith("rt.jar")) {</span></pre></td></tr> -<tr> <td class="numLine"> 225</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">// itr.remove();</span></pre></td></tr> -<tr> <td class="numLine"> 226</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">// }</span></pre></td></tr> -<tr> <td class="numLineCover"> 227</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 228</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 229</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 230</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 231</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Parses a CPE string into an IndexEntry.</span></pre></td></tr> -<tr> <td class="numLine"> 232</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 233</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param type the type of identifier</span></pre></td></tr> -<tr> <td class="numLine"> 234</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param value the cpe identifier to parse</span></pre></td></tr> -<tr> <td class="numLine"> 235</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @return an VulnerableSoftware object constructed from the identifier</span></pre></td></tr> -<tr> <td class="numLine"> 236</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 237</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">private</span> VulnerableSoftware parseCpe(String type, String value) {</pre></td></tr> -<tr> <td class="numLineCover"> 238</td> <td class="nbHitsUncovered"><a title="Line 238: Conditional coverage 50% (1/2)."> 24</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 238: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!<span class="string">"cpe"</span>.equals(type)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 239</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">null</span>;</span></pre></td></tr> -<tr> <td class="numLine"> 240</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 241</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  <span class="keyword">final</span> VulnerableSoftware cpe = <span class="keyword">new</span> VulnerableSoftware();</pre></td></tr> -<tr> <td class="numLine"> 242</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 243</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  cpe.parseName(value);</pre></td></tr> -<tr> <td class="numLineCover"> 244</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (UnsupportedEncodingException ex) {</span></pre></td></tr> -<tr> <td class="numLineCover"> 245</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(FalsePositiveAnalyzer.<span class="keyword">class</span>.getName()).log(Level.FINEST, <span class="keyword">null</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 246</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">null</span>;</span></pre></td></tr> -<tr> <td class="numLineCover"> 247</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 248</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  <span class="keyword">return</span> cpe;</pre></td></tr> -<tr> <td class="numLine"> 249</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 250</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 251</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 252</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Removes bad CPE matches for a dependency. Unfortunately, right now these</span></pre></td></tr> -<tr> <td class="numLine"> 253</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * are hard-coded patches for specific problems identified when testing this</span></pre></td></tr> -<tr> <td class="numLine"> 254</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * on a LARGE volume of jar files.</span></pre></td></tr> -<tr> <td class="numLine"> 255</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 256</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param dependency the dependency to analyze</span></pre></td></tr> -<tr> <td class="numLine"> 257</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 258</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> removeBadMatches(Dependency dependency) {</pre></td></tr> -<tr> <td class="numLineCover"> 259</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Set<Identifier> identifiers = dependency.getIdentifiers();</pre></td></tr> -<tr> <td class="numLineCover"> 260</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Iterator<Identifier> itr = identifiers.iterator();</pre></td></tr> -<tr> <td class="numLine"> 261</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 262</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/* TODO - can we utilize the pom's groupid and artifactId to filter??? most of</span></pre></td></tr> -<tr> <td class="numLine"> 263</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * these are due to low quality data. Other idea would be to say any CPE</span></pre></td></tr> -<tr> <td class="numLine"> 264</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * found based on LOW confidence evidence should have a different CPE type? (this</span></pre></td></tr> -<tr> <td class="numLine"> 265</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * might be a better solution then just removing the URL for "best-guess" matches).</span></pre></td></tr> -<tr> <td class="numLine"> 266</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 267</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 268</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">//Set<Evidence> groupId = dependency.getVendorEvidence().getEvidence("pom", "groupid");</span></pre></td></tr> -<tr> <td class="numLine"> 269</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">//Set<Evidence> artifactId = dependency.getVendorEvidence().getEvidence("pom", "artifactid");</span></pre></td></tr> -<tr> <td class="numLine"> 270</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 271</td> <td class="nbHitsCovered"><a title="Line 271: Conditional coverage 100% (2/2)."> 23</a></td> <td class="src"><pre class="src"> <a title="Line 271: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (itr.hasNext()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 272</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Identifier i = itr.next();</pre></td></tr> -<tr> <td class="numLine"> 273</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">//TODO move this startswith expression to a configuration file?</span></pre></td></tr> -<tr> <td class="numLineCover"> 274</td> <td class="nbHitsUncovered"><a title="Line 274: Conditional coverage 50% (1/2)."> 14</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 274: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (<span class="string">"cpe"</span>.equals(i.getType())) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 275</td> <td class="nbHitsUncovered"><a title="Line 275: Conditional coverage 45% (9/20) [each condition: 50%, 50%, 50%, 50%, 50%, 50%, 50%, 50%, 50%, 0%]."> 14</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 275: Conditional coverage 45% (9/20) [each condition: 50%, 50%, 50%, 50%, 50%, 50%, 50%, 50%, 50%, 0%]."> <span class="keyword">if</span> ((i.getValue().matches(<span class="string">".*c\\+\\+.*"</span>)</a></span></pre></td></tr> -<tr> <td class="numLine"> 276</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  || i.getValue().startsWith(<span class="string">"cpe:/a:jquery:jquery"</span>)</pre></td></tr> -<tr> <td class="numLine"> 277</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  || i.getValue().startsWith(<span class="string">"cpe:/a:prototypejs:prototype"</span>)</pre></td></tr> -<tr> <td class="numLine"> 278</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  || i.getValue().startsWith(<span class="string">"cpe:/a:yahoo:yui"</span>)</pre></td></tr> -<tr> <td class="numLine"> 279</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  || i.getValue().startsWith(<span class="string">"cpe:/a:file:file"</span>)</pre></td></tr> -<tr> <td class="numLine"> 280</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  || i.getValue().startsWith(<span class="string">"cpe:/a:mozilla:mozilla"</span>)</pre></td></tr> -<tr> <td class="numLine"> 281</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  || i.getValue().startsWith(<span class="string">"cpe:/a:cvs:cvs"</span>)</pre></td></tr> -<tr> <td class="numLine"> 282</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  || i.getValue().startsWith(<span class="string">"cpe:/a:ftp:ftp"</span>)</pre></td></tr> -<tr> <td class="numLine"> 283</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  || i.getValue().startsWith(<span class="string">"cpe:/a:ssh:ssh"</span>))</pre></td></tr> -<tr> <td class="numLine"> 284</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  && dependency.getFileName().toLowerCase().endsWith(<span class="string">".jar"</span>)) {</pre></td></tr> -<tr> <td class="numLineCover"> 285</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  itr.remove();</span></pre></td></tr> -<tr> <td class="numLineCover"> 286</td> <td class="nbHitsUncovered"><a title="Line 286: Conditional coverage 25% (1/4) [each condition: 50%, 0%]."> 14</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 286: Conditional coverage 25% (1/4) [each condition: 50%, 0%]."> } <span class="keyword">else</span> <span class="keyword">if</span> (i.getValue().startsWith(<span class="string">"cpe:/a:apache:maven"</span>)</a></span></pre></td></tr> -<tr> <td class="numLine"> 287</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  && !dependency.getFileName().toLowerCase().matches(<span class="string">"maven-core-[\\d\\.]+\\.jar"</span>)) {</pre></td></tr> -<tr> <td class="numLineCover"> 288</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  itr.remove();</span></pre></td></tr> -<tr> <td class="numLine"> 289</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 290</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 291</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 292</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 293</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 208</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 294</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 209</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">//replacecd with the regex above.</span></pre></td></tr> +<tr> <td class="numLine"> 210</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">// if (("cpe:/a:sun:java".equals(i.getValue())</span></pre></td></tr> +<tr> <td class="numLine"> 211</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">// || "cpe:/a:oracle:java".equals(i.getValue())</span></pre></td></tr> +<tr> <td class="numLine"> 212</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">// || "cpe:/a:ibm:java".equals(i.getValue())</span></pre></td></tr> +<tr> <td class="numLine"> 213</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">// || "cpe:/a:sun:j2se".equals(i.getValue())</span></pre></td></tr> +<tr> <td class="numLine"> 214</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">// || "cpe:/a:oracle:j2se".equals(i.getValue())</span></pre></td></tr> +<tr> <td class="numLine"> 215</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">// || i.getValue().startsWith("cpe:/a:sun:java:")</span></pre></td></tr> +<tr> <td class="numLine"> 216</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">// || i.getValue().startsWith("cpe:/a:sun:j2se:")</span></pre></td></tr> +<tr> <td class="numLine"> 217</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">// || i.getValue().startsWith("cpe:/a:sun:java:jre")</span></pre></td></tr> +<tr> <td class="numLine"> 218</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">// || i.getValue().startsWith("cpe:/a:sun:java:jdk")</span></pre></td></tr> +<tr> <td class="numLine"> 219</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">// || i.getValue().startsWith("cpe:/a:sun:java_se")</span></pre></td></tr> +<tr> <td class="numLine"> 220</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">// || i.getValue().startsWith("cpe:/a:oracle:java_se")</span></pre></td></tr> +<tr> <td class="numLine"> 221</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">// || i.getValue().startsWith("cpe:/a:oracle:java:")</span></pre></td></tr> +<tr> <td class="numLine"> 222</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">// || i.getValue().startsWith("cpe:/a:oracle:j2se:")</span></pre></td></tr> +<tr> <td class="numLine"> 223</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">// || i.getValue().startsWith("cpe:/a:oracle:jre")</span></pre></td></tr> +<tr> <td class="numLine"> 224</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">// || i.getValue().startsWith("cpe:/a:oracle:jdk")</span></pre></td></tr> +<tr> <td class="numLine"> 225</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">// || i.getValue().startsWith("cpe:/a:ibm:java:"))</span></pre></td></tr> +<tr> <td class="numLine"> 226</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">// && !dependency.getFileName().toLowerCase().endsWith("rt.jar")) {</span></pre></td></tr> +<tr> <td class="numLine"> 227</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">// itr.remove();</span></pre></td></tr> +<tr> <td class="numLine"> 228</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">// }</span></pre></td></tr> +<tr> <td class="numLineCover"> 229</td> <td class="nbHitsCovered"> 22</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 230</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 231</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 232</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 233</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Parses a CPE string into an IndexEntry.</span></pre></td></tr> +<tr> <td class="numLine"> 234</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 235</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param type the type of identifier</span></pre></td></tr> +<tr> <td class="numLine"> 236</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param value the cpe identifier to parse</span></pre></td></tr> +<tr> <td class="numLine"> 237</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @return an VulnerableSoftware object constructed from the identifier</span></pre></td></tr> +<tr> <td class="numLine"> 238</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 239</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">private</span> VulnerableSoftware parseCpe(String type, String value) {</pre></td></tr> +<tr> <td class="numLineCover"> 240</td> <td class="nbHitsUncovered"><a title="Line 240: Conditional coverage 50% (1/2)."> 32</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 240: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!<span class="string">"cpe"</span>.equals(type)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 241</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">null</span>;</span></pre></td></tr> +<tr> <td class="numLine"> 242</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 243</td> <td class="nbHitsCovered"> 32</td> <td class="src"><pre class="src">  <span class="keyword">final</span> VulnerableSoftware cpe = <span class="keyword">new</span> VulnerableSoftware();</pre></td></tr> +<tr> <td class="numLine"> 244</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 245</td> <td class="nbHitsCovered"> 32</td> <td class="src"><pre class="src">  cpe.parseName(value);</pre></td></tr> +<tr> <td class="numLineCover"> 246</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (UnsupportedEncodingException ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 247</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(FalsePositiveAnalyzer.<span class="keyword">class</span>.getName()).log(Level.FINEST, <span class="keyword">null</span>, ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 248</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">null</span>;</span></pre></td></tr> +<tr> <td class="numLineCover"> 249</td> <td class="nbHitsCovered"> 32</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 250</td> <td class="nbHitsCovered"> 32</td> <td class="src"><pre class="src">  <span class="keyword">return</span> cpe;</pre></td></tr> +<tr> <td class="numLine"> 251</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 252</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 253</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 254</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Removes bad CPE matches for a dependency. Unfortunately, right now these</span></pre></td></tr> +<tr> <td class="numLine"> 255</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * are hard-coded patches for specific problems identified when testing this</span></pre></td></tr> +<tr> <td class="numLine"> 256</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * on a LARGE volume of jar files.</span></pre></td></tr> +<tr> <td class="numLine"> 257</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 258</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param dependency the dependency to analyze</span></pre></td></tr> +<tr> <td class="numLine"> 259</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 260</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> removeBadMatches(Dependency dependency) {</pre></td></tr> +<tr> <td class="numLineCover"> 261</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Set<Identifier> identifiers = dependency.getIdentifiers();</pre></td></tr> +<tr> <td class="numLineCover"> 262</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Iterator<Identifier> itr = identifiers.iterator();</pre></td></tr> +<tr> <td class="numLine"> 263</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 264</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/* TODO - can we utilize the pom's groupid and artifactId to filter??? most of</span></pre></td></tr> +<tr> <td class="numLine"> 265</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * these are due to low quality data. Other idea would be to say any CPE</span></pre></td></tr> +<tr> <td class="numLine"> 266</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * found based on LOW confidence evidence should have a different CPE type? (this</span></pre></td></tr> +<tr> <td class="numLine"> 267</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * might be a better solution then just removing the URL for "best-guess" matches).</span></pre></td></tr> +<tr> <td class="numLine"> 268</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 269</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 270</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">//Set<Evidence> groupId = dependency.getVendorEvidence().getEvidence("pom", "groupid");</span></pre></td></tr> +<tr> <td class="numLine"> 271</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">//Set<Evidence> artifactId = dependency.getVendorEvidence().getEvidence("pom", "artifactid");</span></pre></td></tr> +<tr> <td class="numLine"> 272</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLineCover"> 273</td> <td class="nbHitsCovered"><a title="Line 273: Conditional coverage 100% (2/2)."> 37</a></td> <td class="src"><pre class="src"> <a title="Line 273: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (itr.hasNext()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 274</td> <td class="nbHitsCovered"> 22</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Identifier i = itr.next();</pre></td></tr> +<tr> <td class="numLine"> 275</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">//TODO move this startswith expression to a configuration file?</span></pre></td></tr> +<tr> <td class="numLineCover"> 276</td> <td class="nbHitsUncovered"><a title="Line 276: Conditional coverage 50% (1/2)."> 22</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 276: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (<span class="string">"cpe"</span>.equals(i.getType())) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 277</td> <td class="nbHitsUncovered"><a title="Line 277: Conditional coverage 55% (11/20) [each condition: 50%, 50%, 50%, 50%, 100%, 50%, 50%, 50%, 50%, 50%]."> 22</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 277: Conditional coverage 55% (11/20) [each condition: 50%, 50%, 50%, 50%, 100%, 50%, 50%, 50%, 50%, 50%]."> <span class="keyword">if</span> ((i.getValue().matches(<span class="string">".*c\\+\\+.*"</span>)</a></span></pre></td></tr> +<tr> <td class="numLine"> 278</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  || i.getValue().startsWith(<span class="string">"cpe:/a:jquery:jquery"</span>)</pre></td></tr> +<tr> <td class="numLine"> 279</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  || i.getValue().startsWith(<span class="string">"cpe:/a:prototypejs:prototype"</span>)</pre></td></tr> +<tr> <td class="numLine"> 280</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  || i.getValue().startsWith(<span class="string">"cpe:/a:yahoo:yui"</span>)</pre></td></tr> +<tr> <td class="numLine"> 281</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  || i.getValue().startsWith(<span class="string">"cpe:/a:file:file"</span>)</pre></td></tr> +<tr> <td class="numLine"> 282</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  || i.getValue().startsWith(<span class="string">"cpe:/a:mozilla:mozilla"</span>)</pre></td></tr> +<tr> <td class="numLine"> 283</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  || i.getValue().startsWith(<span class="string">"cpe:/a:cvs:cvs"</span>)</pre></td></tr> +<tr> <td class="numLine"> 284</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  || i.getValue().startsWith(<span class="string">"cpe:/a:ftp:ftp"</span>)</pre></td></tr> +<tr> <td class="numLine"> 285</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  || i.getValue().startsWith(<span class="string">"cpe:/a:ssh:ssh"</span>))</pre></td></tr> +<tr> <td class="numLine"> 286</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  && dependency.getFileName().toLowerCase().endsWith(<span class="string">".jar"</span>)) {</pre></td></tr> +<tr> <td class="numLineCover"> 287</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  itr.remove();</span></pre></td></tr> +<tr> <td class="numLineCover"> 288</td> <td class="nbHitsUncovered"><a title="Line 288: Conditional coverage 25% (1/4) [each condition: 50%, 0%]."> 22</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 288: Conditional coverage 25% (1/4) [each condition: 50%, 0%]."> } <span class="keyword">else</span> <span class="keyword">if</span> (i.getValue().startsWith(<span class="string">"cpe:/a:apache:maven"</span>)</a></span></pre></td></tr> +<tr> <td class="numLine"> 289</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  && !dependency.getFileName().toLowerCase().matches(<span class="string">"maven-core-[\\d\\.]+\\.jar"</span>)) {</pre></td></tr> +<tr> <td class="numLineCover"> 290</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  itr.remove();</span></pre></td></tr> +<tr> <td class="numLine"> 291</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 292</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 293</td> <td class="nbHitsCovered"> 22</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 294</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 295</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * There are some known CPE entries, specifically regarding sun and oracle</span></pre></td></tr> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 296</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * products due to the acquisition and changes in product names, that based</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 297</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * on given evidence we can add the related CPE entries to ensure a complete</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * Removes CPE matches for the wrong version of a dependency. Currently,</span></pre></td></tr> <tr> <td class="numLine"> 298</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * list of CVE entries.</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * this only covers Axis 1 & 2.</span></pre></td></tr> <tr> <td class="numLine"> 299</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> <tr> <td class="numLine"> 300</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param dependency the dependency being analyzed</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * @param dependency the dependency to analyze</span></pre></td></tr> <tr> <td class="numLine"> 301</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 302</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> addFalseNegativeCPEs(Dependency dependency) {</pre></td></tr> -<tr> <td class="numLineCover"> 303</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Iterator<Identifier> itr = dependency.getIdentifiers().iterator();</pre></td></tr> -<tr> <td class="numLineCover"> 304</td> <td class="nbHitsCovered"><a title="Line 304: Conditional coverage 100% (2/2)."> 22</a></td> <td class="src"><pre class="src"> <a title="Line 304: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (itr.hasNext()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 305</td> <td class="nbHitsCovered"> 13</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Identifier i = itr.next();</pre></td></tr> -<tr> <td class="numLineCover"> 306</td> <td class="nbHitsUncovered"><a title="Line 306: Conditional coverage 50% (6/12) [each condition: 50%, 50%, 50%, 50%, 50%, 50%]."> 13</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 306: Conditional coverage 50% (6/12) [each condition: 50%, 50%, 50%, 50%, 50%, 50%]."> <span class="keyword">if</span> (<span class="string">"cpe"</span>.equals(i.getType()) && i.getValue() != <span class="keyword">null</span></a></span></pre></td></tr> -<tr> <td class="numLine"> 307</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  && (i.getValue().startsWith(<span class="string">"cpe:/a:oracle:opensso:"</span>)</pre></td></tr> -<tr> <td class="numLine"> 308</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  || i.getValue().startsWith(<span class="string">"cpe:/a:oracle:opensso_enterprise:"</span>)</pre></td></tr> -<tr> <td class="numLine"> 309</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  || i.getValue().startsWith(<span class="string">"cpe:/a:sun:opensso_enterprise:"</span>)</pre></td></tr> -<tr> <td class="numLine"> 310</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  || i.getValue().startsWith(<span class="string">"cpe:/a:sun:opensso:"</span>))) {</pre></td></tr> -<tr> <td class="numLineCover"> 311</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String newCpe = String.format(<span class="string">"cpe:/a:sun:opensso_enterprise:%s"</span>, i.getValue().substring(22));</span></pre></td></tr> -<tr> <td class="numLineCover"> 312</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String newCpe2 = String.format(<span class="string">"cpe:/a:oracle:opensso_enterprise:%s"</span>, i.getValue().substring(22));</span></pre></td></tr> -<tr> <td class="numLineCover"> 313</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String newCpe3 = String.format(<span class="string">"cpe:/a:sun:opensso:%s"</span>, i.getValue().substring(22));</span></pre></td></tr> -<tr> <td class="numLineCover"> 314</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String newCpe4 = String.format(<span class="string">"cpe:/a:oracle:opensso:%s"</span>, i.getValue().substring(22));</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> removeWrongVersionMatches(Dependency dependency) {</pre></td></tr> +<tr> <td class="numLineCover"> 303</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Set<Identifier> identifiers = dependency.getIdentifiers();</pre></td></tr> +<tr> <td class="numLineCover"> 304</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Iterator<Identifier> itr = identifiers.iterator();</pre></td></tr> +<tr> <td class="numLine"> 305</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLineCover"> 306</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String fileName = dependency.getFileName();</pre></td></tr> +<tr> <td class="numLineCover"> 307</td> <td class="nbHitsUncovered"><a title="Line 307: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> 15</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 307: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> <span class="keyword">if</span> (fileName != <span class="keyword">null</span> && fileName.contains(<span class="string">"axis2"</span>)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 308</td> <td class="nbHitsCovered"><a title="Line 308: Conditional coverage 100% (2/2)."> 3</a></td> <td class="src"><pre class="src"> <a title="Line 308: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (itr.hasNext()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 309</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Identifier i = itr.next();</pre></td></tr> +<tr> <td class="numLineCover"> 310</td> <td class="nbHitsUncovered"><a title="Line 310: Conditional coverage 50% (1/2)."> 2</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 310: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (<span class="string">"cpe"</span>.equals(i.getType())) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 311</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String cpe = i.getValue();</pre></td></tr> +<tr> <td class="numLineCover"> 312</td> <td class="nbHitsUncovered"><a title="Line 312: Conditional coverage 66% (4/6) [each condition: 50%, 100%, 50%]."> 2</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 312: Conditional coverage 66% (4/6) [each condition: 50%, 100%, 50%]."> <span class="keyword">if</span> (cpe != <span class="keyword">null</span> && (cpe.startsWith(<span class="string">"cpe:/a:apache:axis:"</span>) || <span class="string">"cpe:/a:apache:axis"</span>.equals(cpe))) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 313</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  itr.remove();</pre></td></tr> +<tr> <td class="numLine"> 314</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 315</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 316</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  dependency.addIdentifier(<span class="string">"cpe"</span>,</span></pre></td></tr> -<tr> <td class="numLine"> 317</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  newCpe,</pre></td></tr> -<tr> <td class="numLine"> 318</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  String.format(<span class="string">"http://web.nvd.nist.gov/view/vuln/search?cpe=%s"</span>, URLEncoder.encode(newCpe, <span class="string">"UTF-8"</span>)));</pre></td></tr> -<tr> <td class="numLineCover"> 319</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  dependency.addIdentifier(<span class="string">"cpe"</span>,</span></pre></td></tr> -<tr> <td class="numLine"> 320</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  newCpe2,</pre></td></tr> -<tr> <td class="numLine"> 321</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  String.format(<span class="string">"http://web.nvd.nist.gov/view/vuln/search?cpe=%s"</span>, URLEncoder.encode(newCpe2, <span class="string">"UTF-8"</span>)));</pre></td></tr> -<tr> <td class="numLineCover"> 322</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  dependency.addIdentifier(<span class="string">"cpe"</span>,</span></pre></td></tr> -<tr> <td class="numLine"> 323</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  newCpe3,</pre></td></tr> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 316</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 317</td> <td class="nbHitsUncovered"><a title="Line 317: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 14</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 317: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> } <span class="keyword">else</span> <span class="keyword">if</span> (fileName != <span class="keyword">null</span> && fileName.contains(<span class="string">"axis"</span>)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 318</td> <td class="nbHitsUncovered"><a title="Line 318: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 318: Conditional coverage 0% (0/2)."> <span class="keyword">while</span> (itr.hasNext()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 319</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> Identifier i = itr.next();</span></pre></td></tr> +<tr> <td class="numLineCover"> 320</td> <td class="nbHitsUncovered"><a title="Line 320: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 320: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (<span class="string">"cpe"</span>.equals(i.getType())) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 321</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String cpe = i.getValue();</span></pre></td></tr> +<tr> <td class="numLineCover"> 322</td> <td class="nbHitsUncovered"><a title="Line 322: Conditional coverage 0% (0/6) [each condition: 0%, 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 322: Conditional coverage 0% (0/6) [each condition: 0%, 0%, 0%]."> <span class="keyword">if</span> (cpe != <span class="keyword">null</span> && (cpe.startsWith(<span class="string">"cpe:/a:apache:axis2:"</span>) || <span class="string">"cpe:/a:apache:axis2"</span>.equals(cpe))) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 323</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  itr.remove();</span></pre></td></tr> <tr> <td class="numLine"> 324</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  String.format(<span class="string">"http://web.nvd.nist.gov/view/vuln/search?cpe=%s"</span>, URLEncoder.encode(newCpe3, <span class="string">"UTF-8"</span>)));</pre></td></tr> -<tr> <td class="numLineCover"> 325</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  dependency.addIdentifier(<span class="string">"cpe"</span>,</span></pre></td></tr> -<tr> <td class="numLine"> 326</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  newCpe4,</pre></td></tr> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 325</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 326</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> <tr> <td class="numLine"> 327</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  String.format(<span class="string">"http://web.nvd.nist.gov/view/vuln/search?cpe=%s"</span>, URLEncoder.encode(newCpe4, <span class="string">"UTF-8"</span>)));</pre></td></tr> -<tr> <td class="numLineCover"> 328</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (UnsupportedEncodingException ex) {</span></pre></td></tr> -<tr> <td class="numLineCover"> 329</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(FalsePositiveAnalyzer.<span class="keyword">class</span></span></pre></td></tr> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 328</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 329</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 330</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  .getName()).log(Level.FINE, <span class="keyword">null</span>, ex);</pre></td></tr> -<tr> <td class="numLineCover"> 331</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 331</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * There are some known CPE entries, specifically regarding sun and oracle</span></pre></td></tr> <tr> <td class="numLine"> 332</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 333</td> <td class="nbHitsCovered"> 13</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 334</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  }</pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * products due to the acquisition and changes in product names, that based</span></pre></td></tr> +<tr> <td class="numLine"> 333</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * on given evidence we can add the related CPE entries to ensure a complete</span></pre></td></tr> +<tr> <td class="numLine"> 334</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * list of CVE entries.</span></pre></td></tr> <tr> <td class="numLine"> 335</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 336</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"> 337</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 338</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> addFalseNegativeCPEs(Dependency dependency) {</pre></td></tr> +<tr> <td class="numLineCover"> 339</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Iterator<Identifier> itr = dependency.getIdentifiers().iterator();</pre></td></tr> +<tr> <td class="numLineCover"> 340</td> <td class="nbHitsCovered"><a title="Line 340: Conditional coverage 100% (2/2)."> 33</a></td> <td class="src"><pre class="src"> <a title="Line 340: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (itr.hasNext()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 341</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Identifier i = itr.next();</pre></td></tr> +<tr> <td class="numLineCover"> 342</td> <td class="nbHitsUncovered"><a title="Line 342: Conditional coverage 50% (6/12) [each condition: 50%, 50%, 50%, 50%, 50%, 50%]."> 18</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 342: Conditional coverage 50% (6/12) [each condition: 50%, 50%, 50%, 50%, 50%, 50%]."> <span class="keyword">if</span> (<span class="string">"cpe"</span>.equals(i.getType()) && i.getValue() != <span class="keyword">null</span></a></span></pre></td></tr> +<tr> <td class="numLine"> 343</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  && (i.getValue().startsWith(<span class="string">"cpe:/a:oracle:opensso:"</span>)</pre></td></tr> +<tr> <td class="numLine"> 344</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  || i.getValue().startsWith(<span class="string">"cpe:/a:oracle:opensso_enterprise:"</span>)</pre></td></tr> +<tr> <td class="numLine"> 345</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  || i.getValue().startsWith(<span class="string">"cpe:/a:sun:opensso_enterprise:"</span>)</pre></td></tr> +<tr> <td class="numLine"> 346</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  || i.getValue().startsWith(<span class="string">"cpe:/a:sun:opensso:"</span>))) {</pre></td></tr> +<tr> <td class="numLineCover"> 347</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String newCpe = String.format(<span class="string">"cpe:/a:sun:opensso_enterprise:%s"</span>, i.getValue().substring(22));</span></pre></td></tr> +<tr> <td class="numLineCover"> 348</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String newCpe2 = String.format(<span class="string">"cpe:/a:oracle:opensso_enterprise:%s"</span>, i.getValue().substring(22));</span></pre></td></tr> +<tr> <td class="numLineCover"> 349</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String newCpe3 = String.format(<span class="string">"cpe:/a:sun:opensso:%s"</span>, i.getValue().substring(22));</span></pre></td></tr> +<tr> <td class="numLineCover"> 350</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String newCpe4 = String.format(<span class="string">"cpe:/a:oracle:opensso:%s"</span>, i.getValue().substring(22));</span></pre></td></tr> +<tr> <td class="numLine"> 351</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 352</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  dependency.addIdentifier(<span class="string">"cpe"</span>,</span></pre></td></tr> +<tr> <td class="numLine"> 353</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  newCpe,</pre></td></tr> +<tr> <td class="numLine"> 354</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  String.format(<span class="string">"http://web.nvd.nist.gov/view/vuln/search?cpe=%s"</span>, URLEncoder.encode(newCpe, <span class="string">"UTF-8"</span>)));</pre></td></tr> +<tr> <td class="numLineCover"> 355</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  dependency.addIdentifier(<span class="string">"cpe"</span>,</span></pre></td></tr> +<tr> <td class="numLine"> 356</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  newCpe2,</pre></td></tr> +<tr> <td class="numLine"> 357</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  String.format(<span class="string">"http://web.nvd.nist.gov/view/vuln/search?cpe=%s"</span>, URLEncoder.encode(newCpe2, <span class="string">"UTF-8"</span>)));</pre></td></tr> +<tr> <td class="numLineCover"> 358</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  dependency.addIdentifier(<span class="string">"cpe"</span>,</span></pre></td></tr> +<tr> <td class="numLine"> 359</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  newCpe3,</pre></td></tr> +<tr> <td class="numLine"> 360</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  String.format(<span class="string">"http://web.nvd.nist.gov/view/vuln/search?cpe=%s"</span>, URLEncoder.encode(newCpe3, <span class="string">"UTF-8"</span>)));</pre></td></tr> +<tr> <td class="numLineCover"> 361</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  dependency.addIdentifier(<span class="string">"cpe"</span>,</span></pre></td></tr> +<tr> <td class="numLine"> 362</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  newCpe4,</pre></td></tr> +<tr> <td class="numLine"> 363</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  String.format(<span class="string">"http://web.nvd.nist.gov/view/vuln/search?cpe=%s"</span>, URLEncoder.encode(newCpe4, <span class="string">"UTF-8"</span>)));</pre></td></tr> +<tr> <td class="numLineCover"> 364</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (UnsupportedEncodingException ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 365</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(FalsePositiveAnalyzer.<span class="keyword">class</span></span></pre></td></tr> +<tr> <td class="numLine"> 366</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  .getName()).log(Level.FINE, <span class="keyword">null</span>, ex);</pre></td></tr> +<tr> <td class="numLineCover"> 367</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLine"> 368</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 369</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 370</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 371</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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.FileNameAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.FileNameAnalyzer.html index 39a22564f..00eb69c9a 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.FileNameAnalyzer.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.FileNameAnalyzer.html @@ -126,7 +126,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 56</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Set<String> getSupportedExtensions() {</pre></td></tr> -<tr> <td class="numLineCover"> 57</td> <td class="nbHitsCovered"> 130</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EXTENSIONS;</pre></td></tr> +<tr> <td class="numLineCover"> 57</td> <td class="nbHitsCovered"> 133</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EXTENSIONS;</pre></td></tr> <tr> <td class="numLine"> 58</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 59</td> <td class="nbHits"> </td> @@ -143,7 +143,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 65</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"> 66</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYZER_NAME;</pre></td></tr> +<tr> <td class="numLineCover"> 66</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYZER_NAME;</pre></td></tr> <tr> <td class="numLine"> 67</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 68</td> <td class="nbHits"> </td> @@ -164,7 +164,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 76</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> supportsExtension(String extension) {</pre></td></tr> -<tr> <td class="numLineCover"> 77</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 77</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> <tr> <td class="numLine"> 78</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 79</td> <td class="nbHits"> </td> @@ -181,7 +181,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 85</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> AnalysisPhase getAnalysisPhase() {</pre></td></tr> -<tr> <td class="numLineCover"> 86</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYSIS_PHASE;</pre></td></tr> +<tr> <td class="numLineCover"> 86</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYSIS_PHASE;</pre></td></tr> <tr> <td class="numLine"> 87</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 88</td> <td class="nbHits"> </td> @@ -212,23 +212,23 @@ <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 101</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//strip any path information that may get added by ArchiveAnalyzer, etc.</span></pre></td></tr> -<tr> <td class="numLineCover"> 102</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File f = <span class="keyword">new</span> File(dependency.getFileName());</pre></td></tr> -<tr> <td class="numLineCover"> 103</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  String fileName = f.getName();</pre></td></tr> +<tr> <td class="numLineCover"> 102</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File f = <span class="keyword">new</span> File(dependency.getFileName());</pre></td></tr> +<tr> <td class="numLineCover"> 103</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  String fileName = f.getName();</pre></td></tr> <tr> <td class="numLine"> 104</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 105</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//remove file extension</span></pre></td></tr> -<tr> <td class="numLineCover"> 106</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">int</span> pos = fileName.lastIndexOf(<span class="string">"."</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 107</td> <td class="nbHitsUncovered"><a title="Line 107: Conditional coverage 50% (1/2)."> 12</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 107: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (pos > 0) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 108</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  fileName = fileName.substring(0, pos);</pre></td></tr> +<tr> <td class="numLineCover"> 106</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">int</span> pos = fileName.lastIndexOf(<span class="string">"."</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 107</td> <td class="nbHitsUncovered"><a title="Line 107: Conditional coverage 50% (1/2)."> 18</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 107: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (pos > 0) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 108</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  fileName = fileName.substring(0, pos);</pre></td></tr> <tr> <td class="numLine"> 109</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 110</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 111</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//add version evidence</span></pre></td></tr> -<tr> <td class="numLineCover"> 112</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  <span class="keyword">final</span> DependencyVersion version = DependencyVersionUtil.parseVersion(fileName);</pre></td></tr> -<tr> <td class="numLineCover"> 113</td> <td class="nbHitsCovered"><a title="Line 113: Conditional coverage 100% (2/2)."> 12</a></td> <td class="src"><pre class="src"> <a title="Line 113: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (version != <span class="keyword">null</span>) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 112</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">final</span> DependencyVersion version = DependencyVersionUtil.parseVersion(fileName);</pre></td></tr> +<tr> <td class="numLineCover"> 113</td> <td class="nbHitsCovered"><a title="Line 113: Conditional coverage 100% (2/2)."> 18</a></td> <td class="src"><pre class="src"> <a title="Line 113: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (version != <span class="keyword">null</span>) {</a></pre></td></tr> <tr> <td class="numLineCover"> 114</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  dependency.getVersionEvidence().addEvidence(<span class="string">"file"</span>, <span class="string">"name"</span>,</pre></td></tr> <tr> <td class="numLine"> 115</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  version.toString(), Evidence.Confidence.HIGHEST);</pre></td></tr> @@ -241,7 +241,7 @@ <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 120</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//add as vendor and product evidence</span></pre></td></tr> -<tr> <td class="numLineCover"> 121</td> <td class="nbHitsCovered"><a title="Line 121: Conditional coverage 100% (2/2)."> 12</a></td> <td class="src"><pre class="src"> <a title="Line 121: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (fileName.contains(<span class="string">"-"</span>)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 121</td> <td class="nbHitsCovered"><a title="Line 121: Conditional coverage 100% (2/2)."> 18</a></td> <td class="src"><pre class="src"> <a title="Line 121: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (fileName.contains(<span class="string">"-"</span>)) {</a></pre></td></tr> <tr> <td class="numLineCover"> 122</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  dependency.getProductEvidence().addEvidence(<span class="string">"file"</span>, <span class="string">"name"</span>,</pre></td></tr> <tr> <td class="numLine"> 123</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  fileName, Evidence.Confidence.HIGHEST);</pre></td></tr> @@ -250,19 +250,19 @@ <td class="src"><pre class="src">  fileName, Evidence.Confidence.HIGHEST);</pre></td></tr> <tr> <td class="numLine"> 126</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 127</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  dependency.getProductEvidence().addEvidence(<span class="string">"file"</span>, <span class="string">"name"</span>,</pre></td></tr> +<tr> <td class="numLineCover"> 127</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  dependency.getProductEvidence().addEvidence(<span class="string">"file"</span>, <span class="string">"name"</span>,</pre></td></tr> <tr> <td class="numLine"> 128</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  fileName, Evidence.Confidence.HIGH);</pre></td></tr> -<tr> <td class="numLineCover"> 129</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  dependency.getVendorEvidence().addEvidence(<span class="string">"file"</span>, <span class="string">"name"</span>,</pre></td></tr> +<tr> <td class="numLineCover"> 129</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  dependency.getVendorEvidence().addEvidence(<span class="string">"file"</span>, <span class="string">"name"</span>,</pre></td></tr> <tr> <td class="numLine"> 130</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  fileName, Evidence.Confidence.HIGH);</pre></td></tr> <tr> <td class="numLine"> 131</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 132</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 132</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 133</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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.HintAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.HintAnalyzer.html index f5735adc7..c422e7337 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.HintAnalyzer.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.HintAnalyzer.html @@ -120,7 +120,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 53</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Set<String> getSupportedExtensions() {</pre></td></tr> -<tr> <td class="numLineCover"> 54</td> <td class="nbHitsCovered"> 129</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EXTENSIONS;</pre></td></tr> +<tr> <td class="numLineCover"> 54</td> <td class="nbHitsCovered"> 132</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EXTENSIONS;</pre></td></tr> <tr> <td class="numLine"> 55</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 56</td> <td class="nbHits"> </td> @@ -137,7 +137,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 62</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"> 63</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYZER_NAME;</pre></td></tr> +<tr> <td class="numLineCover"> 63</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYZER_NAME;</pre></td></tr> <tr> <td class="numLine"> 64</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 65</td> <td class="nbHits"> </td> @@ -158,7 +158,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 73</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> supportsExtension(String extension) {</pre></td></tr> -<tr> <td class="numLineCover"> 74</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 74</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> <tr> <td class="numLine"> 75</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 76</td> <td class="nbHits"> </td> @@ -175,7 +175,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 82</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> AnalysisPhase getAnalysisPhase() {</pre></td></tr> -<tr> <td class="numLineCover"> 83</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYSIS_PHASE;</pre></td></tr> +<tr> <td class="numLineCover"> 83</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYSIS_PHASE;</pre></td></tr> <tr> <td class="numLine"> 84</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 85</td> <td class="nbHits"> </td> @@ -204,7 +204,7 @@ <td class="src"><pre class="src">  @Override</pre></td></tr> <tr> <td class="numLine"> 97</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> analyze(Dependency dependency, Engine engine) <span class="keyword">throws</span> AnalysisException {</pre></td></tr> -<tr> <td class="numLineCover"> 98</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Evidence springTest1 = <span class="keyword">new</span> Evidence(<span class="string">"Manifest"</span>,</pre></td></tr> +<tr> <td class="numLineCover"> 98</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Evidence springTest1 = <span class="keyword">new</span> Evidence(<span class="string">"Manifest"</span>,</pre></td></tr> <tr> <td class="numLine"> 99</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="string">"Implementation-Title"</span>,</pre></td></tr> <tr> <td class="numLine"> 100</td> <td class="nbHits"> </td> @@ -213,7 +213,7 @@ <td class="src"><pre class="src">  Evidence.Confidence.HIGH);</pre></td></tr> <tr> <td class="numLine"> 102</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 103</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Evidence springTest2 = <span class="keyword">new</span> Evidence(<span class="string">"Manifest"</span>,</pre></td></tr> +<tr> <td class="numLineCover"> 103</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Evidence springTest2 = <span class="keyword">new</span> Evidence(<span class="string">"Manifest"</span>,</pre></td></tr> <tr> <td class="numLine"> 104</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="string">"Implementation-Title"</span>,</pre></td></tr> <tr> <td class="numLine"> 105</td> <td class="nbHits"> </td> @@ -222,7 +222,7 @@ <td class="src"><pre class="src">  Evidence.Confidence.HIGH);</pre></td></tr> <tr> <td class="numLine"> 107</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 108</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Evidence springTest3 = <span class="keyword">new</span> Evidence(<span class="string">"Manifest"</span>,</pre></td></tr> +<tr> <td class="numLineCover"> 108</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Evidence springTest3 = <span class="keyword">new</span> Evidence(<span class="string">"Manifest"</span>,</pre></td></tr> <tr> <td class="numLine"> 109</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="string">"Bundle-Vendor"</span>,</pre></td></tr> <tr> <td class="numLine"> 110</td> <td class="nbHits"> </td> @@ -233,8 +233,8 @@ <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 113</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 114</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  Set<Evidence> evidence = dependency.getProductEvidence().getEvidence();</pre></td></tr> -<tr> <td class="numLineCover"> 115</td> <td class="nbHitsCovered"><a title="Line 115: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 9</a></td> <td class="src"><pre class="src"> <a title="Line 115: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (evidence.contains(springTest1) || evidence.contains(springTest2)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 114</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  Set<Evidence> evidence = dependency.getProductEvidence().getEvidence();</pre></td></tr> +<tr> <td class="numLineCover"> 115</td> <td class="nbHitsCovered"><a title="Line 115: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 15</a></td> <td class="src"><pre class="src"> <a title="Line 115: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (evidence.contains(springTest1) || evidence.contains(springTest2)) {</a></pre></td></tr> <tr> <td class="numLineCover"> 116</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  dependency.getProductEvidence().addEvidence(<span class="string">"hint analyzer"</span>, <span class="string">"product"</span>, <span class="string">"springsource_spring_framework"</span>, Evidence.Confidence.HIGH);</pre></td></tr> <tr> <td class="numLineCover"> 117</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  dependency.getVendorEvidence().addEvidence(<span class="string">"hint analyzer"</span>, <span class="string">"vendor"</span>, <span class="string">"SpringSource"</span>, Evidence.Confidence.HIGH);</pre></td></tr> <tr> <td class="numLineCover"> 118</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  dependency.getVendorEvidence().addEvidence(<span class="string">"hint analyzer"</span>, <span class="string">"vendor"</span>, <span class="string">"vmware"</span>, Evidence.Confidence.HIGH);</pre></td></tr> @@ -242,17 +242,17 @@ <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 120</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 121</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  evidence = dependency.getVendorEvidence().getEvidence();</pre></td></tr> -<tr> <td class="numLineCover"> 122</td> <td class="nbHitsCovered"><a title="Line 122: Conditional coverage 100% (2/2)."> 9</a></td> <td class="src"><pre class="src"> <a title="Line 122: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (evidence.contains(springTest3)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 121</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  evidence = dependency.getVendorEvidence().getEvidence();</pre></td></tr> +<tr> <td class="numLineCover"> 122</td> <td class="nbHitsCovered"><a title="Line 122: Conditional coverage 100% (2/2)."> 15</a></td> <td class="src"><pre class="src"> <a title="Line 122: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (evidence.contains(springTest3)) {</a></pre></td></tr> <tr> <td class="numLineCover"> 123</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  dependency.getProductEvidence().addEvidence(<span class="string">"hint analyzer"</span>, <span class="string">"product"</span>, <span class="string">"springsource_spring_framework"</span>, Evidence.Confidence.HIGH);</pre></td></tr> <tr> <td class="numLineCover"> 124</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  dependency.getVendorEvidence().addEvidence(<span class="string">"hint analyzer"</span>, <span class="string">"vendor"</span>, <span class="string">"vmware"</span>, Evidence.Confidence.HIGH);</pre></td></tr> <tr> <td class="numLine"> 125</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 126</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Iterator<Evidence> itr = dependency.getVendorEvidence().iterator();</pre></td></tr> -<tr> <td class="numLineCover"> 127</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">final</span> ArrayList<Evidence> newEntries = <span class="keyword">new</span> ArrayList<Evidence>();</pre></td></tr> -<tr> <td class="numLineCover"> 128</td> <td class="nbHitsCovered"><a title="Line 128: Conditional coverage 100% (2/2)."> 93</a></td> <td class="src"><pre class="src"> <a title="Line 128: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (itr.hasNext()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 129</td> <td class="nbHitsCovered"> 84</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Evidence e = itr.next();</pre></td></tr> -<tr> <td class="numLineCover"> 130</td> <td class="nbHitsCovered"><a title="Line 130: Conditional coverage 100% (2/2)."> 84</a></td> <td class="src"><pre class="src"> <a title="Line 130: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (<span class="string">"sun"</span>.equalsIgnoreCase(e.getValue(<span class="keyword">false</span>))) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 126</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Iterator<Evidence> itr = dependency.getVendorEvidence().iterator();</pre></td></tr> +<tr> <td class="numLineCover"> 127</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> ArrayList<Evidence> newEntries = <span class="keyword">new</span> ArrayList<Evidence>();</pre></td></tr> +<tr> <td class="numLineCover"> 128</td> <td class="nbHitsCovered"><a title="Line 128: Conditional coverage 100% (2/2)."> 121</a></td> <td class="src"><pre class="src"> <a title="Line 128: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (itr.hasNext()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 129</td> <td class="nbHitsCovered"> 106</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Evidence e = itr.next();</pre></td></tr> +<tr> <td class="numLineCover"> 130</td> <td class="nbHitsCovered"><a title="Line 130: Conditional coverage 100% (2/2)."> 106</a></td> <td class="src"><pre class="src"> <a title="Line 130: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (<span class="string">"sun"</span>.equalsIgnoreCase(e.getValue(<span class="keyword">false</span>))) {</a></pre></td></tr> <tr> <td class="numLineCover"> 131</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Evidence newEvidence = <span class="keyword">new</span> Evidence(e.getSource() + <span class="string">" (hint)"</span>, e.getName(), <span class="string">"oracle"</span>, e.getConfidence());</pre></td></tr> <tr> <td class="numLineCover"> 132</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  newEntries.add(newEvidence);</pre></td></tr> <tr> <td class="numLineCover"> 133</td> <td class="nbHitsUncovered"><a title="Line 133: Conditional coverage 50% (1/2)."> 2</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 133: Conditional coverage 50% (1/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (<span class="string">"oracle"</span>.equalsIgnoreCase(e.getValue(<span class="keyword">false</span>))) {</a></span></pre></td></tr> @@ -260,8 +260,8 @@ <tr> <td class="numLineCover"> 135</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  newEntries.add(newEvidence);</span></pre></td></tr> <tr> <td class="numLine"> 136</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 137</td> <td class="nbHitsCovered"> 84</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 138</td> <td class="nbHitsCovered"><a title="Line 138: Conditional coverage 100% (2/2)."> 9</a></td> <td class="src"><pre class="src"> <a title="Line 138: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence e : newEntries) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 137</td> <td class="nbHitsCovered"> 106</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 138</td> <td class="nbHitsCovered"><a title="Line 138: Conditional coverage 100% (2/2)."> 15</a></td> <td class="src"><pre class="src"> <a title="Line 138: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence e : newEntries) {</a></pre></td></tr> <tr> <td class="numLineCover"> 139</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  dependency.getVendorEvidence().addEvidence(e);</pre></td></tr> <tr> <td class="numLine"> 140</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> @@ -269,11 +269,11 @@ <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 142</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 143</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 143</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 144</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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.JarAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.JarAnalyzer.html index 5331772ac..5270fe24b 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.JarAnalyzer.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.JarAnalyzer.html @@ -342,7 +342,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 169</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Set<String> getSupportedExtensions() {</pre></td></tr> -<tr> <td class="numLineCover"> 170</td> <td class="nbHitsCovered"> 137</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EXTENSIONS;</pre></td></tr> +<tr> <td class="numLineCover"> 170</td> <td class="nbHitsCovered"> 146</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EXTENSIONS;</pre></td></tr> <tr> <td class="numLine"> 171</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 172</td> <td class="nbHits"> </td> @@ -359,7 +359,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 178</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"> 179</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYZER_NAME;</pre></td></tr> +<tr> <td class="numLineCover"> 179</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYZER_NAME;</pre></td></tr> <tr> <td class="numLine"> 180</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 181</td> <td class="nbHits"> </td> @@ -380,7 +380,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 189</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> supportsExtension(String extension) {</pre></td></tr> -<tr> <td class="numLineCover"> 190</td> <td class="nbHitsCovered"> 133</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EXTENSIONS.contains(extension);</pre></td></tr> +<tr> <td class="numLineCover"> 190</td> <td class="nbHitsCovered"> 142</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EXTENSIONS.contains(extension);</pre></td></tr> <tr> <td class="numLine"> 191</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 192</td> <td class="nbHits"> </td> @@ -397,7 +397,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 198</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> AnalysisPhase getAnalysisPhase() {</pre></td></tr> -<tr> <td class="numLineCover"> 199</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYSIS_PHASE;</pre></td></tr> +<tr> <td class="numLineCover"> 199</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ANALYSIS_PHASE;</pre></td></tr> <tr> <td class="numLine"> 200</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 201</td> <td class="nbHits"> </td> @@ -428,9 +428,9 @@ <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> analyze(Dependency dependency, Engine engine) <span class="keyword">throws</span> AnalysisException {</pre></td></tr> <tr> <td class="numLine"> 214</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 215</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">final</span> ArrayList<ClassNameInformation> classNames = collectClassNames(dependency);</pre></td></tr> -<tr> <td class="numLineCover"> 216</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String fileName = dependency.getFileName().toLowerCase();</pre></td></tr> -<tr> <td class="numLineCover"> 217</td> <td class="nbHitsUncovered"><a title="Line 217: Conditional coverage 10% (1/10) [each condition: 50%, 0%, 0%, 0%, 0%]."> 16</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 217: Conditional coverage 10% (1/10) [each condition: 50%, 0%, 0%, 0%, 0%]."> <span class="keyword">if</span> (classNames.isEmpty()</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 215</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">final</span> ArrayList<ClassNameInformation> classNames = collectClassNames(dependency);</pre></td></tr> +<tr> <td class="numLineCover"> 216</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String fileName = dependency.getFileName().toLowerCase();</pre></td></tr> +<tr> <td class="numLineCover"> 217</td> <td class="nbHitsUncovered"><a title="Line 217: Conditional coverage 10% (1/10) [each condition: 50%, 0%, 0%, 0%, 0%]."> 18</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 217: Conditional coverage 10% (1/10) [each condition: 50%, 0%, 0%, 0%, 0%]."> <span class="keyword">if</span> (classNames.isEmpty()</a></span></pre></td></tr> <tr> <td class="numLine"> 218</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  && (fileName.endsWith(<span class="string">"-sources.jar"</span>)</pre></td></tr> <tr> <td class="numLine"> 219</td> <td class="nbHits"> </td> @@ -442,14 +442,14 @@ <tr> <td class="numLineCover"> 222</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  engine.getDependencies().remove(dependency);</span></pre></td></tr> <tr> <td class="numLine"> 223</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 224</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">boolean</span> hasManifest = parseManifest(dependency, classNames);</pre></td></tr> -<tr> <td class="numLineCover"> 225</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">boolean</span> hasPOM = analyzePOM(dependency, classNames);</pre></td></tr> -<tr> <td class="numLineCover"> 226</td> <td class="nbHitsCovered"><a title="Line 226: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 16</a></td> <td class="src"><pre class="src"> <a title="Line 226: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">final</span> <span class="keyword">boolean</span> addPackagesAsEvidence = !(hasManifest && hasPOM);</a></pre></td></tr> -<tr> <td class="numLineCover"> 227</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  analyzePackageNames(classNames, dependency, addPackagesAsEvidence);</pre></td></tr> +<tr> <td class="numLineCover"> 224</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">boolean</span> hasManifest = parseManifest(dependency, classNames);</pre></td></tr> +<tr> <td class="numLineCover"> 225</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">boolean</span> hasPOM = analyzePOM(dependency, classNames);</pre></td></tr> +<tr> <td class="numLineCover"> 226</td> <td class="nbHitsCovered"><a title="Line 226: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 18</a></td> <td class="src"><pre class="src"> <a title="Line 226: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">final</span> <span class="keyword">boolean</span> addPackagesAsEvidence = !(hasManifest && hasPOM);</a></pre></td></tr> +<tr> <td class="numLineCover"> 227</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  analyzePackageNames(classNames, dependency, addPackagesAsEvidence);</pre></td></tr> <tr> <td class="numLineCover"> 228</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"> 229</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(<span class="string">"Exception occurred reading the JAR file."</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 230</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 231</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 230</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 231</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 232</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 233</td> <td class="nbHits"> </td> @@ -476,12 +476,12 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 244</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">protected</span> <span class="keyword">boolean</span> analyzePOM(Dependency dependency, ArrayList<ClassNameInformation> classes) <span class="keyword">throws</span> AnalysisException {</pre></td></tr> -<tr> <td class="numLineCover"> 245</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">boolean</span> foundSomething = <span class="keyword">false</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 245</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">boolean</span> foundSomething = <span class="keyword">false</span>;</pre></td></tr> <tr> <td class="numLine"> 246</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">final</span> JarFile jar;</pre></td></tr> <tr> <td class="numLine"> 247</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 248</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  jar = <span class="keyword">new</span> JarFile(dependency.getActualFilePath());</pre></td></tr> +<tr> <td class="numLineCover"> 248</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  jar = <span class="keyword">new</span> JarFile(dependency.getActualFilePath());</pre></td></tr> <tr> <td class="numLineCover"> 249</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"> 250</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 read JarFile '%s'."</span>, dependency.getActualFilePath());</span></pre></td></tr> <tr> <td class="numLineCover"> 251</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> AnalysisException ax = <span class="keyword">new</span> AnalysisException(msg, ex);</span></pre></td></tr> @@ -489,12 +489,12 @@ <tr> <td class="numLineCover"> 253</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(JarAnalyzer.<span class="keyword">class</span>.getName()).log(Level.WARNING, msg);</span></pre></td></tr> <tr> <td class="numLineCover"> 254</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(JarAnalyzer.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="keyword">null</span>, ex);</span></pre></td></tr> <tr> <td class="numLineCover"> 255</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> -<tr> <td class="numLineCover"> 256</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 256</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 257</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  List<String> pomEntries;</pre></td></tr> <tr> <td class="numLine"> 258</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 259</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  pomEntries = retrievePomListing(jar);</pre></td></tr> +<tr> <td class="numLineCover"> 259</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  pomEntries = retrievePomListing(jar);</pre></td></tr> <tr> <td class="numLineCover"> 260</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"> 261</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 read Jar file entries in '%s'."</span>, dependency.getActualFilePath());</span></pre></td></tr> <tr> <td class="numLineCover"> 262</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> AnalysisException ax = <span class="keyword">new</span> AnalysisException(msg, ex);</span></pre></td></tr> @@ -502,9 +502,9 @@ <tr> <td class="numLineCover"> 264</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(JarAnalyzer.<span class="keyword">class</span>.getName()).log(Level.WARNING, msg);</span></pre></td></tr> <tr> <td class="numLineCover"> 265</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(JarAnalyzer.<span class="keyword">class</span>.getName()).log(Level.INFO, msg, ex);</span></pre></td></tr> <tr> <td class="numLineCover"> 266</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> -<tr> <td class="numLineCover"> 267</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 268</td> <td class="nbHitsCovered"><a title="Line 268: Conditional coverage 100% (2/2)."> 16</a></td> <td class="src"><pre class="src"> <a title="Line 268: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (pomEntries.isEmpty()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 269</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 267</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 268</td> <td class="nbHitsCovered"><a title="Line 268: Conditional coverage 100% (2/2)."> 18</a></td> <td class="src"><pre class="src"> <a title="Line 268: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (pomEntries.isEmpty()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 269</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> <tr> <td class="numLine"> 270</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLineCover"> 271</td> <td class="nbHitsUncovered"><a title="Line 271: Conditional coverage 50% (1/2)."> 7</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 271: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (pomEntries.size() > 1) { <span class="comment">//need to sort out which pom we will use</span></a></span></pre></td></tr> @@ -601,17 +601,17 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 332</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> List<String> retrievePomListing(<span class="keyword">final</span> JarFile jar) <span class="keyword">throws</span> IOException {</pre></td></tr> -<tr> <td class="numLineCover"> 333</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<String> pomEntries = <span class="keyword">new</span> ArrayList<String>();</pre></td></tr> -<tr> <td class="numLineCover"> 334</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Enumeration<JarEntry> entries = jar.entries();</pre></td></tr> -<tr> <td class="numLineCover"> 335</td> <td class="nbHitsCovered"><a title="Line 335: Conditional coverage 100% (2/2)."> 6838</a></td> <td class="src"><pre class="src"> <a title="Line 335: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (entries.hasMoreElements()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 336</td> <td class="nbHitsCovered"> 6822</td> <td class="src"><pre class="src">  <span class="keyword">final</span> JarEntry entry = entries.nextElement();</pre></td></tr> -<tr> <td class="numLineCover"> 337</td> <td class="nbHitsCovered"> 6822</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String entryName = (<span class="keyword">new</span> File(entry.getName())).getName().toLowerCase();</pre></td></tr> -<tr> <td class="numLineCover"> 338</td> <td class="nbHitsCovered"><a title="Line 338: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 6822</a></td> <td class="src"><pre class="src"> <a title="Line 338: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (!entry.isDirectory() && <span class="string">"pom.xml"</span>.equals(entryName)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 333</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<String> pomEntries = <span class="keyword">new</span> ArrayList<String>();</pre></td></tr> +<tr> <td class="numLineCover"> 334</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Enumeration<JarEntry> entries = jar.entries();</pre></td></tr> +<tr> <td class="numLineCover"> 335</td> <td class="nbHitsCovered"><a title="Line 335: Conditional coverage 100% (2/2)."> 7564</a></td> <td class="src"><pre class="src"> <a title="Line 335: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (entries.hasMoreElements()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 336</td> <td class="nbHitsCovered"> 7546</td> <td class="src"><pre class="src">  <span class="keyword">final</span> JarEntry entry = entries.nextElement();</pre></td></tr> +<tr> <td class="numLineCover"> 337</td> <td class="nbHitsCovered"> 7546</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String entryName = (<span class="keyword">new</span> File(entry.getName())).getName().toLowerCase();</pre></td></tr> +<tr> <td class="numLineCover"> 338</td> <td class="nbHitsCovered"><a title="Line 338: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 7546</a></td> <td class="src"><pre class="src"> <a title="Line 338: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (!entry.isDirectory() && <span class="string">"pom.xml"</span>.equals(entryName)) {</a></pre></td></tr> <tr> <td class="numLineCover"> 339</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  pomEntries.add(entry.getName());</pre></td></tr> <tr> <td class="numLine"> 340</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 341</td> <td class="nbHitsCovered"> 6822</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 342</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">return</span> pomEntries;</pre></td></tr> +<tr> <td class="numLineCover"> 341</td> <td class="nbHitsCovered"> 7546</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 342</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">return</span> pomEntries;</pre></td></tr> <tr> <td class="numLine"> 343</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 344</td> <td class="nbHits"> </td> @@ -846,41 +846,41 @@ <td class="src"><pre class="src">  <span class="keyword">protected</span> <span class="keyword">void</span> analyzePackageNames(ArrayList<ClassNameInformation> classNames,</pre></td></tr> <tr> <td class="numLine"> 504</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  Dependency dependency, <span class="keyword">boolean</span> addPackagesAsEvidence) {</pre></td></tr> -<tr> <td class="numLineCover"> 505</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">final</span> HashMap<String, Integer> vendorIdentifiers = <span class="keyword">new</span> HashMap<String, Integer>();</pre></td></tr> -<tr> <td class="numLineCover"> 506</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">final</span> HashMap<String, Integer> productIdentifiers = <span class="keyword">new</span> HashMap<String, Integer>();</pre></td></tr> -<tr> <td class="numLineCover"> 507</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  analyzeFullyQualifiedClassNames(classNames, vendorIdentifiers, productIdentifiers);</pre></td></tr> +<tr> <td class="numLineCover"> 505</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">final</span> HashMap<String, Integer> vendorIdentifiers = <span class="keyword">new</span> HashMap<String, Integer>();</pre></td></tr> +<tr> <td class="numLineCover"> 506</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">final</span> HashMap<String, Integer> productIdentifiers = <span class="keyword">new</span> HashMap<String, Integer>();</pre></td></tr> +<tr> <td class="numLineCover"> 507</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  analyzeFullyQualifiedClassNames(classNames, vendorIdentifiers, productIdentifiers);</pre></td></tr> <tr> <td class="numLine"> 508</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 509</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">int</span> classCount = classNames.size();</pre></td></tr> -<tr> <td class="numLineCover"> 510</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">final</span> EvidenceCollection vendor = dependency.getVendorEvidence();</pre></td></tr> -<tr> <td class="numLineCover"> 511</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">final</span> EvidenceCollection product = dependency.getProductEvidence();</pre></td></tr> +<tr> <td class="numLineCover"> 509</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">int</span> classCount = classNames.size();</pre></td></tr> +<tr> <td class="numLineCover"> 510</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">final</span> EvidenceCollection vendor = dependency.getVendorEvidence();</pre></td></tr> +<tr> <td class="numLineCover"> 511</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">final</span> EvidenceCollection product = dependency.getProductEvidence();</pre></td></tr> <tr> <td class="numLine"> 512</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 513</td> <td class="nbHitsCovered"><a title="Line 513: Conditional coverage 100% (2/2)."> 16</a></td> <td class="src"><pre class="src"> <a title="Line 513: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Map.Entry<String, Integer> entry : vendorIdentifiers.entrySet()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 514</td> <td class="nbHitsCovered"> 160</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">float</span> ratio = entry.getValue() / (<span class="keyword">float</span>) classCount;</pre></td></tr> -<tr> <td class="numLineCover"> 515</td> <td class="nbHitsCovered"><a title="Line 515: Conditional coverage 100% (2/2)."> 160</a></td> <td class="src"><pre class="src"> <a title="Line 515: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (ratio > 0.5) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 513</td> <td class="nbHitsCovered"><a title="Line 513: Conditional coverage 100% (2/2)."> 18</a></td> <td class="src"><pre class="src"> <a title="Line 513: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Map.Entry<String, Integer> entry : vendorIdentifiers.entrySet()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 514</td> <td class="nbHitsCovered"> 182</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">float</span> ratio = entry.getValue() / (<span class="keyword">float</span>) classCount;</pre></td></tr> +<tr> <td class="numLineCover"> 515</td> <td class="nbHitsCovered"><a title="Line 515: Conditional coverage 100% (2/2)."> 182</a></td> <td class="src"><pre class="src"> <a title="Line 515: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (ratio > 0.5) {</a></pre></td></tr> <tr> <td class="numLine"> 516</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//TODO remove weighting</span></pre></td></tr> -<tr> <td class="numLineCover"> 517</td> <td class="nbHitsCovered"> 32</td> <td class="src"><pre class="src">  vendor.addWeighting(entry.getKey());</pre></td></tr> -<tr> <td class="numLineCover"> 518</td> <td class="nbHitsUncovered"><a title="Line 518: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 32</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 518: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (addPackagesAsEvidence && entry.getKey().length() > 1) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 519</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  vendor.addEvidence(<span class="string">"jar"</span>, <span class="string">"package"</span>, entry.getKey(), Evidence.Confidence.LOW);</pre></td></tr> +<tr> <td class="numLineCover"> 517</td> <td class="nbHitsCovered"> 36</td> <td class="src"><pre class="src">  vendor.addWeighting(entry.getKey());</pre></td></tr> +<tr> <td class="numLineCover"> 518</td> <td class="nbHitsUncovered"><a title="Line 518: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 36</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 518: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (addPackagesAsEvidence && entry.getKey().length() > 1) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 519</td> <td class="nbHitsCovered"> 22</td> <td class="src"><pre class="src">  vendor.addEvidence(<span class="string">"jar"</span>, <span class="string">"package"</span>, entry.getKey(), Evidence.Confidence.LOW);</pre></td></tr> <tr> <td class="numLine"> 520</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 521</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 522</td> <td class="nbHitsCovered"> 160</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 523</td> <td class="nbHitsCovered"><a title="Line 523: Conditional coverage 100% (2/2)."> 16</a></td> <td class="src"><pre class="src"> <a title="Line 523: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Map.Entry<String, Integer> entry : productIdentifiers.entrySet()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 524</td> <td class="nbHitsCovered"> 3476</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">float</span> ratio = entry.getValue() / (<span class="keyword">float</span>) classCount;</pre></td></tr> -<tr> <td class="numLineCover"> 525</td> <td class="nbHitsCovered"><a title="Line 525: Conditional coverage 100% (2/2)."> 3476</a></td> <td class="src"><pre class="src"> <a title="Line 525: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (ratio > 0.5) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 526</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  product.addWeighting(entry.getKey());</pre></td></tr> -<tr> <td class="numLineCover"> 527</td> <td class="nbHitsUncovered"><a title="Line 527: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 19</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 527: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (addPackagesAsEvidence && entry.getKey().length() > 1) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 528</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  product.addEvidence(<span class="string">"jar"</span>, <span class="string">"package"</span>, entry.getKey(), Evidence.Confidence.LOW);</pre></td></tr> +<tr> <td class="numLineCover"> 522</td> <td class="nbHitsCovered"> 182</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 523</td> <td class="nbHitsCovered"><a title="Line 523: Conditional coverage 100% (2/2)."> 18</a></td> <td class="src"><pre class="src"> <a title="Line 523: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Map.Entry<String, Integer> entry : productIdentifiers.entrySet()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 524</td> <td class="nbHitsCovered"> 3772</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">float</span> ratio = entry.getValue() / (<span class="keyword">float</span>) classCount;</pre></td></tr> +<tr> <td class="numLineCover"> 525</td> <td class="nbHitsCovered"><a title="Line 525: Conditional coverage 100% (2/2)."> 3772</a></td> <td class="src"><pre class="src"> <a title="Line 525: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (ratio > 0.5) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 526</td> <td class="nbHitsCovered"> 21</td> <td class="src"><pre class="src">  product.addWeighting(entry.getKey());</pre></td></tr> +<tr> <td class="numLineCover"> 527</td> <td class="nbHitsUncovered"><a title="Line 527: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 21</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 527: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (addPackagesAsEvidence && entry.getKey().length() > 1) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 528</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  product.addEvidence(<span class="string">"jar"</span>, <span class="string">"package"</span>, entry.getKey(), Evidence.Confidence.LOW);</pre></td></tr> <tr> <td class="numLine"> 529</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 530</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 531</td> <td class="nbHitsCovered"> 3476</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 532</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 531</td> <td class="nbHitsCovered"> 3772</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 532</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 533</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 534</td> <td class="nbHits"> </td> @@ -913,15 +913,15 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 548</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">protected</span> <span class="keyword">boolean</span> parseManifest(Dependency dependency, ArrayList<ClassNameInformation> classInformation) <span class="keyword">throws</span> IOException {</pre></td></tr> -<tr> <td class="numLineCover"> 549</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">boolean</span> foundSomething = <span class="keyword">false</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 550</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  JarFile jar = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 549</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">boolean</span> foundSomething = <span class="keyword">false</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 550</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  JarFile jar = <span class="keyword">null</span>;</pre></td></tr> <tr> <td class="numLine"> 551</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 552</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  jar = <span class="keyword">new</span> JarFile(dependency.getActualFilePath());</pre></td></tr> +<tr> <td class="numLineCover"> 552</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  jar = <span class="keyword">new</span> JarFile(dependency.getActualFilePath());</pre></td></tr> <tr> <td class="numLine"> 553</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 554</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Manifest manifest = jar.getManifest();</pre></td></tr> -<tr> <td class="numLineCover"> 555</td> <td class="nbHitsUncovered"><a title="Line 555: Conditional coverage 50% (1/2)."> 16</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 555: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (manifest == <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 554</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Manifest manifest = jar.getManifest();</pre></td></tr> +<tr> <td class="numLineCover"> 555</td> <td class="nbHitsUncovered"><a title="Line 555: Conditional coverage 50% (1/2)."> 18</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 555: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (manifest == <span class="keyword">null</span>) {</a></span></pre></td></tr> <tr> <td class="numLine"> 556</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//don't log this for javadoc or sources jar files</span></pre></td></tr> <tr> <td class="numLineCover"> 557</td> <td class="nbHitsUncovered"><a title="Line 557: Conditional coverage 0% (0/8) [each condition: 0%, 0%, 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 557: Conditional coverage 0% (0/8) [each condition: 0%, 0%, 0%, 0%]."> <span class="keyword">if</span> (!dependency.getFileName().toLowerCase().endsWith(<span class="string">"-sources.jar"</span>)</a></span></pre></td></tr> @@ -941,59 +941,59 @@ <tr> <td class="numLineCover"> 565</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> <tr> <td class="numLine"> 566</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 567</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Attributes atts = manifest.getMainAttributes();</pre></td></tr> +<tr> <td class="numLineCover"> 567</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Attributes atts = manifest.getMainAttributes();</pre></td></tr> <tr> <td class="numLine"> 568</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 569</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">final</span> EvidenceCollection vendorEvidence = dependency.getVendorEvidence();</pre></td></tr> -<tr> <td class="numLineCover"> 570</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">final</span> EvidenceCollection productEvidence = dependency.getProductEvidence();</pre></td></tr> -<tr> <td class="numLineCover"> 571</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">final</span> EvidenceCollection versionEvidence = dependency.getVersionEvidence();</pre></td></tr> +<tr> <td class="numLineCover"> 569</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">final</span> EvidenceCollection vendorEvidence = dependency.getVendorEvidence();</pre></td></tr> +<tr> <td class="numLineCover"> 570</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">final</span> EvidenceCollection productEvidence = dependency.getProductEvidence();</pre></td></tr> +<tr> <td class="numLineCover"> 571</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">final</span> EvidenceCollection versionEvidence = dependency.getVersionEvidence();</pre></td></tr> <tr> <td class="numLine"> 572</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 573</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String source = <span class="string">"Manifest"</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 573</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String source = <span class="string">"Manifest"</span>;</pre></td></tr> <tr> <td class="numLine"> 574</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 575</td> <td class="nbHitsCovered"><a title="Line 575: Conditional coverage 100% (2/2)."> 16</a></td> <td class="src"><pre class="src"> <a title="Line 575: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Entry<Object, Object> entry : atts.entrySet()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 576</td> <td class="nbHitsCovered"> 236</td> <td class="src"><pre class="src">  String key = entry.getKey().toString();</pre></td></tr> -<tr> <td class="numLineCover"> 577</td> <td class="nbHitsCovered"> 236</td> <td class="src"><pre class="src">  String value = atts.getValue(key);</pre></td></tr> -<tr> <td class="numLineCover"> 578</td> <td class="nbHitsUncovered"><a title="Line 578: Conditional coverage 50% (1/2)."> 236</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 578: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (HTML_DETECTION_PATTERN.matcher(value).find()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 575</td> <td class="nbHitsCovered"><a title="Line 575: Conditional coverage 100% (2/2)."> 18</a></td> <td class="src"><pre class="src"> <a title="Line 575: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Entry<Object, Object> entry : atts.entrySet()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 576</td> <td class="nbHitsCovered"> 260</td> <td class="src"><pre class="src">  String key = entry.getKey().toString();</pre></td></tr> +<tr> <td class="numLineCover"> 577</td> <td class="nbHitsCovered"> 260</td> <td class="src"><pre class="src">  String value = atts.getValue(key);</pre></td></tr> +<tr> <td class="numLineCover"> 578</td> <td class="nbHitsUncovered"><a title="Line 578: Conditional coverage 50% (1/2)."> 260</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 578: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (HTML_DETECTION_PATTERN.matcher(value).find()) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 579</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  value = Jsoup.parse(value).text();</span></pre></td></tr> <tr> <td class="numLine"> 580</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 581</td> <td class="nbHitsUncovered"><a title="Line 581: Conditional coverage 50% (1/2)."> 236</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 581: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (IGNORE_VALUES.contains(value)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 581</td> <td class="nbHitsUncovered"><a title="Line 581: Conditional coverage 50% (1/2)."> 260</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 581: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (IGNORE_VALUES.contains(value)) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 582</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"> 583</td> <td class="nbHitsCovered"><a title="Line 583: Conditional coverage 100% (2/2)."> 236</a></td> <td class="src"><pre class="src"> <a title="Line 583: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.equalsIgnoreCase(Attributes.Name.IMPLEMENTATION_TITLE.toString())) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 584</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  foundSomething = <span class="keyword">true</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 585</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  productEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);</pre></td></tr> -<tr> <td class="numLineCover"> 586</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  addMatchingValues(classInformation, value, productEvidence);</pre></td></tr> -<tr> <td class="numLineCover"> 587</td> <td class="nbHitsCovered"><a title="Line 587: Conditional coverage 100% (2/2)."> 229</a></td> <td class="src"><pre class="src"> <a title="Line 587: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.equalsIgnoreCase(Attributes.Name.IMPLEMENTATION_VERSION.toString())) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 588</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  foundSomething = <span class="keyword">true</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 589</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  versionEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);</pre></td></tr> -<tr> <td class="numLineCover"> 590</td> <td class="nbHitsCovered"><a title="Line 590: Conditional coverage 100% (2/2)."> 219</a></td> <td class="src"><pre class="src"> <a title="Line 590: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.equalsIgnoreCase(Attributes.Name.IMPLEMENTATION_VENDOR.toString())) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 591</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  foundSomething = <span class="keyword">true</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 592</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);</pre></td></tr> -<tr> <td class="numLineCover"> 593</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  addMatchingValues(classInformation, value, vendorEvidence);</pre></td></tr> -<tr> <td class="numLineCover"> 594</td> <td class="nbHitsCovered"><a title="Line 594: Conditional coverage 100% (2/2)."> 213</a></td> <td class="src"><pre class="src"> <a title="Line 594: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.equalsIgnoreCase(Attributes.Name.IMPLEMENTATION_VENDOR_ID.toString())) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 595</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  foundSomething = <span class="keyword">true</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 596</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);</pre></td></tr> -<tr> <td class="numLineCover"> 597</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  addMatchingValues(classInformation, value, vendorEvidence);</pre></td></tr> -<tr> <td class="numLineCover"> 598</td> <td class="nbHitsCovered"><a title="Line 598: Conditional coverage 100% (2/2)."> 210</a></td> <td class="src"><pre class="src"> <a title="Line 598: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.equalsIgnoreCase(BUNDLE_DESCRIPTION)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 583</td> <td class="nbHitsCovered"><a title="Line 583: Conditional coverage 100% (2/2)."> 260</a></td> <td class="src"><pre class="src"> <a title="Line 583: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.equalsIgnoreCase(Attributes.Name.IMPLEMENTATION_TITLE.toString())) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 584</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  foundSomething = <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 585</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  productEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);</pre></td></tr> +<tr> <td class="numLineCover"> 586</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  addMatchingValues(classInformation, value, productEvidence);</pre></td></tr> +<tr> <td class="numLineCover"> 587</td> <td class="nbHitsCovered"><a title="Line 587: Conditional coverage 100% (2/2)."> 251</a></td> <td class="src"><pre class="src"> <a title="Line 587: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.equalsIgnoreCase(Attributes.Name.IMPLEMENTATION_VERSION.toString())) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 588</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  foundSomething = <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 589</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  versionEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);</pre></td></tr> +<tr> <td class="numLineCover"> 590</td> <td class="nbHitsCovered"><a title="Line 590: Conditional coverage 100% (2/2)."> 239</a></td> <td class="src"><pre class="src"> <a title="Line 590: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.equalsIgnoreCase(Attributes.Name.IMPLEMENTATION_VENDOR.toString())) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 591</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  foundSomething = <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 592</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);</pre></td></tr> +<tr> <td class="numLineCover"> 593</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  addMatchingValues(classInformation, value, vendorEvidence);</pre></td></tr> +<tr> <td class="numLineCover"> 594</td> <td class="nbHitsCovered"><a title="Line 594: Conditional coverage 100% (2/2)."> 231</a></td> <td class="src"><pre class="src"> <a title="Line 594: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.equalsIgnoreCase(Attributes.Name.IMPLEMENTATION_VENDOR_ID.toString())) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 595</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  foundSomething = <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 596</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);</pre></td></tr> +<tr> <td class="numLineCover"> 597</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  addMatchingValues(classInformation, value, vendorEvidence);</pre></td></tr> +<tr> <td class="numLineCover"> 598</td> <td class="nbHitsCovered"><a title="Line 598: Conditional coverage 100% (2/2)."> 226</a></td> <td class="src"><pre class="src"> <a title="Line 598: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.equalsIgnoreCase(BUNDLE_DESCRIPTION)) {</a></pre></td></tr> <tr> <td class="numLineCover"> 599</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  foundSomething = <span class="keyword">true</span>;</pre></td></tr> <tr> <td class="numLineCover"> 600</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  addDescription(dependency, value, <span class="string">"manifest"</span>, key);</pre></td></tr> <tr> <td class="numLine"> 601</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//productEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);</span></pre></td></tr> <tr> <td class="numLineCover"> 602</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  addMatchingValues(classInformation, value, productEvidence);</pre></td></tr> -<tr> <td class="numLineCover"> 603</td> <td class="nbHitsCovered"><a title="Line 603: Conditional coverage 100% (2/2)."> 203</a></td> <td class="src"><pre class="src"> <a title="Line 603: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.equalsIgnoreCase(BUNDLE_NAME)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 603</td> <td class="nbHitsCovered"><a title="Line 603: Conditional coverage 100% (2/2)."> 219</a></td> <td class="src"><pre class="src"> <a title="Line 603: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.equalsIgnoreCase(BUNDLE_NAME)) {</a></pre></td></tr> <tr> <td class="numLineCover"> 604</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  foundSomething = <span class="keyword">true</span>;</pre></td></tr> <tr> <td class="numLineCover"> 605</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  productEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);</pre></td></tr> <tr> <td class="numLineCover"> 606</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  addMatchingValues(classInformation, value, productEvidence);</pre></td></tr> -<tr> <td class="numLineCover"> 607</td> <td class="nbHitsCovered"><a title="Line 607: Conditional coverage 100% (2/2)."> 193</a></td> <td class="src"><pre class="src"> <a title="Line 607: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.equalsIgnoreCase(BUNDLE_VENDOR)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 607</td> <td class="nbHitsCovered"><a title="Line 607: Conditional coverage 100% (2/2)."> 209</a></td> <td class="src"><pre class="src"> <a title="Line 607: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.equalsIgnoreCase(BUNDLE_VENDOR)) {</a></pre></td></tr> <tr> <td class="numLineCover"> 608</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  foundSomething = <span class="keyword">true</span>;</pre></td></tr> <tr> <td class="numLineCover"> 609</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);</pre></td></tr> <tr> <td class="numLineCover"> 610</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  addMatchingValues(classInformation, value, vendorEvidence);</pre></td></tr> -<tr> <td class="numLineCover"> 611</td> <td class="nbHitsCovered"><a title="Line 611: Conditional coverage 100% (2/2)."> 185</a></td> <td class="src"><pre class="src"> <a title="Line 611: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.equalsIgnoreCase(BUNDLE_VERSION)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 611</td> <td class="nbHitsCovered"><a title="Line 611: Conditional coverage 100% (2/2)."> 201</a></td> <td class="src"><pre class="src"> <a title="Line 611: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.equalsIgnoreCase(BUNDLE_VERSION)) {</a></pre></td></tr> <tr> <td class="numLineCover"> 612</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  foundSomething = <span class="keyword">true</span>;</pre></td></tr> <tr> <td class="numLineCover"> 613</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  versionEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);</pre></td></tr> -<tr> <td class="numLineCover"> 614</td> <td class="nbHitsCovered"><a title="Line 614: Conditional coverage 100% (2/2)."> 175</a></td> <td class="src"><pre class="src"> <a title="Line 614: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.equalsIgnoreCase(Attributes.Name.MAIN_CLASS.toString())) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 614</td> <td class="nbHitsCovered"><a title="Line 614: Conditional coverage 100% (2/2)."> 191</a></td> <td class="src"><pre class="src"> <a title="Line 614: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.equalsIgnoreCase(Attributes.Name.MAIN_CLASS.toString())) {</a></pre></td></tr> <tr> <td class="numLineCover"> 615</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  <span class="keyword">continue</span>;</pre></td></tr> <tr> <td class="numLine"> 616</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//skipping main class as if this has important information to add</span></pre></td></tr> @@ -1013,10 +1013,10 @@ <td class="src"><pre class="src"> <span class="comment">// addMatchingValues(classInformation, value, productEvidence);</span></pre></td></tr> <tr> <td class="numLine"> 624</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 625</td> <td class="nbHitsCovered"> 170</td> <td class="src"><pre class="src">  key = key.toLowerCase();</pre></td></tr> +<tr> <td class="numLineCover"> 625</td> <td class="nbHitsCovered"> 186</td> <td class="src"><pre class="src">  key = key.toLowerCase();</pre></td></tr> <tr> <td class="numLine"> 626</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 627</td> <td class="nbHitsUncovered"><a title="Line 627: Conditional coverage 75% (15/20) [each condition: 100%, 100%, 100%, 100%, 50%, 50%, 50%, 50%, 50%, 100%]."> 170</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 627: Conditional coverage 75% (15/20) [each condition: 100%, 100%, 100%, 100%, 50%, 50%, 50%, 50%, 50%, 100%]."> <span class="keyword">if</span> (!IGNORE_KEYS.contains(key)</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 627</td> <td class="nbHitsUncovered"><a title="Line 627: Conditional coverage 75% (15/20) [each condition: 100%, 100%, 100%, 100%, 50%, 50%, 50%, 50%, 50%, 100%]."> 186</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 627: Conditional coverage 75% (15/20) [each condition: 100%, 100%, 100%, 100%, 50%, 50%, 50%, 50%, 50%, 100%]."> <span class="keyword">if</span> (!IGNORE_KEYS.contains(key)</a></span></pre></td></tr> <tr> <td class="numLine"> 628</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  && !key.endsWith(<span class="string">"jdk"</span>)</pre></td></tr> <tr> <td class="numLine"> 629</td> <td class="nbHits"> </td> @@ -1037,10 +1037,10 @@ <td class="src"><pre class="src">  && !isPackage(key, value)) {</pre></td></tr> <tr> <td class="numLine"> 637</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 638</td> <td class="nbHitsCovered"> 51</td> <td class="src"><pre class="src">  foundSomething = <span class="keyword">true</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 639</td> <td class="nbHitsCovered"><a title="Line 639: Conditional coverage 100% (2/2)."> 51</a></td> <td class="src"><pre class="src"> <a title="Line 639: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (key.contains(<span class="string">"version"</span>)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 640</td> <td class="nbHitsCovered"><a title="Line 640: Conditional coverage 100% (2/2)."> 8</a></td> <td class="src"><pre class="src"> <a title="Line 640: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (key.contains(<span class="string">"specification"</span>)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 641</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  versionEvidence.addEvidence(source, key, value, Evidence.Confidence.LOW);</pre></td></tr> +<tr> <td class="numLineCover"> 638</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  foundSomething = <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 639</td> <td class="nbHitsCovered"><a title="Line 639: Conditional coverage 100% (2/2)."> 59</a></td> <td class="src"><pre class="src"> <a title="Line 639: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (key.contains(<span class="string">"version"</span>)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 640</td> <td class="nbHitsCovered"><a title="Line 640: Conditional coverage 100% (2/2)."> 10</a></td> <td class="src"><pre class="src"> <a title="Line 640: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (key.contains(<span class="string">"specification"</span>)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 641</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  versionEvidence.addEvidence(source, key, value, Evidence.Confidence.LOW);</pre></td></tr> <tr> <td class="numLine"> 642</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> <tr> <td class="numLineCover"> 643</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  versionEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);</pre></td></tr> @@ -1048,23 +1048,23 @@ <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 645</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 646</td> <td class="nbHitsCovered"><a title="Line 646: Conditional coverage 100% (2/2)."> 43</a></td> <td class="src"><pre class="src"> <a title="Line 646: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.contains(<span class="string">"title"</span>)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 647</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  productEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);</pre></td></tr> -<tr> <td class="numLineCover"> 648</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  addMatchingValues(classInformation, value, productEvidence);</pre></td></tr> -<tr> <td class="numLineCover"> 649</td> <td class="nbHitsCovered"><a title="Line 649: Conditional coverage 100% (2/2)."> 37</a></td> <td class="src"><pre class="src"> <a title="Line 649: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.contains(<span class="string">"vendor"</span>)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 650</td> <td class="nbHitsUncovered"><a title="Line 650: Conditional coverage 50% (1/2)."> 3</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 650: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (key.contains(<span class="string">"specification"</span>)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 651</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.LOW);</pre></td></tr> +<tr> <td class="numLineCover"> 646</td> <td class="nbHitsCovered"><a title="Line 646: Conditional coverage 100% (2/2)."> 49</a></td> <td class="src"><pre class="src"> <a title="Line 646: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.contains(<span class="string">"title"</span>)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 647</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  productEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);</pre></td></tr> +<tr> <td class="numLineCover"> 648</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  addMatchingValues(classInformation, value, productEvidence);</pre></td></tr> +<tr> <td class="numLineCover"> 649</td> <td class="nbHitsCovered"><a title="Line 649: Conditional coverage 100% (2/2)."> 41</a></td> <td class="src"><pre class="src"> <a title="Line 649: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.contains(<span class="string">"vendor"</span>)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 650</td> <td class="nbHitsUncovered"><a title="Line 650: Conditional coverage 50% (1/2)."> 5</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 650: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (key.contains(<span class="string">"specification"</span>)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 651</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.LOW);</pre></td></tr> <tr> <td class="numLine"> 652</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> <tr> <td class="numLineCover"> 653</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);</span></pre></td></tr> <tr> <td class="numLineCover"> 654</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  addMatchingValues(classInformation, value, vendorEvidence);</span></pre></td></tr> <tr> <td class="numLine"> 655</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 656</td> <td class="nbHitsCovered"><a title="Line 656: Conditional coverage 100% (2/2)."> 34</a></td> <td class="src"><pre class="src"> <a title="Line 656: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.contains(<span class="string">"name"</span>)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 657</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  productEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);</pre></td></tr> -<tr> <td class="numLineCover"> 658</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);</pre></td></tr> -<tr> <td class="numLineCover"> 659</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  addMatchingValues(classInformation, value, vendorEvidence);</pre></td></tr> -<tr> <td class="numLineCover"> 660</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  addMatchingValues(classInformation, value, productEvidence);</pre></td></tr> +<tr> <td class="numLineCover"> 656</td> <td class="nbHitsCovered"><a title="Line 656: Conditional coverage 100% (2/2)."> 36</a></td> <td class="src"><pre class="src"> <a title="Line 656: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.contains(<span class="string">"name"</span>)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 657</td> <td class="nbHitsCovered"> 13</td> <td class="src"><pre class="src">  productEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);</pre></td></tr> +<tr> <td class="numLineCover"> 658</td> <td class="nbHitsCovered"> 13</td> <td class="src"><pre class="src">  vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);</pre></td></tr> +<tr> <td class="numLineCover"> 659</td> <td class="nbHitsCovered"> 13</td> <td class="src"><pre class="src">  addMatchingValues(classInformation, value, vendorEvidence);</pre></td></tr> +<tr> <td class="numLineCover"> 660</td> <td class="nbHitsCovered"> 13</td> <td class="src"><pre class="src">  addMatchingValues(classInformation, value, productEvidence);</pre></td></tr> <tr> <td class="numLineCover"> 661</td> <td class="nbHitsCovered"><a title="Line 661: Conditional coverage 100% (2/2)."> 23</a></td> <td class="src"><pre class="src"> <a title="Line 661: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (key.contains(<span class="string">"license"</span>)) {</a></pre></td></tr> <tr> <td class="numLineCover"> 662</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  addLicense(dependency, value);</pre></td></tr> <tr> <td class="numLine"> 663</td> <td class="nbHits"> </td> @@ -1096,16 +1096,16 @@ <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 683</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 684</td> <td class="nbHitsCovered"> 231</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 684</td> <td class="nbHitsCovered"> 255</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 685</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 686</td> <td class="nbHitsUncovered"><a title="Line 686: Conditional coverage 50% (1/2)."> 16</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 686: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (jar != <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 687</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  jar.close();</pre></td></tr> +<tr> <td class="numLineCover"> 686</td> <td class="nbHitsUncovered"><a title="Line 686: Conditional coverage 50% (1/2)."> 18</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 686: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (jar != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 687</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  jar.close();</pre></td></tr> <tr> <td class="numLine"> 688</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 689</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 690</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">return</span> foundSomething;</pre></td></tr> +<tr> <td class="numLineCover"> 690</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">return</span> foundSomething;</pre></td></tr> <tr> <td class="numLine"> 691</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 692</td> <td class="nbHits"> </td> @@ -1205,7 +1205,7 @@ <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> initialize() {</pre></td></tr> <tr> <td class="numLine"> 756</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//do nothing</span></pre></td></tr> -<tr> <td class="numLineCover"> 757</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 757</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 758</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 759</td> <td class="nbHits"> </td> @@ -1218,7 +1218,7 @@ <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> close() {</pre></td></tr> <tr> <td class="numLine"> 763</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//do nothing</span></pre></td></tr> -<tr> <td class="numLineCover"> 764</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 764</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 765</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 766</td> <td class="nbHits"> </td> @@ -1333,12 +1333,12 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 831</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"> 832</td> <td class="nbHitsCovered"> 53</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Pattern packageRx = Pattern.compile(<span class="string">"^((([a-zA-Z_#\\$0-9]\\.)+)\\s*\\;\\s*)+$"</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 833</td> <td class="nbHitsUncovered"><a title="Line 833: Conditional coverage 50% (1/2)."> 53</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 833: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (packageRx.matcher(value).matches()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 832</td> <td class="nbHitsCovered"> 61</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Pattern packageRx = Pattern.compile(<span class="string">"^((([a-zA-Z_#\\$0-9]\\.)+)\\s*\\;\\s*)+$"</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 833</td> <td class="nbHitsUncovered"><a title="Line 833: Conditional coverage 50% (1/2)."> 61</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 833: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (packageRx.matcher(value).matches()) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 834</td> <td class="nbHitsUncovered"><a title="Line 834: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 834: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> <span class="keyword">return</span> (key.contains(<span class="string">"import"</span>) || key.contains(<span class="string">"include"</span>));</a></span></pre></td></tr> <tr> <td class="numLine"> 835</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 836</td> <td class="nbHitsCovered"> 53</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 836</td> <td class="nbHitsCovered"> 61</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> <tr> <td class="numLine"> 837</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 838</td> <td class="nbHits"> </td> @@ -1361,41 +1361,41 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 847</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> ArrayList<ClassNameInformation> collectClassNames(Dependency dependency) {</pre></td></tr> -<tr> <td class="numLineCover"> 848</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">final</span> ArrayList<ClassNameInformation> classNames = <span class="keyword">new</span> ArrayList<ClassNameInformation>();</pre></td></tr> -<tr> <td class="numLineCover"> 849</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  JarFile jar = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 848</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">final</span> ArrayList<ClassNameInformation> classNames = <span class="keyword">new</span> ArrayList<ClassNameInformation>();</pre></td></tr> +<tr> <td class="numLineCover"> 849</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  JarFile jar = <span class="keyword">null</span>;</pre></td></tr> <tr> <td class="numLine"> 850</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 851</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  jar = <span class="keyword">new</span> JarFile(dependency.getActualFilePath());</pre></td></tr> -<tr> <td class="numLineCover"> 852</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Enumeration entries = jar.entries();</pre></td></tr> -<tr> <td class="numLineCover"> 853</td> <td class="nbHitsCovered"><a title="Line 853: Conditional coverage 100% (2/2)."> 6838</a></td> <td class="src"><pre class="src"> <a title="Line 853: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (entries.hasMoreElements()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 854</td> <td class="nbHitsCovered"> 6822</td> <td class="src"><pre class="src">  <span class="keyword">final</span> JarEntry entry = (JarEntry) entries.nextElement();</pre></td></tr> -<tr> <td class="numLineCover"> 855</td> <td class="nbHitsCovered"> 6822</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String name = entry.getName().toLowerCase();</pre></td></tr> +<tr> <td class="numLineCover"> 851</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  jar = <span class="keyword">new</span> JarFile(dependency.getActualFilePath());</pre></td></tr> +<tr> <td class="numLineCover"> 852</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Enumeration entries = jar.entries();</pre></td></tr> +<tr> <td class="numLineCover"> 853</td> <td class="nbHitsCovered"><a title="Line 853: Conditional coverage 100% (2/2)."> 7564</a></td> <td class="src"><pre class="src"> <a title="Line 853: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (entries.hasMoreElements()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 854</td> <td class="nbHitsCovered"> 7546</td> <td class="src"><pre class="src">  <span class="keyword">final</span> JarEntry entry = (JarEntry) entries.nextElement();</pre></td></tr> +<tr> <td class="numLineCover"> 855</td> <td class="nbHitsCovered"> 7546</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String name = entry.getName().toLowerCase();</pre></td></tr> <tr> <td class="numLine"> 856</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"> 857</td> <td class="nbHitsUncovered"><a title="Line 857: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 6822</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 857: 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"> 858</td> <td class="nbHitsCovered"> 5781</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"> 859</td> <td class="nbHitsCovered"> 5781</td> <td class="src"><pre class="src">  classNames.add(className);</pre></td></tr> +<tr> <td class="numLineCover"> 857</td> <td class="nbHitsUncovered"><a title="Line 857: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 7546</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 857: 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"> 858</td> <td class="nbHitsCovered"> 6375</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"> 859</td> <td class="nbHitsCovered"> 6375</td> <td class="src"><pre class="src">  classNames.add(className);</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"> 6822</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 861</td> <td class="nbHitsCovered"> 7546</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLineCover"> 862</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"> 863</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 open jar file '%s'."</span>, dependency.getFileName());</span></pre></td></tr> <tr> <td class="numLineCover"> 864</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(JarAnalyzer.<span class="keyword">class</span>.getName()).log(Level.WARNING, msg);</span></pre></td></tr> <tr> <td class="numLineCover"> 865</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(JarAnalyzer.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="keyword">null</span>, ex);</span></pre></td></tr> <tr> <td class="numLine"> 866</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 867</td> <td class="nbHitsUncovered"><a title="Line 867: Conditional coverage 50% (1/2)."> 16</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 867: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (jar != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 867</td> <td class="nbHitsUncovered"><a title="Line 867: Conditional coverage 50% (1/2)."> 18</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 867: 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"> 868</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 869</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  jar.close();</pre></td></tr> +<tr> <td class="numLineCover"> 869</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  jar.close();</pre></td></tr> <tr> <td class="numLineCover"> 870</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"> 871</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(JarAnalyzer.<span class="keyword">class</span>.getName()).log(Level.FINEST, <span class="keyword">null</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 872</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 872</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 873</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 874</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 875</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">return</span> classNames;</pre></td></tr> +<tr> <td class="numLineCover"> 875</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">return</span> classNames;</pre></td></tr> <tr> <td class="numLine"> 876</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 877</td> <td class="nbHits"> </td> @@ -1428,31 +1428,31 @@ <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> analyzeFullyQualifiedClassNames(ArrayList<ClassNameInformation> classNames,</pre></td></tr> <tr> <td class="numLine"> 891</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  HashMap<String, Integer> vendor, HashMap<String, Integer> product) {</pre></td></tr> -<tr> <td class="numLineCover"> 892</td> <td class="nbHitsCovered"><a title="Line 892: Conditional coverage 100% (2/2)."> 16</a></td> <td class="src"><pre class="src"> <a title="Line 892: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (ClassNameInformation entry : classNames) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 893</td> <td class="nbHitsCovered"> 5781</td> <td class="src"><pre class="src">  <span class="keyword">final</span> ArrayList<String> list = entry.getPackageStructure();</pre></td></tr> -<tr> <td class="numLineCover"> 894</td> <td class="nbHitsCovered"> 5781</td> <td class="src"><pre class="src">  addEntry(vendor, list.get(0));</pre></td></tr> +<tr> <td class="numLineCover"> 892</td> <td class="nbHitsCovered"><a title="Line 892: Conditional coverage 100% (2/2)."> 18</a></td> <td class="src"><pre class="src"> <a title="Line 892: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (ClassNameInformation entry : classNames) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 893</td> <td class="nbHitsCovered"> 6375</td> <td class="src"><pre class="src">  <span class="keyword">final</span> ArrayList<String> list = entry.getPackageStructure();</pre></td></tr> +<tr> <td class="numLineCover"> 894</td> <td class="nbHitsCovered"> 6375</td> <td class="src"><pre class="src">  addEntry(vendor, list.get(0));</pre></td></tr> <tr> <td class="numLine"> 895</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 896</td> <td class="nbHitsUncovered"><a title="Line 896: Conditional coverage 50% (1/2)."> 5781</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 896: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (list.size() == 2) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 896</td> <td class="nbHitsUncovered"><a title="Line 896: Conditional coverage 50% (1/2)."> 6375</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 896: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (list.size() == 2) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 897</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"> 898</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 899</td> <td class="nbHitsCovered"><a title="Line 899: Conditional coverage 100% (2/2)."> 5781</a></td> <td class="src"><pre class="src"> <a title="Line 899: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (list.size() == 3) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 900</td> <td class="nbHitsCovered"> 1989</td> <td class="src"><pre class="src">  addEntry(vendor, list.get(1));</pre></td></tr> -<tr> <td class="numLineCover"> 901</td> <td class="nbHitsCovered"> 1989</td> <td class="src"><pre class="src">  addEntry(product, list.get(1));</pre></td></tr> -<tr> <td class="numLineCover"> 902</td> <td class="nbHitsCovered"> 1989</td> <td class="src"><pre class="src">  addEntry(product, list.get(2));</pre></td></tr> +<tr> <td class="numLineCover"> 899</td> <td class="nbHitsCovered"><a title="Line 899: Conditional coverage 100% (2/2)."> 6375</a></td> <td class="src"><pre class="src"> <a title="Line 899: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (list.size() == 3) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 900</td> <td class="nbHitsCovered"> 1991</td> <td class="src"><pre class="src">  addEntry(vendor, list.get(1));</pre></td></tr> +<tr> <td class="numLineCover"> 901</td> <td class="nbHitsCovered"> 1991</td> <td class="src"><pre class="src">  addEntry(product, list.get(1));</pre></td></tr> +<tr> <td class="numLineCover"> 902</td> <td class="nbHitsCovered"> 1991</td> <td class="src"><pre class="src">  addEntry(product, list.get(2));</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="numLineCover"> 904</td> <td class="nbHitsCovered"><a title="Line 904: Conditional coverage 100% (2/2)."> 5781</a></td> <td class="src"><pre class="src"> <a title="Line 904: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (list.size() >= 4) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 905</td> <td class="nbHitsCovered"> 3792</td> <td class="src"><pre class="src">  addEntry(vendor, list.get(1));</pre></td></tr> -<tr> <td class="numLineCover"> 906</td> <td class="nbHitsCovered"> 3792</td> <td class="src"><pre class="src">  addEntry(vendor, list.get(2));</pre></td></tr> -<tr> <td class="numLineCover"> 907</td> <td class="nbHitsCovered"> 3792</td> <td class="src"><pre class="src">  addEntry(product, list.get(1));</pre></td></tr> -<tr> <td class="numLineCover"> 908</td> <td class="nbHitsCovered"> 3792</td> <td class="src"><pre class="src">  addEntry(product, list.get(2));</pre></td></tr> -<tr> <td class="numLineCover"> 909</td> <td class="nbHitsCovered"> 3792</td> <td class="src"><pre class="src">  addEntry(product, list.get(3));</pre></td></tr> +<tr> <td class="numLineCover"> 904</td> <td class="nbHitsCovered"><a title="Line 904: Conditional coverage 100% (2/2)."> 6375</a></td> <td class="src"><pre class="src"> <a title="Line 904: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (list.size() >= 4) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 905</td> <td class="nbHitsCovered"> 4384</td> <td class="src"><pre class="src">  addEntry(vendor, list.get(1));</pre></td></tr> +<tr> <td class="numLineCover"> 906</td> <td class="nbHitsCovered"> 4384</td> <td class="src"><pre class="src">  addEntry(vendor, list.get(2));</pre></td></tr> +<tr> <td class="numLineCover"> 907</td> <td class="nbHitsCovered"> 4384</td> <td class="src"><pre class="src">  addEntry(product, list.get(1));</pre></td></tr> +<tr> <td class="numLineCover"> 908</td> <td class="nbHitsCovered"> 4384</td> <td class="src"><pre class="src">  addEntry(product, list.get(2));</pre></td></tr> +<tr> <td class="numLineCover"> 909</td> <td class="nbHitsCovered"> 4384</td> <td class="src"><pre class="src">  addEntry(product, list.get(3));</pre></td></tr> <tr> <td class="numLine"> 910</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 911</td> <td class="nbHitsCovered"> 5781</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 912</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 911</td> <td class="nbHitsCovered"> 6375</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 912</td> <td class="nbHitsCovered"> 18</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> @@ -1473,14 +1473,14 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 922</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> addEntry(HashMap<String, Integer> collection, String key) {</pre></td></tr> -<tr> <td class="numLineCover"> 923</td> <td class="nbHitsCovered"><a title="Line 923: Conditional coverage 100% (2/2)."> 30708</a></td> <td class="src"><pre class="src"> <a title="Line 923: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (collection.containsKey(key)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 924</td> <td class="nbHitsCovered"> 27072</td> <td class="src"><pre class="src">  collection.put(key, collection.get(key) + 1);</pre></td></tr> +<tr> <td class="numLineCover"> 923</td> <td class="nbHitsCovered"><a title="Line 923: Conditional coverage 100% (2/2)."> 34268</a></td> <td class="src"><pre class="src"> <a title="Line 923: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (collection.containsKey(key)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 924</td> <td class="nbHitsCovered"> 30314</td> <td class="src"><pre class="src">  collection.put(key, collection.get(key) + 1);</pre></td></tr> <tr> <td class="numLine"> 925</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 926</td> <td class="nbHitsCovered"> 3636</td> <td class="src"><pre class="src">  collection.put(key, 1);</pre></td></tr> +<tr> <td class="numLineCover"> 926</td> <td class="nbHitsCovered"> 3954</td> <td class="src"><pre class="src">  collection.put(key, 1);</pre></td></tr> <tr> <td class="numLine"> 927</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 928</td> <td class="nbHitsCovered"> 30708</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 928</td> <td class="nbHitsCovered"> 34268</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 929</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 930</td> <td class="nbHits"> </td> @@ -1505,22 +1505,22 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 940</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> addMatchingValues(ArrayList<ClassNameInformation> classes, String value, EvidenceCollection evidence) {</pre></td></tr> -<tr> <td class="numLineCover"> 941</td> <td class="nbHitsUncovered"><a title="Line 941: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 145</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 941: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">if</span> (value == <span class="keyword">null</span> || value.isEmpty()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 941</td> <td class="nbHitsUncovered"><a title="Line 941: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 157</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 941: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">if</span> (value == <span class="keyword">null</span> || value.isEmpty()) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 942</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"> 943</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 944</td> <td class="nbHitsCovered"> 145</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String text = value.toLowerCase();</pre></td></tr> -<tr> <td class="numLineCover"> 945</td> <td class="nbHitsCovered"><a title="Line 945: Conditional coverage 100% (2/2)."> 145</a></td> <td class="src"><pre class="src"> <a title="Line 945: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (ClassNameInformation cni : classes) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 946</td> <td class="nbHitsCovered"><a title="Line 946: Conditional coverage 100% (2/2)."> 59610</a></td> <td class="src"><pre class="src"> <a title="Line 946: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (String key : cni.getPackageStructure()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 947</td> <td class="nbHitsCovered"><a title="Line 947: Conditional coverage 100% (2/2)."> 217618</a></td> <td class="src"><pre class="src"> <a title="Line 947: 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"> 948</td> <td class="nbHitsCovered"> 66967</td> <td class="src"><pre class="src">  evidence.addEvidence(<span class="string">"jar"</span>, <span class="string">"package name"</span>, key, Evidence.Confidence.HIGHEST);</pre></td></tr> +<tr> <td class="numLineCover"> 944</td> <td class="nbHitsCovered"> 157</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String text = value.toLowerCase();</pre></td></tr> +<tr> <td class="numLineCover"> 945</td> <td class="nbHitsCovered"><a title="Line 945: Conditional coverage 100% (2/2)."> 157</a></td> <td class="src"><pre class="src"> <a title="Line 945: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (ClassNameInformation cni : classes) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 946</td> <td class="nbHitsCovered"><a title="Line 946: Conditional coverage 100% (2/2)."> 63174</a></td> <td class="src"><pre class="src"> <a title="Line 946: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (String key : cni.getPackageStructure()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 947</td> <td class="nbHitsCovered"><a title="Line 947: Conditional coverage 100% (2/2)."> 231862</a></td> <td class="src"><pre class="src"> <a title="Line 947: 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"> 948</td> <td class="nbHitsCovered"> 70531</td> <td class="src"><pre class="src">  evidence.addEvidence(<span class="string">"jar"</span>, <span class="string">"package name"</span>, key, Evidence.Confidence.HIGHEST);</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="numLine"> 951</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 952</td> <td class="nbHitsCovered"> 145</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 952</td> <td class="nbHitsCovered"> 157</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 953</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 954</td> <td class="nbHits"> </td> @@ -1688,7 +1688,7 @@ <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"> 1036</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 1037</td> <td class="nbHitsCovered"><a title="Line 1037: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 53</a></td> <td class="src"><pre class="src"> <a title="Line 1037: 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="numLineCover"> 1037</td> <td class="nbHitsCovered"><a title="Line 1037: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 61</a></td> <td class="src"><pre class="src"> <a title="Line 1037: 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"> 1038</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"> 1039</td> <td class="nbHits"> </td> @@ -1741,30 +1741,30 @@ <td class="src"><pre class="src"> <span class="comment"> * @param className a fully qualified class name</span></pre></td></tr> <tr> <td class="numLine"> 1063</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 1064</td> <td class="nbHitsCovered"> 5781</td> <td class="src"><pre class="src">  ClassNameInformation(String className) {</pre></td></tr> -<tr> <td class="numLineCover"> 1065</td> <td class="nbHitsCovered"> 5781</td> <td class="src"><pre class="src">  name = className;</pre></td></tr> -<tr> <td class="numLineCover"> 1066</td> <td class="nbHitsUncovered"><a title="Line 1066: Conditional coverage 50% (1/2)."> 5781</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1066: 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"> 1067</td> <td class="nbHitsCovered"> 5781</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"> 1068</td> <td class="nbHitsCovered"> 5781</td> <td class="src"><pre class="src">  <span class="keyword">int</span> start = 0;</pre></td></tr> -<tr> <td class="numLineCover"> 1069</td> <td class="nbHitsCovered"> 5781</td> <td class="src"><pre class="src">  <span class="keyword">int</span> end = 3;</pre></td></tr> -<tr> <td class="numLineCover"> 1070</td> <td class="nbHitsCovered"><a title="Line 1070: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 5781</a></td> <td class="src"><pre class="src"> <a title="Line 1070: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (<span class="string">"com"</span>.equals(tmp[0]) || <span class="string">"org"</span>.equals(tmp[0])) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 1071</td> <td class="nbHitsCovered"> 5354</td> <td class="src"><pre class="src">  start = 1;</pre></td></tr> -<tr> <td class="numLineCover"> 1072</td> <td class="nbHitsCovered"> 5354</td> <td class="src"><pre class="src">  end = 4;</pre></td></tr> +<tr> <td class="numLineCover"> 1064</td> <td class="nbHitsCovered"> 6375</td> <td class="src"><pre class="src">  ClassNameInformation(String className) {</pre></td></tr> +<tr> <td class="numLineCover"> 1065</td> <td class="nbHitsCovered"> 6375</td> <td class="src"><pre class="src">  name = className;</pre></td></tr> +<tr> <td class="numLineCover"> 1066</td> <td class="nbHitsUncovered"><a title="Line 1066: Conditional coverage 50% (1/2)."> 6375</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 1066: 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"> 1067</td> <td class="nbHitsCovered"> 6375</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"> 1068</td> <td class="nbHitsCovered"> 6375</td> <td class="src"><pre class="src">  <span class="keyword">int</span> start = 0;</pre></td></tr> +<tr> <td class="numLineCover"> 1069</td> <td class="nbHitsCovered"> 6375</td> <td class="src"><pre class="src">  <span class="keyword">int</span> end = 3;</pre></td></tr> +<tr> <td class="numLineCover"> 1070</td> <td class="nbHitsCovered"><a title="Line 1070: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 6375</a></td> <td class="src"><pre class="src"> <a title="Line 1070: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (<span class="string">"com"</span>.equals(tmp[0]) || <span class="string">"org"</span>.equals(tmp[0])) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 1071</td> <td class="nbHitsCovered"> 5948</td> <td class="src"><pre class="src">  start = 1;</pre></td></tr> +<tr> <td class="numLineCover"> 1072</td> <td class="nbHitsCovered"> 5948</td> <td class="src"><pre class="src">  end = 4;</pre></td></tr> <tr> <td class="numLine"> 1073</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 1074</td> <td class="nbHitsCovered"><a title="Line 1074: Conditional coverage 100% (2/2)."> 5781</a></td> <td class="src"><pre class="src"> <a title="Line 1074: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (tmp.length <= end) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 1075</td> <td class="nbHitsCovered"> 1989</td> <td class="src"><pre class="src">  end = tmp.length - 1;</pre></td></tr> +<tr> <td class="numLineCover"> 1074</td> <td class="nbHitsCovered"><a title="Line 1074: Conditional coverage 100% (2/2)."> 6375</a></td> <td class="src"><pre class="src"> <a title="Line 1074: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (tmp.length <= end) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 1075</td> <td class="nbHitsCovered"> 1991</td> <td class="src"><pre class="src">  end = tmp.length - 1;</pre></td></tr> <tr> <td class="numLine"> 1076</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 1077</td> <td class="nbHitsCovered"><a title="Line 1077: Conditional coverage 100% (2/2)."> 26916</a></td> <td class="src"><pre class="src"> <a title="Line 1077: 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"> 1078</td> <td class="nbHitsCovered"> 21135</td> <td class="src"><pre class="src">  packageStructure.add(tmp[i]);</pre></td></tr> +<tr> <td class="numLineCover"> 1077</td> <td class="nbHitsCovered"><a title="Line 1077: Conditional coverage 100% (2/2)."> 29884</a></td> <td class="src"><pre class="src"> <a title="Line 1077: 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"> 1078</td> <td class="nbHitsCovered"> 23509</td> <td class="src"><pre class="src">  packageStructure.add(tmp[i]);</pre></td></tr> <tr> <td class="numLine"> 1079</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 1080</td> <td class="nbHitsCovered"> 5781</td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 1080</td> <td class="nbHitsCovered"> 6375</td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> <tr> <td class="numLineCover"> 1081</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"> 1082</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 1083</td> <td class="nbHitsCovered"> 5781</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 1083</td> <td class="nbHitsCovered"> 6375</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 1084</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> @@ -1814,7 +1814,7 @@ <td class="src"><pre class="src"> <span class="comment"> * leading "org" or "com".</span></pre></td></tr> <tr> <td class="numLine"> 1109</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 1110</td> <td class="nbHitsCovered"> 5781</td> <td class="src"><pre class="src">  <span class="keyword">private</span> ArrayList<String> packageStructure = <span class="keyword">new</span> ArrayList<String>();</pre></td></tr> +<tr> <td class="numLineCover"> 1110</td> <td class="nbHitsCovered"> 6375</td> <td class="src"><pre class="src">  <span class="keyword">private</span> ArrayList<String> packageStructure = <span class="keyword">new</span> ArrayList<String>();</pre></td></tr> <tr> <td class="numLine"> 1111</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 1112</td> <td class="nbHits"> </td> @@ -1829,7 +1829,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 1117</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"> 1118</td> <td class="nbHitsCovered"> 65391</td> <td class="src"><pre class="src">  <span class="keyword">return</span> packageStructure;</pre></td></tr> +<tr> <td class="numLineCover"> 1118</td> <td class="nbHitsCovered"> 69549</td> <td class="src"><pre class="src">  <span class="keyword">return</span> packageStructure;</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="numLine"> 1120</td> <td class="nbHits"> </td> @@ -1838,6 +1838,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer.html index fc2e240cb..899261f98 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer.html @@ -252,6 +252,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.NvdCveAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.NvdCveAnalyzer.html index 8f0e7733b..b01db72b7 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.NvdCveAnalyzer.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.NvdCveAnalyzer.html @@ -134,9 +134,9 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 59</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> open() <span class="keyword">throws</span> SQLException, IOException, DatabaseException, ClassNotFoundException {</pre></td></tr> -<tr> <td class="numLineCover"> 60</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  cveDB = <span class="keyword">new</span> CveDB();</pre></td></tr> -<tr> <td class="numLineCover"> 61</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  cveDB.open();</pre></td></tr> -<tr> <td class="numLineCover"> 62</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 60</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  cveDB = <span class="keyword">new</span> CveDB();</pre></td></tr> +<tr> <td class="numLineCover"> 61</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  cveDB.open();</pre></td></tr> +<tr> <td class="numLineCover"> 62</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 63</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 64</td> <td class="nbHits"> </td> @@ -147,9 +147,9 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 67</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"> 68</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  cveDB.close();</pre></td></tr> -<tr> <td class="numLineCover"> 69</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  cveDB = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 70</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 68</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  cveDB.close();</pre></td></tr> +<tr> <td class="numLineCover"> 69</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  cveDB = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 70</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 71</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 72</td> <td class="nbHits"> </td> @@ -211,13 +211,13 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 103</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> analyze(Dependency dependency, Engine engine) <span class="keyword">throws</span> AnalysisException {</pre></td></tr> -<tr> <td class="numLineCover"> 104</td> <td class="nbHitsCovered"><a title="Line 104: Conditional coverage 100% (2/2)."> 3</a></td> <td class="src"><pre class="src"> <a title="Line 104: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Identifier id : dependency.getIdentifiers()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 105</td> <td class="nbHitsUncovered"><a title="Line 105: Conditional coverage 50% (1/2)."> 6</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 105: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (<span class="string">"cpe"</span>.equals(id.getType())) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 104</td> <td class="nbHitsCovered"><a title="Line 104: Conditional coverage 100% (2/2)."> 9</a></td> <td class="src"><pre class="src"> <a title="Line 104: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Identifier id : dependency.getIdentifiers()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 105</td> <td class="nbHitsUncovered"><a title="Line 105: Conditional coverage 50% (1/2)."> 11</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 105: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (<span class="string">"cpe"</span>.equals(id.getType())) {</a></span></pre></td></tr> <tr> <td class="numLine"> 106</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 107</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String value = id.getValue();</pre></td></tr> -<tr> <td class="numLineCover"> 108</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<Vulnerability> vulns = cveDB.getVulnerabilities(value);</pre></td></tr> -<tr> <td class="numLineCover"> 109</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  dependency.getVulnerabilities().addAll(vulns);</pre></td></tr> +<tr> <td class="numLineCover"> 107</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String value = id.getValue();</pre></td></tr> +<tr> <td class="numLineCover"> 108</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<Vulnerability> vulns = cveDB.getVulnerabilities(value);</pre></td></tr> +<tr> <td class="numLineCover"> 109</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  dependency.getVulnerabilities().addAll(vulns);</pre></td></tr> <tr> <td class="numLine"> 110</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment">//TODO - remove this comment block after additional testing is completed</span></pre></td></tr> <tr> <td class="numLine"> 111</td> <td class="nbHits"> </td> @@ -234,12 +234,12 @@ <td class="src"><pre class="src"> <span class="comment">//// }</span></pre></td></tr> <tr> <td class="numLineCover"> 117</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (DatabaseException ex) {</span></pre></td></tr> <tr> <td class="numLineCover"> 118</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(ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 119</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 119</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 120</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 121</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 122</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 122</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 123</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 124</td> <td class="nbHits"> </td> @@ -254,7 +254,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 129</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Set<String> getSupportedExtensions() {</pre></td></tr> -<tr> <td class="numLineCover"> 130</td> <td class="nbHitsCovered"> 129</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 130</td> <td class="nbHitsCovered"> 132</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">null</span>;</pre></td></tr> <tr> <td class="numLine"> 131</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 132</td> <td class="nbHits"> </td> @@ -271,7 +271,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 138</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"> 139</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="string">"NVD CVE Analyzer"</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 139</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="string">"NVD CVE Analyzer"</span>;</pre></td></tr> <tr> <td class="numLine"> 140</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 141</td> <td class="nbHits"> </td> @@ -290,7 +290,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 148</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> supportsExtension(String extension) {</pre></td></tr> -<tr> <td class="numLineCover"> 149</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 149</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> <tr> <td class="numLine"> 150</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 151</td> <td class="nbHits"> </td> @@ -307,7 +307,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 157</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> AnalysisPhase getAnalysisPhase() {</pre></td></tr> -<tr> <td class="numLineCover"> 158</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">return</span> AnalysisPhase.FINDING_ANALYSIS;</pre></td></tr> +<tr> <td class="numLineCover"> 158</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  <span class="keyword">return</span> AnalysisPhase.FINDING_ANALYSIS;</pre></td></tr> <tr> <td class="numLine"> 159</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 160</td> <td class="nbHits"> </td> @@ -324,8 +324,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 166</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> initialize() <span class="keyword">throws</span> Exception {</pre></td></tr> -<tr> <td class="numLineCover"> 167</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.open();</pre></td></tr> -<tr> <td class="numLineCover"> 168</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 167</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.open();</pre></td></tr> +<tr> <td class="numLineCover"> 168</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 169</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment">//TODO - remove this comment block after additional testing is completed</span></pre></td></tr> <tr> <td class="numLine"> 170</td> <td class="nbHits"> </td> @@ -436,6 +436,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.DirectoryLockException.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.DirectoryLockException.html index d8ea34718..1cbb05da9 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.DirectoryLockException.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.DirectoryLockException.html @@ -145,6 +145,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.DirectorySpinLock.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.DirectorySpinLock.html index 6fa6effd2..ab29f9fea 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.DirectorySpinLock.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.DirectorySpinLock.html @@ -475,6 +475,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.InvalidDirectoryException.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.InvalidDirectoryException.html index 587137984..7adcbd8ff 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.InvalidDirectoryException.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.concurrency.InvalidDirectoryException.html @@ -145,6 +145,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.CachedWebDataSource.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.CachedWebDataSource.html index 17c2d7383..ac51400af 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.CachedWebDataSource.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.CachedWebDataSource.html @@ -95,6 +95,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.UpdateException.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.UpdateException.html index b1342c8e1..d6c8850c1 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.UpdateException.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.UpdateException.html @@ -149,6 +149,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.UpdateService.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.UpdateService.html index 76fe6a7bb..58ffa12ff 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.UpdateService.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.UpdateService.html @@ -146,6 +146,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.BaseIndex.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.BaseIndex.html index 606b022b8..86c535361 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.BaseIndex.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.BaseIndex.html @@ -83,7 +83,7 @@ <td class="src"><pre class="src"> <span class="comment"> * @author Jeremy Long (jeremy.long@owasp.org)</span></pre></td></tr> <tr> <td class="numLine"> 33</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 34</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">abstract</span> <span class="keyword">class</span> BaseIndex {</pre></td></tr> +<tr> <td class="numLineCover"> 34</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">abstract</span> <span class="keyword">class</span> BaseIndex {</pre></td></tr> <tr> <td class="numLine"> 35</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 36</td> <td class="nbHits"> </td> @@ -100,7 +100,7 @@ <td class="src"><pre class="src"> <span class="comment"> * Indicates whether or not the Lucene Index is open.</span></pre></td></tr> <tr> <td class="numLine"> 42</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 43</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">boolean</span> indexOpen = <span class="keyword">false</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 43</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">boolean</span> indexOpen = <span class="keyword">false</span>;</pre></td></tr> <tr> <td class="numLine"> 44</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 45</td> <td class="nbHits"> </td> @@ -115,7 +115,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 50</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Directory getDirectory() {</pre></td></tr> -<tr> <td class="numLineCover"> 51</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  <span class="keyword">return</span> directory;</pre></td></tr> +<tr> <td class="numLineCover"> 51</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">return</span> directory;</pre></td></tr> <tr> <td class="numLine"> 52</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 53</td> <td class="nbHits"> </td> @@ -132,9 +132,9 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 59</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> open() <span class="keyword">throws</span> IOException {</pre></td></tr> -<tr> <td class="numLineCover"> 60</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  directory = <span class="keyword">this</span>.openDirectory();</pre></td></tr> -<tr> <td class="numLineCover"> 61</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  indexOpen = <span class="keyword">true</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 62</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 60</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  directory = <span class="keyword">this</span>.openDirectory();</pre></td></tr> +<tr> <td class="numLineCover"> 61</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  indexOpen = <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 62</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 63</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 64</td> <td class="nbHits"> </td> @@ -147,19 +147,19 @@ <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> close() {</pre></td></tr> <tr> <td class="numLine"> 68</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 69</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  directory.close();</pre></td></tr> +<tr> <td class="numLineCover"> 69</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  directory.close();</pre></td></tr> <tr> <td class="numLineCover"> 70</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"> 71</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String msg = <span class="string">"Unable to update database due to an IO error."</span>;</span></pre></td></tr> <tr> <td class="numLineCover"> 72</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(BaseIndex.<span class="keyword">class</span>.getName()).log(Level.SEVERE, msg);</span></pre></td></tr> <tr> <td class="numLineCover"> 73</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(BaseIndex.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="keyword">null</span>, ex);</span></pre></td></tr> <tr> <td class="numLine"> 74</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 75</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  directory = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 76</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 77</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  indexOpen = <span class="keyword">false</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 75</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  directory = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 76</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 77</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  indexOpen = <span class="keyword">false</span>;</pre></td></tr> <tr> <td class="numLine"> 78</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 79</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 79</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 80</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 81</td> <td class="nbHits"> </td> @@ -193,8 +193,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 96</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">protected</span> Directory openDirectory() <span class="keyword">throws</span> IOException {</pre></td></tr> -<tr> <td class="numLineCover"> 97</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File path = getDataDirectory();</pre></td></tr> -<tr> <td class="numLineCover"> 98</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  <span class="keyword">return</span> FSDirectory.open(path);</pre></td></tr> +<tr> <td class="numLineCover"> 97</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File path = getDataDirectory();</pre></td></tr> +<tr> <td class="numLineCover"> 98</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">return</span> FSDirectory.open(path);</pre></td></tr> <tr> <td class="numLine"> 99</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 100</td> <td class="nbHits"> </td> @@ -215,21 +215,21 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 108</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> File getDataDirectory() <span class="keyword">throws</span> IOException {</pre></td></tr> -<tr> <td class="numLineCover"> 109</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File path = Settings.getFile(Settings.KEYS.CPE_DATA_DIRECTORY);</pre></td></tr> -<tr> <td class="numLineCover"> 110</td> <td class="nbHitsUncovered"><a title="Line 110: Conditional coverage 50% (1/2)."> 12</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 110: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!path.exists()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 109</td> <td class="nbHitsCovered"> 17</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File path = Settings.getFile(Settings.KEYS.CPE_DATA_DIRECTORY);</pre></td></tr> +<tr> <td class="numLineCover"> 110</td> <td class="nbHitsUncovered"><a title="Line 110: Conditional coverage 50% (1/2)."> 17</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 110: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!path.exists()) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 111</td> <td class="nbHitsUncovered"><a title="Line 111: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 111: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (!path.mkdirs()) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 112</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> IOException(<span class="string">"Unable to create CPE Data directory"</span>);</span></pre></td></tr> <tr> <td class="numLine"> 113</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 114</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 115</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  <span class="keyword">return</span> path;</pre></td></tr> +<tr> <td class="numLineCover"> 115</td> <td class="nbHitsCovered"> 17</td> <td class="src"><pre class="src">  <span class="keyword">return</span> path;</pre></td></tr> <tr> <td class="numLine"> 116</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 117</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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.CpeIndexReader.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.CpeIndexReader.html index 53ae30bef..1ffae5f35 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.CpeIndexReader.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.CpeIndexReader.html @@ -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.data.cpe.CpeIndexReader.html">CpeIndexReader</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">60%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:60px"><span class="text">30/50</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">31%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:31px"><span class="text">5/16</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.4285714285714284;</span>2.429</td></tr> + <tr><td><a href="org.owasp.dependencycheck.data.cpe.CpeIndexReader.html">CpeIndexReader</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">60%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:60px"><span class="text">32/53</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">33%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:33px"><span class="text">6/18</span></div></div></td></tr></table></td><td class="value"><span class="hidden">2.5;</span>2.5</td></tr> </table> <div class="separator"> </div> @@ -107,7 +107,7 @@ <td class="src"><pre class="src"> <span class="comment"> * @author Jeremy Long (jeremy.long@owasp.org)</span></pre></td></tr> <tr> <td class="numLine"> 45</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 46</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> CpeIndexReader <span class="keyword">extends</span> BaseIndex {</pre></td></tr> +<tr> <td class="numLineCover"> 46</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> CpeIndexReader <span class="keyword">extends</span> BaseIndex {</pre></td></tr> <tr> <td class="numLine"> 47</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 48</td> <td class="nbHits"> </td> @@ -176,12 +176,12 @@ <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> open() <span class="keyword">throws</span> IOException {</pre></td></tr> <tr> <td class="numLine"> 80</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//TODO add spinlock (shared)</span></pre></td></tr> -<tr> <td class="numLineCover"> 81</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  <span class="keyword">super</span>.open();</pre></td></tr> -<tr> <td class="numLineCover"> 82</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  indexReader = DirectoryReader.open(getDirectory());</pre></td></tr> -<tr> <td class="numLineCover"> 83</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  indexSearcher = <span class="keyword">new</span> IndexSearcher(indexReader);</pre></td></tr> -<tr> <td class="numLineCover"> 84</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  searchingAnalyzer = createSearchingAnalyzer();</pre></td></tr> -<tr> <td class="numLineCover"> 85</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  queryParser = <span class="keyword">new</span> QueryParser(Version.LUCENE_43, Fields.DOCUMENT_KEY, searchingAnalyzer);</pre></td></tr> -<tr> <td class="numLineCover"> 86</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 81</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">super</span>.open();</pre></td></tr> +<tr> <td class="numLineCover"> 82</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  indexReader = DirectoryReader.open(getDirectory());</pre></td></tr> +<tr> <td class="numLineCover"> 83</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  indexSearcher = <span class="keyword">new</span> IndexSearcher(indexReader);</pre></td></tr> +<tr> <td class="numLineCover"> 84</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  searchingAnalyzer = createSearchingAnalyzer();</pre></td></tr> +<tr> <td class="numLineCover"> 85</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  queryParser = <span class="keyword">new</span> QueryParser(Version.LUCENE_43, Fields.DOCUMENT_KEY, searchingAnalyzer);</pre></td></tr> +<tr> <td class="numLineCover"> 86</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 87</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 88</td> <td class="nbHits"> </td> @@ -196,25 +196,25 @@ <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> close() {</pre></td></tr> <tr> <td class="numLine"> 93</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//TODO remove spinlock (shared)</span></pre></td></tr> -<tr> <td class="numLineCover"> 94</td> <td class="nbHitsUncovered"><a title="Line 94: Conditional coverage 50% (1/2)."> 10</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 94: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (searchingAnalyzer != <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 95</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  searchingAnalyzer.close();</pre></td></tr> -<tr> <td class="numLineCover"> 96</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  searchingAnalyzer = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 94</td> <td class="nbHitsUncovered"><a title="Line 94: Conditional coverage 50% (1/2)."> 15</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 94: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (searchingAnalyzer != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 95</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  searchingAnalyzer.close();</pre></td></tr> +<tr> <td class="numLineCover"> 96</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  searchingAnalyzer = <span class="keyword">null</span>;</pre></td></tr> <tr> <td class="numLine"> 97</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 98</td> <td class="nbHitsUncovered"><a title="Line 98: Conditional coverage 50% (1/2)."> 10</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 98: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (indexReader != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 98</td> <td class="nbHitsUncovered"><a title="Line 98: Conditional coverage 50% (1/2)."> 15</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 98: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (indexReader != <span class="keyword">null</span>) {</a></span></pre></td></tr> <tr> <td class="numLine"> 99</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 100</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  indexReader.close();</pre></td></tr> +<tr> <td class="numLineCover"> 100</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  indexReader.close();</pre></td></tr> <tr> <td class="numLineCover"> 101</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"> 102</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(CpeIndexReader.<span class="keyword">class</span>.getName()).log(Level.FINEST, <span class="keyword">null</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 103</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 104</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  indexReader = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 103</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 104</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  indexReader = <span class="keyword">null</span>;</pre></td></tr> <tr> <td class="numLine"> 105</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 106</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  queryParser = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 107</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  indexSearcher = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 108</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  <span class="keyword">super</span>.close();</pre></td></tr> -<tr> <td class="numLineCover"> 109</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 106</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  queryParser = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 107</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  indexSearcher = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 108</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">super</span>.close();</pre></td></tr> +<tr> <td class="numLineCover"> 109</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 110</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 111</td> <td class="nbHits"> </td> @@ -239,11 +239,11 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 121</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> TopDocs search(String searchString, <span class="keyword">int</span> maxQueryResults) <span class="keyword">throws</span> ParseException, IOException {</pre></td></tr> -<tr> <td class="numLineCover"> 122</td> <td class="nbHitsUncovered"><a title="Line 122: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 53</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 122: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">if</span> (searchString == <span class="keyword">null</span> || searchString.trim().isEmpty()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 122</td> <td class="nbHitsUncovered"><a title="Line 122: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 73</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 122: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">if</span> (searchString == <span class="keyword">null</span> || searchString.trim().isEmpty()) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 123</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> ParseException(<span class="string">"Query is null or empty"</span>);</span></pre></td></tr> <tr> <td class="numLine"> 124</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 125</td> <td class="nbHitsUncovered"><a title="Line 125: Conditional coverage 50% (1/2)."> 53</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 125: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (queryParser == <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 125</td> <td class="nbHitsUncovered"><a title="Line 125: Conditional coverage 50% (1/2)."> 73</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 125: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (queryParser == <span class="keyword">null</span>) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 126</td> <td class="nbHitsUncovered"><a title="Line 126: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 126: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (isOpen()) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 127</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">"QueryParser is null for query: '%s'. Attempting to reopen index."</span>,</span></pre></td></tr> <tr> <td class="numLine"> 128</td> <td class="nbHits"> </td> @@ -262,8 +262,8 @@ <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 139</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 140</td> <td class="nbHitsCovered"> 53</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Query query = queryParser.parse(searchString);</pre></td></tr> -<tr> <td class="numLineCover"> 141</td> <td class="nbHitsCovered"> 53</td> <td class="src"><pre class="src">  <span class="keyword">return</span> indexSearcher.search(query, maxQueryResults);</pre></td></tr> +<tr> <td class="numLineCover"> 140</td> <td class="nbHitsCovered"> 73</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Query query = queryParser.parse(searchString);</pre></td></tr> +<tr> <td class="numLineCover"> 141</td> <td class="nbHitsCovered"> 73</td> <td class="src"><pre class="src">  <span class="keyword">return</span> indexSearcher.search(query, maxQueryResults);</pre></td></tr> <tr> <td class="numLine"> 142</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 143</td> <td class="nbHits"> </td> @@ -310,7 +310,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 165</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Document getDocument(<span class="keyword">int</span> documentId) <span class="keyword">throws</span> IOException {</pre></td></tr> -<tr> <td class="numLineCover"> 166</td> <td class="nbHitsCovered"> 640</td> <td class="src"><pre class="src">  <span class="keyword">return</span> indexSearcher.doc(documentId);</pre></td></tr> +<tr> <td class="numLineCover"> 166</td> <td class="nbHitsCovered"> 741</td> <td class="src"><pre class="src">  <span class="keyword">return</span> indexSearcher.doc(documentId);</pre></td></tr> <tr> <td class="numLine"> 167</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 168</td> <td class="nbHits"> </td> @@ -329,15 +329,15 @@ <td class="src"><pre class="src">  @SuppressWarnings(<span class="string">"unchecked"</span>)</pre></td></tr> <tr> <td class="numLine"> 175</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> Analyzer createSearchingAnalyzer() {</pre></td></tr> -<tr> <td class="numLineCover"> 176</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Map fieldAnalyzers = <span class="keyword">new</span> HashMap();</pre></td></tr> -<tr> <td class="numLineCover"> 177</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  fieldAnalyzers.put(Fields.DOCUMENT_KEY, <span class="keyword">new</span> KeywordAnalyzer());</pre></td></tr> -<tr> <td class="numLineCover"> 178</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  productSearchFieldAnalyzer = <span class="keyword">new</span> SearchFieldAnalyzer(Version.LUCENE_43);</pre></td></tr> -<tr> <td class="numLineCover"> 179</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  vendorSearchFieldAnalyzer = <span class="keyword">new</span> SearchFieldAnalyzer(Version.LUCENE_43);</pre></td></tr> -<tr> <td class="numLineCover"> 180</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  fieldAnalyzers.put(Fields.PRODUCT, productSearchFieldAnalyzer);</pre></td></tr> -<tr> <td class="numLineCover"> 181</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  fieldAnalyzers.put(Fields.VENDOR, vendorSearchFieldAnalyzer);</pre></td></tr> +<tr> <td class="numLineCover"> 176</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Map fieldAnalyzers = <span class="keyword">new</span> HashMap();</pre></td></tr> +<tr> <td class="numLineCover"> 177</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  fieldAnalyzers.put(Fields.DOCUMENT_KEY, <span class="keyword">new</span> KeywordAnalyzer());</pre></td></tr> +<tr> <td class="numLineCover"> 178</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  productSearchFieldAnalyzer = <span class="keyword">new</span> SearchFieldAnalyzer(Version.LUCENE_43);</pre></td></tr> +<tr> <td class="numLineCover"> 179</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  vendorSearchFieldAnalyzer = <span class="keyword">new</span> SearchFieldAnalyzer(Version.LUCENE_43);</pre></td></tr> +<tr> <td class="numLineCover"> 180</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  fieldAnalyzers.put(Fields.PRODUCT, productSearchFieldAnalyzer);</pre></td></tr> +<tr> <td class="numLineCover"> 181</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  fieldAnalyzers.put(Fields.VENDOR, vendorSearchFieldAnalyzer);</pre></td></tr> <tr> <td class="numLine"> 182</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 183</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">new</span> PerFieldAnalyzerWrapper(<span class="keyword">new</span> FieldAnalyzer(Version.LUCENE_43), fieldAnalyzers);</pre></td></tr> +<tr> <td class="numLineCover"> 183</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">new</span> PerFieldAnalyzerWrapper(<span class="keyword">new</span> FieldAnalyzer(Version.LUCENE_43), fieldAnalyzers);</pre></td></tr> <tr> <td class="numLine"> 184</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 185</td> <td class="nbHits"> </td> @@ -360,9 +360,30 @@ <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLineCover"> 196</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> <tr> <td class="numLine"> 197</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 198</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 199</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Returns the number of CPE entries stored in the index.</span></pre></td></tr> +<tr> <td class="numLine"> 200</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 201</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @return the number of CPE entries stored in the index</span></pre></td></tr> +<tr> <td class="numLine"> 202</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 203</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">int</span> numDocs() {</pre></td></tr> +<tr> <td class="numLineCover"> 204</td> <td class="nbHitsUncovered"><a title="Line 204: Conditional coverage 50% (1/2)."> 3</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 204: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (indexReader == <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 205</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> -1;</span></pre></td></tr> +<tr> <td class="numLine"> 206</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 207</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">return</span> indexReader.numDocs();</pre></td></tr> +<tr> <td class="numLine"> 208</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 209</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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.CpeIndexWriter.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.CpeIndexWriter.html index 6f1e81f09..9c6854514 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.CpeIndexWriter.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.CpeIndexWriter.html @@ -267,6 +267,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.Fields.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.Fields.html index 54d14817f..c5b148cc1 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.Fields.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.Fields.html @@ -106,6 +106,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.IndexEntry.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.IndexEntry.html index af26e06bf..c6999a60d 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.IndexEntry.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.IndexEntry.html @@ -75,7 +75,7 @@ <td class="src"><pre class="src"> <span class="comment"> * @author Jeremy Long (jeremy.long@owasp.org)</span></pre></td></tr> <tr> <td class="numLine"> 29</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 30</td> <td class="nbHitsCovered"> 9558</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> IndexEntry <span class="keyword">implements</span> Serializable {</pre></td></tr> +<tr> <td class="numLineCover"> 30</td> <td class="nbHitsCovered"> 11893</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> IndexEntry <span class="keyword">implements</span> Serializable {</pre></td></tr> <tr> <td class="numLine"> 31</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 32</td> <td class="nbHits"> </td> @@ -153,7 +153,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 71</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> String getVendor() {</pre></td></tr> -<tr> <td class="numLineCover"> 72</td> <td class="nbHitsCovered"> 2118</td> <td class="src"><pre class="src">  <span class="keyword">return</span> vendor;</pre></td></tr> +<tr> <td class="numLineCover"> 72</td> <td class="nbHitsCovered"> 3674</td> <td class="src"><pre class="src">  <span class="keyword">return</span> vendor;</pre></td></tr> <tr> <td class="numLine"> 73</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 74</td> <td class="nbHits"> </td> @@ -170,8 +170,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 80</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> setVendor(String vendor) {</pre></td></tr> -<tr> <td class="numLineCover"> 81</td> <td class="nbHitsCovered"> 9557</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.vendor = vendor;</pre></td></tr> -<tr> <td class="numLineCover"> 82</td> <td class="nbHitsCovered"> 9557</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 81</td> <td class="nbHitsCovered"> 11892</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.vendor = vendor;</pre></td></tr> +<tr> <td class="numLineCover"> 82</td> <td class="nbHitsCovered"> 11892</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 83</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 84</td> <td class="nbHits"> </td> @@ -194,7 +194,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 93</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> String getProduct() {</pre></td></tr> -<tr> <td class="numLineCover"> 94</td> <td class="nbHitsCovered"> 2667</td> <td class="src"><pre class="src">  <span class="keyword">return</span> product;</pre></td></tr> +<tr> <td class="numLineCover"> 94</td> <td class="nbHitsCovered"> 4303</td> <td class="src"><pre class="src">  <span class="keyword">return</span> product;</pre></td></tr> <tr> <td class="numLine"> 95</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 96</td> <td class="nbHits"> </td> @@ -211,8 +211,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 102</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> setProduct(String product) {</pre></td></tr> -<tr> <td class="numLineCover"> 103</td> <td class="nbHitsCovered"> 9557</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.product = product;</pre></td></tr> -<tr> <td class="numLineCover"> 104</td> <td class="nbHitsCovered"> 9557</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 103</td> <td class="nbHitsCovered"> 11892</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.product = product;</pre></td></tr> +<tr> <td class="numLineCover"> 104</td> <td class="nbHitsCovered"> 11892</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 105</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 106</td> <td class="nbHits"> </td> @@ -252,8 +252,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 124</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> setSearchScore(<span class="keyword">float</span> searchScore) {</pre></td></tr> -<tr> <td class="numLineCover"> 125</td> <td class="nbHitsCovered"> 640</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.searchScore = searchScore;</pre></td></tr> -<tr> <td class="numLineCover"> 126</td> <td class="nbHitsCovered"> 640</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 125</td> <td class="nbHitsCovered"> 741</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.searchScore = searchScore;</pre></td></tr> +<tr> <td class="numLineCover"> 126</td> <td class="nbHitsCovered"> 741</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 127</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 128</td> <td class="nbHits"> </td> @@ -318,21 +318,21 @@ <td class="src"><pre class="src">  @Override</pre></td></tr> <tr> <td class="numLine"> 163</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> equals(Object obj) {</pre></td></tr> -<tr> <td class="numLineCover"> 164</td> <td class="nbHitsUncovered"><a title="Line 164: Conditional coverage 50% (1/2)."> 5995</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 164: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (obj == <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 164</td> <td class="nbHitsUncovered"><a title="Line 164: Conditional coverage 50% (1/2)."> 6273</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 164: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (obj == <span class="keyword">null</span>) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 165</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> <tr> <td class="numLine"> 166</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 167</td> <td class="nbHitsUncovered"><a title="Line 167: Conditional coverage 50% (1/2)."> 5995</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 167: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (getClass() != obj.getClass()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 167</td> <td class="nbHitsUncovered"><a title="Line 167: Conditional coverage 50% (1/2)."> 6273</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 167: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (getClass() != obj.getClass()) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 168</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> <tr> <td class="numLine"> 169</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 170</td> <td class="nbHitsCovered"> 5995</td> <td class="src"><pre class="src">  <span class="keyword">final</span> IndexEntry other = (IndexEntry) obj;</pre></td></tr> -<tr> <td class="numLineCover"> 171</td> <td class="nbHitsUncovered"><a title="Line 171: Conditional coverage 50% (3/6) [each condition: 50%, 0%, 100%]."> 5995</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 171: Conditional coverage 50% (3/6) [each condition: 50%, 0%, 100%]."> <span class="keyword">if</span> ((<span class="keyword">this</span>.vendor == <span class="keyword">null</span>) ? (other.vendor != <span class="keyword">null</span>) : !<span class="keyword">this</span>.vendor.equals(other.vendor)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 172</td> <td class="nbHitsCovered"> 4772</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 170</td> <td class="nbHitsCovered"> 6273</td> <td class="src"><pre class="src">  <span class="keyword">final</span> IndexEntry other = (IndexEntry) obj;</pre></td></tr> +<tr> <td class="numLineCover"> 171</td> <td class="nbHitsUncovered"><a title="Line 171: Conditional coverage 50% (3/6) [each condition: 50%, 0%, 100%]."> 6273</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 171: Conditional coverage 50% (3/6) [each condition: 50%, 0%, 100%]."> <span class="keyword">if</span> ((<span class="keyword">this</span>.vendor == <span class="keyword">null</span>) ? (other.vendor != <span class="keyword">null</span>) : !<span class="keyword">this</span>.vendor.equals(other.vendor)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 172</td> <td class="nbHitsCovered"> 5038</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> <tr> <td class="numLine"> 173</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 174</td> <td class="nbHitsUncovered"><a title="Line 174: Conditional coverage 33% (2/6) [each condition: 50%, 0%, 50%]."> 1223</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 174: Conditional coverage 33% (2/6) [each condition: 50%, 0%, 50%]."> <span class="keyword">if</span> ((<span class="keyword">this</span>.product == <span class="keyword">null</span>) ? (other.product != <span class="keyword">null</span>) : !<span class="keyword">this</span>.product.equals(other.product)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 175</td> <td class="nbHitsCovered"> 1223</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 174</td> <td class="nbHitsUncovered"><a title="Line 174: Conditional coverage 33% (2/6) [each condition: 50%, 0%, 50%]."> 1235</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 174: Conditional coverage 33% (2/6) [each condition: 50%, 0%, 50%]."> <span class="keyword">if</span> ((<span class="keyword">this</span>.product == <span class="keyword">null</span>) ? (other.product != <span class="keyword">null</span>) : !<span class="keyword">this</span>.product.equals(other.product)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 175</td> <td class="nbHitsCovered"> 1235</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> <tr> <td class="numLine"> 176</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLineCover"> 177</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">true</span>;</span></pre></td></tr> @@ -361,6 +361,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cwe.CweDB.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cwe.CweDB.html index 8935e3049..9a011b064 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cwe.CweDB.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cwe.CweDB.html @@ -159,8 +159,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 81</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> String getCweName(String cweId) {</pre></td></tr> -<tr> <td class="numLineCover"> 82</td> <td class="nbHitsUncovered"><a title="Line 82: Conditional coverage 50% (1/2)."> 48</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 82: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (cweId != <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 83</td> <td class="nbHitsCovered"> 48</td> <td class="src"><pre class="src">  <span class="keyword">return</span> CWE.get(cweId);</pre></td></tr> +<tr> <td class="numLineCover"> 82</td> <td class="nbHitsUncovered"><a title="Line 82: Conditional coverage 50% (1/2)."> 49</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 82: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (cweId != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 83</td> <td class="nbHitsCovered"> 49</td> <td class="src"><pre class="src">  <span class="keyword">return</span> CWE.get(cweId);</pre></td></tr> <tr> <td class="numLine"> 84</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLineCover"> 85</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">null</span>;</span></pre></td></tr> @@ -170,6 +170,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cwe.CweHandler.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cwe.CweHandler.html index d0d96a03a..98ad854af 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cwe.CweHandler.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cwe.CweHandler.html @@ -123,6 +123,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter.html index 3091ed2a1..62b88cc44 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter.html @@ -89,7 +89,7 @@ <td class="src"><pre class="src"> <span class="comment"> * The char term attribute.</span></pre></td></tr> <tr> <td class="numLine"> 36</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 37</td> <td class="nbHitsCovered"> 26</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">final</span> CharTermAttribute termAtt = addAttribute(CharTermAttribute.<span class="keyword">class</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 37</td> <td class="nbHitsCovered"> 30</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">final</span> CharTermAttribute termAtt = addAttribute(CharTermAttribute.<span class="keyword">class</span>);</pre></td></tr> <tr> <td class="numLine"> 38</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 39</td> <td class="nbHits"> </td> @@ -104,7 +104,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 44</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">protected</span> CharTermAttribute getTermAtt() {</pre></td></tr> -<tr> <td class="numLineCover"> 45</td> <td class="nbHitsCovered"> 32557</td> <td class="src"><pre class="src">  <span class="keyword">return</span> termAtt;</pre></td></tr> +<tr> <td class="numLineCover"> 45</td> <td class="nbHitsCovered"> 33027</td> <td class="src"><pre class="src">  <span class="keyword">return</span> termAtt;</pre></td></tr> <tr> <td class="numLine"> 46</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 47</td> <td class="nbHits"> </td> @@ -129,7 +129,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 57</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">protected</span> LinkedList<String> getTokens() {</pre></td></tr> -<tr> <td class="numLineCover"> 58</td> <td class="nbHitsCovered"> 32557</td> <td class="src"><pre class="src">  <span class="keyword">return</span> tokens;</pre></td></tr> +<tr> <td class="numLineCover"> 58</td> <td class="nbHitsCovered"> 33027</td> <td class="src"><pre class="src">  <span class="keyword">return</span> tokens;</pre></td></tr> <tr> <td class="numLine"> 59</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 60</td> <td class="nbHits"> </td> @@ -146,9 +146,9 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 66</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> AbstractTokenizingFilter(TokenStream stream) {</pre></td></tr> -<tr> <td class="numLineCover"> 67</td> <td class="nbHitsCovered"> 26</td> <td class="src"><pre class="src">  <span class="keyword">super</span>(stream);</pre></td></tr> -<tr> <td class="numLineCover"> 68</td> <td class="nbHitsCovered"> 26</td> <td class="src"><pre class="src">  tokens = <span class="keyword">new</span> LinkedList<String>();</pre></td></tr> -<tr> <td class="numLineCover"> 69</td> <td class="nbHitsCovered"> 26</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 67</td> <td class="nbHitsCovered"> 30</td> <td class="src"><pre class="src">  <span class="keyword">super</span>(stream);</pre></td></tr> +<tr> <td class="numLineCover"> 68</td> <td class="nbHitsCovered"> 30</td> <td class="src"><pre class="src">  tokens = <span class="keyword">new</span> LinkedList<String>();</pre></td></tr> +<tr> <td class="numLineCover"> 69</td> <td class="nbHitsCovered"> 30</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 70</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 71</td> <td class="nbHits"> </td> @@ -163,20 +163,20 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 76</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">protected</span> <span class="keyword">boolean</span> addTerm() {</pre></td></tr> -<tr> <td class="numLineCover"> 77</td> <td class="nbHitsCovered"><a title="Line 77: Conditional coverage 100% (2/2)."> 32445</a></td> <td class="src"><pre class="src"> <a title="Line 77: Conditional coverage 100% (2/2)."> <span class="keyword">final</span> <span class="keyword">boolean</span> termAdded = tokens.size() > 0;</a></pre></td></tr> -<tr> <td class="numLineCover"> 78</td> <td class="nbHitsCovered"><a title="Line 78: Conditional coverage 100% (2/2)."> 32445</a></td> <td class="src"><pre class="src"> <a title="Line 78: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (termAdded) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 79</td> <td class="nbHitsCovered"> 19310</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String term = tokens.pop();</pre></td></tr> -<tr> <td class="numLineCover"> 80</td> <td class="nbHitsCovered"> 19310</td> <td class="src"><pre class="src">  clearAttributes();</pre></td></tr> -<tr> <td class="numLineCover"> 81</td> <td class="nbHitsCovered"> 19310</td> <td class="src"><pre class="src">  termAtt.append(term);</pre></td></tr> +<tr> <td class="numLineCover"> 77</td> <td class="nbHitsCovered"><a title="Line 77: Conditional coverage 100% (2/2)."> 32955</a></td> <td class="src"><pre class="src"> <a title="Line 77: Conditional coverage 100% (2/2)."> <span class="keyword">final</span> <span class="keyword">boolean</span> termAdded = tokens.size() > 0;</a></pre></td></tr> +<tr> <td class="numLineCover"> 78</td> <td class="nbHitsCovered"><a title="Line 78: Conditional coverage 100% (2/2)."> 32955</a></td> <td class="src"><pre class="src"> <a title="Line 78: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (termAdded) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 79</td> <td class="nbHitsCovered"> 19516</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String term = tokens.pop();</pre></td></tr> +<tr> <td class="numLineCover"> 80</td> <td class="nbHitsCovered"> 19516</td> <td class="src"><pre class="src">  clearAttributes();</pre></td></tr> +<tr> <td class="numLineCover"> 81</td> <td class="nbHitsCovered"> 19516</td> <td class="src"><pre class="src">  termAtt.append(term);</pre></td></tr> <tr> <td class="numLine"> 82</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 83</td> <td class="nbHitsCovered"> 32445</td> <td class="src"><pre class="src">  <span class="keyword">return</span> termAdded;</pre></td></tr> +<tr> <td class="numLineCover"> 83</td> <td class="nbHitsCovered"> 32955</td> <td class="src"><pre class="src">  <span class="keyword">return</span> termAdded;</pre></td></tr> <tr> <td class="numLine"> 84</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 85</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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer.html index 9af9a1f38..96916211a 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer.html @@ -95,8 +95,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 39</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> AlphaNumericTokenizer(Version matchVersion, Reader in) {</pre></td></tr> -<tr> <td class="numLineCover"> 40</td> <td class="nbHitsCovered"> 21</td> <td class="src"><pre class="src">  <span class="keyword">super</span>(matchVersion, in);</pre></td></tr> -<tr> <td class="numLineCover"> 41</td> <td class="nbHitsCovered"> 21</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 40</td> <td class="nbHitsCovered"> 25</td> <td class="src"><pre class="src">  <span class="keyword">super</span>(matchVersion, in);</pre></td></tr> +<tr> <td class="numLineCover"> 41</td> <td class="nbHitsCovered"> 25</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 42</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 43</td> <td class="nbHits"> </td> @@ -135,13 +135,13 @@ <td class="src"><pre class="src">  @Override</pre></td></tr> <tr> <td class="numLine"> 61</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">protected</span> <span class="keyword">boolean</span> isTokenChar(<span class="keyword">int</span> c) {</pre></td></tr> -<tr> <td class="numLineCover"> 62</td> <td class="nbHitsCovered"><a title="Line 62: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 9457</a></td> <td class="src"><pre class="src"> <a title="Line 62: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">return</span> Character.isLetter(c) || Character.isDigit(c);</a></pre></td></tr> +<tr> <td class="numLineCover"> 62</td> <td class="nbHitsCovered"><a title="Line 62: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 10073</a></td> <td class="src"><pre class="src"> <a title="Line 62: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">return</span> Character.isLetter(c) || Character.isDigit(c);</a></pre></td></tr> <tr> <td class="numLine"> 63</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 64</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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.DependencySimilarity.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.DependencySimilarity.html index 64412e771..b5e688b60 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.DependencySimilarity.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.DependencySimilarity.html @@ -117,6 +117,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.FieldAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.FieldAnalyzer.html index bc9e01175..dd418bb7e 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.FieldAnalyzer.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.FieldAnalyzer.html @@ -115,9 +115,9 @@ <td class="src"><pre class="src"> <span class="comment"> * @param version the Lucene version</span></pre></td></tr> <tr> <td class="numLine"> 49</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 50</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  <span class="keyword">public</span> FieldAnalyzer(Version version) {</pre></td></tr> -<tr> <td class="numLineCover"> 51</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.version = version;</pre></td></tr> -<tr> <td class="numLineCover"> 52</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 50</td> <td class="nbHitsCovered"> 17</td> <td class="src"><pre class="src">  <span class="keyword">public</span> FieldAnalyzer(Version version) {</pre></td></tr> +<tr> <td class="numLineCover"> 51</td> <td class="nbHitsCovered"> 17</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.version = version;</pre></td></tr> +<tr> <td class="numLineCover"> 52</td> <td class="nbHitsCovered"> 17</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 53</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 54</td> <td class="nbHits"> </td> @@ -172,6 +172,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.LuceneUtils.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.LuceneUtils.html index f3ba976b4..b14fd1124 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.LuceneUtils.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.LuceneUtils.html @@ -111,15 +111,15 @@ <td class="src"><pre class="src">  <span class="keyword">final</span> CharSequence text) {</pre></td></tr> <tr> <td class="numLine"> 48</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 49</td> <td class="nbHitsUncovered"><a title="Line 49: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 1062</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 49: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (text == <span class="keyword">null</span> || buf == <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 49</td> <td class="nbHitsUncovered"><a title="Line 49: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 1158</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 49: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (text == <span class="keyword">null</span> || buf == <span class="keyword">null</span>) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 50</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">return</span>;</pre></td></tr> <tr> <td class="numLine"> 51</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 52</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 53</td> <td class="nbHitsCovered"><a title="Line 53: Conditional coverage 100% (2/2)."> 10776</a></td> <td class="src"><pre class="src"> <a title="Line 53: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = 0; i < text.length(); i++) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 54</td> <td class="nbHitsCovered"> 9715</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">char</span> c = text.charAt(i);</pre></td></tr> -<tr> <td class="numLineCover"> 55</td> <td class="nbHitsUncovered"><a title="Line 55: Conditional coverage 10% (2/19)."> 9715</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 55: Conditional coverage 10% (2/19)."> <span class="keyword">switch</span> (c) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 53</td> <td class="nbHitsCovered"><a title="Line 53: Conditional coverage 100% (2/2)."> 11488</a></td> <td class="src"><pre class="src"> <a title="Line 53: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = 0; i < text.length(); i++) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 54</td> <td class="nbHitsCovered"> 10331</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">char</span> c = text.charAt(i);</pre></td></tr> +<tr> <td class="numLineCover"> 55</td> <td class="nbHitsUncovered"><a title="Line 55: Conditional coverage 10% (2/19)."> 10331</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 55: Conditional coverage 10% (2/19)."> <span class="keyword">switch</span> (c) {</a></span></pre></td></tr> <tr> <td class="numLine"> 56</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">case</span> <span class="string">'+'</span>:</pre></td></tr> <tr> <td class="numLine"> 57</td> <td class="nbHits"> </td> @@ -159,14 +159,14 @@ <tr> <td class="numLineCover"> 74</td> <td class="nbHitsCovered"> 226</td> <td class="src"><pre class="src">  buf.append(<span class="string">'\\'</span>);</pre></td></tr> <tr> <td class="numLine"> 75</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">default</span>:</pre></td></tr> -<tr> <td class="numLineCover"> 76</td> <td class="nbHitsCovered"> 9715</td> <td class="src"><pre class="src">  buf.append(c);</pre></td></tr> +<tr> <td class="numLineCover"> 76</td> <td class="nbHitsCovered"> 10331</td> <td class="src"><pre class="src">  buf.append(c);</pre></td></tr> <tr> <td class="numLine"> 77</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">break</span>;</pre></td></tr> <tr> <td class="numLine"> 78</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 79</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 80</td> <td class="nbHitsCovered"> 1061</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 80</td> <td class="nbHitsCovered"> 1157</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 81</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 82</td> <td class="nbHits"> </td> @@ -187,27 +187,27 @@ <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> String escapeLuceneQuery(<span class="keyword">final</span> CharSequence text) {</pre></td></tr> <tr> <td class="numLine"> 90</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 91</td> <td class="nbHitsCovered"><a title="Line 91: Conditional coverage 100% (2/2)."> 1045</a></td> <td class="src"><pre class="src"> <a title="Line 91: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (text == <span class="keyword">null</span>) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 91</td> <td class="nbHitsCovered"><a title="Line 91: Conditional coverage 100% (2/2)."> 1117</a></td> <td class="src"><pre class="src"> <a title="Line 91: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (text == <span class="keyword">null</span>) {</a></pre></td></tr> <tr> <td class="numLineCover"> 92</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">null</span>;</pre></td></tr> <tr> <td class="numLine"> 93</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 94</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 95</td> <td class="nbHitsCovered"> 1044</td> <td class="src"><pre class="src">  <span class="keyword">int</span> size = text.length();</pre></td></tr> -<tr> <td class="numLineCover"> 96</td> <td class="nbHitsCovered"> 1044</td> <td class="src"><pre class="src">  size = size >> 1;</pre></td></tr> -<tr> <td class="numLineCover"> 97</td> <td class="nbHitsCovered"> 1044</td> <td class="src"><pre class="src">  <span class="keyword">final</span> StringBuilder buf = <span class="keyword">new</span> StringBuilder(size);</pre></td></tr> +<tr> <td class="numLineCover"> 95</td> <td class="nbHitsCovered"> 1116</td> <td class="src"><pre class="src">  <span class="keyword">int</span> size = text.length();</pre></td></tr> +<tr> <td class="numLineCover"> 96</td> <td class="nbHitsCovered"> 1116</td> <td class="src"><pre class="src">  size = size >> 1;</pre></td></tr> +<tr> <td class="numLineCover"> 97</td> <td class="nbHitsCovered"> 1116</td> <td class="src"><pre class="src">  <span class="keyword">final</span> StringBuilder buf = <span class="keyword">new</span> StringBuilder(size);</pre></td></tr> <tr> <td class="numLine"> 98</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 99</td> <td class="nbHitsCovered"> 1044</td> <td class="src"><pre class="src">  appendEscapedLuceneQuery(buf, text);</pre></td></tr> +<tr> <td class="numLineCover"> 99</td> <td class="nbHitsCovered"> 1116</td> <td class="src"><pre class="src">  appendEscapedLuceneQuery(buf, text);</pre></td></tr> <tr> <td class="numLine"> 100</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 101</td> <td class="nbHitsCovered"> 1044</td> <td class="src"><pre class="src">  <span class="keyword">return</span> buf.toString();</pre></td></tr> +<tr> <td class="numLineCover"> 101</td> <td class="nbHitsCovered"> 1116</td> <td class="src"><pre class="src">  <span class="keyword">return</span> buf.toString();</pre></td></tr> <tr> <td class="numLine"> 102</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 103</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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer.html index 0e1930374..74622507f 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer.html @@ -121,9 +121,9 @@ <td class="src"><pre class="src"> <span class="comment"> * @param version the Lucene version</span></pre></td></tr> <tr> <td class="numLine"> 52</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 53</td> <td class="nbHitsCovered"> 22</td> <td class="src"><pre class="src">  <span class="keyword">public</span> SearchFieldAnalyzer(Version version) {</pre></td></tr> -<tr> <td class="numLineCover"> 54</td> <td class="nbHitsCovered"> 22</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.version = version;</pre></td></tr> -<tr> <td class="numLineCover"> 55</td> <td class="nbHitsCovered"> 22</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 53</td> <td class="nbHitsCovered"> 32</td> <td class="src"><pre class="src">  <span class="keyword">public</span> SearchFieldAnalyzer(Version version) {</pre></td></tr> +<tr> <td class="numLineCover"> 54</td> <td class="nbHitsCovered"> 32</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.version = version;</pre></td></tr> +<tr> <td class="numLineCover"> 55</td> <td class="nbHitsCovered"> 32</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 56</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 57</td> <td class="nbHits"> </td> @@ -144,13 +144,13 @@ <td class="src"><pre class="src">  @Override</pre></td></tr> <tr> <td class="numLine"> 65</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">protected</span> TokenStreamComponents createComponents(String fieldName, Reader reader) {</pre></td></tr> -<tr> <td class="numLineCover"> 66</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Tokenizer source = <span class="keyword">new</span> AlphaNumericTokenizer(version, reader);</pre></td></tr> +<tr> <td class="numLineCover"> 66</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Tokenizer source = <span class="keyword">new</span> AlphaNumericTokenizer(version, reader);</pre></td></tr> <tr> <td class="numLine"> 67</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 68</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src">  TokenStream stream = source;</pre></td></tr> +<tr> <td class="numLineCover"> 68</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  TokenStream stream = source;</pre></td></tr> <tr> <td class="numLine"> 69</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 70</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src">  stream = <span class="keyword">new</span> WordDelimiterFilter(stream,</pre></td></tr> +<tr> <td class="numLineCover"> 70</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  stream = <span class="keyword">new</span> WordDelimiterFilter(stream,</pre></td></tr> <tr> <td class="numLine"> 71</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  WordDelimiterFilter.GENERATE_WORD_PARTS</pre></td></tr> <tr> <td class="numLine"> 72</td> <td class="nbHits"> </td> @@ -165,14 +165,14 @@ <td class="src"><pre class="src">  | WordDelimiterFilter.STEM_ENGLISH_POSSESSIVE, <span class="keyword">null</span>);</pre></td></tr> <tr> <td class="numLine"> 77</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 78</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src">  stream = <span class="keyword">new</span> LowerCaseFilter(version, stream);</pre></td></tr> -<tr> <td class="numLineCover"> 79</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src">  stream = <span class="keyword">new</span> UrlTokenizingFilter(stream);</pre></td></tr> -<tr> <td class="numLineCover"> 80</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src">  concatenatingFilter = <span class="keyword">new</span> TokenPairConcatenatingFilter(stream);</pre></td></tr> -<tr> <td class="numLineCover"> 81</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src">  stream = concatenatingFilter;</pre></td></tr> -<tr> <td class="numLineCover"> 82</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src">  stream = <span class="keyword">new</span> StopFilter(version, stream, StopAnalyzer.ENGLISH_STOP_WORDS_SET);</pre></td></tr> +<tr> <td class="numLineCover"> 78</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  stream = <span class="keyword">new</span> LowerCaseFilter(version, stream);</pre></td></tr> +<tr> <td class="numLineCover"> 79</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  stream = <span class="keyword">new</span> UrlTokenizingFilter(stream);</pre></td></tr> +<tr> <td class="numLineCover"> 80</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  concatenatingFilter = <span class="keyword">new</span> TokenPairConcatenatingFilter(stream);</pre></td></tr> +<tr> <td class="numLineCover"> 81</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  stream = concatenatingFilter;</pre></td></tr> +<tr> <td class="numLineCover"> 82</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  stream = <span class="keyword">new</span> StopFilter(version, stream, StopAnalyzer.ENGLISH_STOP_WORDS_SET);</pre></td></tr> <tr> <td class="numLine"> 83</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 84</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">new</span> TokenStreamComponents(source, stream);</pre></td></tr> +<tr> <td class="numLineCover"> 84</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">new</span> TokenStreamComponents(source, stream);</pre></td></tr> <tr> <td class="numLine"> 85</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 86</td> <td class="nbHits"> </td> @@ -200,6 +200,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer.html index 7c0e9806b..b762be1dd 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer.html @@ -159,6 +159,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter.html index edf547352..f4ecace92 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter.html @@ -95,7 +95,7 @@ <td class="src"><pre class="src"> <span class="comment"> * The char term attribute.</span></pre></td></tr> <tr> <td class="numLine"> 39</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 40</td> <td class="nbHitsCovered"> 22</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">final</span> CharTermAttribute termAtt = addAttribute(CharTermAttribute.<span class="keyword">class</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 40</td> <td class="nbHitsCovered"> 26</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">final</span> CharTermAttribute termAtt = addAttribute(CharTermAttribute.<span class="keyword">class</span>);</pre></td></tr> <tr> <td class="numLine"> 41</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 42</td> <td class="nbHits"> </td> @@ -160,9 +160,9 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 73</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> TokenPairConcatenatingFilter(TokenStream stream) {</pre></td></tr> -<tr> <td class="numLineCover"> 74</td> <td class="nbHitsCovered"> 22</td> <td class="src"><pre class="src">  <span class="keyword">super</span>(stream);</pre></td></tr> -<tr> <td class="numLineCover"> 75</td> <td class="nbHitsCovered"> 22</td> <td class="src"><pre class="src">  words = <span class="keyword">new</span> LinkedList<String>();</pre></td></tr> -<tr> <td class="numLineCover"> 76</td> <td class="nbHitsCovered"> 22</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 74</td> <td class="nbHitsCovered"> 26</td> <td class="src"><pre class="src">  <span class="keyword">super</span>(stream);</pre></td></tr> +<tr> <td class="numLineCover"> 75</td> <td class="nbHitsCovered"> 26</td> <td class="src"><pre class="src">  words = <span class="keyword">new</span> LinkedList<String>();</pre></td></tr> +<tr> <td class="numLineCover"> 76</td> <td class="nbHitsCovered"> 26</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 77</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 78</td> <td class="nbHits"> </td> @@ -189,35 +189,35 @@ <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 89</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//collect all the terms into the words collection</span></pre></td></tr> -<tr> <td class="numLineCover"> 90</td> <td class="nbHitsCovered"><a title="Line 90: Conditional coverage 100% (2/2)."> 7168</a></td> <td class="src"><pre class="src"> <a title="Line 90: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (input.incrementToken()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 91</td> <td class="nbHitsCovered"> 2024</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String word = <span class="keyword">new</span> String(termAtt.buffer(), 0, termAtt.length());</pre></td></tr> -<tr> <td class="numLineCover"> 92</td> <td class="nbHitsCovered"> 2024</td> <td class="src"><pre class="src">  words.add(word);</pre></td></tr> -<tr> <td class="numLineCover"> 93</td> <td class="nbHitsCovered"> 2024</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 90</td> <td class="nbHitsCovered"><a title="Line 90: Conditional coverage 100% (2/2)."> 7578</a></td> <td class="src"><pre class="src"> <a title="Line 90: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (input.incrementToken()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 91</td> <td class="nbHitsCovered"> 2130</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String word = <span class="keyword">new</span> String(termAtt.buffer(), 0, termAtt.length());</pre></td></tr> +<tr> <td class="numLineCover"> 92</td> <td class="nbHitsCovered"> 2130</td> <td class="src"><pre class="src">  words.add(word);</pre></td></tr> +<tr> <td class="numLineCover"> 93</td> <td class="nbHitsCovered"> 2130</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 94</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 95</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//if we have a previousTerm - write it out as its own token concatenated</span></pre></td></tr> <tr> <td class="numLine"> 96</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">// with the current word (if one is available).</span></pre></td></tr> -<tr> <td class="numLineCover"> 97</td> <td class="nbHitsCovered"><a title="Line 97: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 5144</a></td> <td class="src"><pre class="src"> <a title="Line 97: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (previousWord != <span class="keyword">null</span> && words.size() > 0) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 98</td> <td class="nbHitsCovered"> 2000</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String word = words.getFirst();</pre></td></tr> -<tr> <td class="numLineCover"> 99</td> <td class="nbHitsCovered"> 2000</td> <td class="src"><pre class="src">  clearAttributes();</pre></td></tr> -<tr> <td class="numLineCover"> 100</td> <td class="nbHitsCovered"> 2000</td> <td class="src"><pre class="src">  termAtt.append(previousWord).append(word);</pre></td></tr> -<tr> <td class="numLineCover"> 101</td> <td class="nbHitsCovered"> 2000</td> <td class="src"><pre class="src">  previousWord = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 102</td> <td class="nbHitsCovered"> 2000</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 97</td> <td class="nbHitsCovered"><a title="Line 97: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 5448</a></td> <td class="src"><pre class="src"> <a title="Line 97: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (previousWord != <span class="keyword">null</span> && words.size() > 0) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 98</td> <td class="nbHitsCovered"> 2102</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String word = words.getFirst();</pre></td></tr> +<tr> <td class="numLineCover"> 99</td> <td class="nbHitsCovered"> 2102</td> <td class="src"><pre class="src">  clearAttributes();</pre></td></tr> +<tr> <td class="numLineCover"> 100</td> <td class="nbHitsCovered"> 2102</td> <td class="src"><pre class="src">  termAtt.append(previousWord).append(word);</pre></td></tr> +<tr> <td class="numLineCover"> 101</td> <td class="nbHitsCovered"> 2102</td> <td class="src"><pre class="src">  previousWord = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 102</td> <td class="nbHitsCovered"> 2102</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> <tr> <td class="numLine"> 103</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 104</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//if we have words, write it out as a single token</span></pre></td></tr> -<tr> <td class="numLineCover"> 105</td> <td class="nbHitsCovered"><a title="Line 105: Conditional coverage 100% (2/2)."> 3144</a></td> <td class="src"><pre class="src"> <a title="Line 105: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (words.size() > 0) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 106</td> <td class="nbHitsCovered"> 2024</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String word = words.removeFirst();</pre></td></tr> -<tr> <td class="numLineCover"> 107</td> <td class="nbHitsCovered"> 2024</td> <td class="src"><pre class="src">  clearAttributes();</pre></td></tr> -<tr> <td class="numLineCover"> 108</td> <td class="nbHitsCovered"> 2024</td> <td class="src"><pre class="src">  termAtt.append(word);</pre></td></tr> -<tr> <td class="numLineCover"> 109</td> <td class="nbHitsCovered"> 2024</td> <td class="src"><pre class="src">  previousWord = word;</pre></td></tr> -<tr> <td class="numLineCover"> 110</td> <td class="nbHitsCovered"> 2024</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 105</td> <td class="nbHitsCovered"><a title="Line 105: Conditional coverage 100% (2/2)."> 3346</a></td> <td class="src"><pre class="src"> <a title="Line 105: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (words.size() > 0) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 106</td> <td class="nbHitsCovered"> 2130</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String word = words.removeFirst();</pre></td></tr> +<tr> <td class="numLineCover"> 107</td> <td class="nbHitsCovered"> 2130</td> <td class="src"><pre class="src">  clearAttributes();</pre></td></tr> +<tr> <td class="numLineCover"> 108</td> <td class="nbHitsCovered"> 2130</td> <td class="src"><pre class="src">  termAtt.append(word);</pre></td></tr> +<tr> <td class="numLineCover"> 109</td> <td class="nbHitsCovered"> 2130</td> <td class="src"><pre class="src">  previousWord = word;</pre></td></tr> +<tr> <td class="numLineCover"> 110</td> <td class="nbHitsCovered"> 2130</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> <tr> <td class="numLine"> 111</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 112</td> <td class="nbHitsCovered"> 1120</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 112</td> <td class="nbHitsCovered"> 1216</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> <tr> <td class="numLine"> 113</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 114</td> <td class="nbHits"> </td> @@ -243,6 +243,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.UrlTokenizingFilter.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.UrlTokenizingFilter.html index ad1f0462e..e82cb5e12 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.UrlTokenizingFilter.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.UrlTokenizingFilter.html @@ -109,8 +109,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 46</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> UrlTokenizingFilter(TokenStream stream) {</pre></td></tr> -<tr> <td class="numLineCover"> 47</td> <td class="nbHitsCovered"> 26</td> <td class="src"><pre class="src">  <span class="keyword">super</span>(stream);</pre></td></tr> -<tr> <td class="numLineCover"> 48</td> <td class="nbHitsCovered"> 26</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 47</td> <td class="nbHitsCovered"> 30</td> <td class="src"><pre class="src">  <span class="keyword">super</span>(stream);</pre></td></tr> +<tr> <td class="numLineCover"> 48</td> <td class="nbHitsCovered"> 30</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 49</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 50</td> <td class="nbHits"> </td> @@ -133,11 +133,11 @@ <td class="src"><pre class="src">  @Override</pre></td></tr> <tr> <td class="numLine"> 59</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> incrementToken() <span class="keyword">throws</span> IOException {</pre></td></tr> -<tr> <td class="numLineCover"> 60</td> <td class="nbHitsCovered"> 32557</td> <td class="src"><pre class="src">  <span class="keyword">final</span> LinkedList<String> tokens = getTokens();</pre></td></tr> -<tr> <td class="numLineCover"> 61</td> <td class="nbHitsCovered"> 32557</td> <td class="src"><pre class="src">  <span class="keyword">final</span> CharTermAttribute termAtt = getTermAtt();</pre></td></tr> -<tr> <td class="numLineCover"> 62</td> <td class="nbHitsCovered"><a title="Line 62: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 32557</a></td> <td class="src"><pre class="src"> <a title="Line 62: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (tokens.size() == 0 && input.incrementToken()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 63</td> <td class="nbHitsCovered"> 19309</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String text = <span class="keyword">new</span> String(termAtt.buffer(), 0, termAtt.length());</pre></td></tr> -<tr> <td class="numLineCover"> 64</td> <td class="nbHitsCovered"><a title="Line 64: Conditional coverage 100% (2/2)."> 19309</a></td> <td class="src"><pre class="src"> <a title="Line 64: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (UrlStringUtils.containsUrl(text)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 60</td> <td class="nbHitsCovered"> 33027</td> <td class="src"><pre class="src">  <span class="keyword">final</span> LinkedList<String> tokens = getTokens();</pre></td></tr> +<tr> <td class="numLineCover"> 61</td> <td class="nbHitsCovered"> 33027</td> <td class="src"><pre class="src">  <span class="keyword">final</span> CharTermAttribute termAtt = getTermAtt();</pre></td></tr> +<tr> <td class="numLineCover"> 62</td> <td class="nbHitsCovered"><a title="Line 62: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 33027</a></td> <td class="src"><pre class="src"> <a title="Line 62: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (tokens.size() == 0 && input.incrementToken()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 63</td> <td class="nbHitsCovered"> 19515</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String text = <span class="keyword">new</span> String(termAtt.buffer(), 0, termAtt.length());</pre></td></tr> +<tr> <td class="numLineCover"> 64</td> <td class="nbHitsCovered"><a title="Line 64: Conditional coverage 100% (2/2)."> 19515</a></td> <td class="src"><pre class="src"> <a title="Line 64: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (UrlStringUtils.containsUrl(text)) {</a></pre></td></tr> <tr> <td class="numLineCover"> 65</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String[] parts = text.split(<span class="string">"\\s"</span>);</pre></td></tr> <tr> <td class="numLineCover"> 66</td> <td class="nbHitsCovered"><a title="Line 66: Conditional coverage 100% (2/2)."> 4</a></td> <td class="src"><pre class="src"> <a title="Line 66: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (String part : parts) {</a></pre></td></tr> <tr> <td class="numLineCover"> 67</td> <td class="nbHitsUncovered"><a title="Line 67: Conditional coverage 50% (1/2)."> 2</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 67: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (UrlStringUtils.isUrl(part)) {</a></span></pre></td></tr> @@ -157,18 +157,18 @@ <tr> <td class="numLine"> 78</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLineCover"> 79</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 80</td> <td class="nbHitsCovered"> 19307</td> <td class="src"><pre class="src">  tokens.add(text);</pre></td></tr> +<tr> <td class="numLineCover"> 80</td> <td class="nbHitsCovered"> 19513</td> <td class="src"><pre class="src">  tokens.add(text);</pre></td></tr> <tr> <td class="numLine"> 81</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 82</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 83</td> <td class="nbHitsCovered"> 32445</td> <td class="src"><pre class="src">  <span class="keyword">return</span> addTerm();</pre></td></tr> +<tr> <td class="numLineCover"> 83</td> <td class="nbHitsCovered"> 32955</td> <td class="src"><pre class="src">  <span class="keyword">return</span> addTerm();</pre></td></tr> <tr> <td class="numLine"> 84</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 85</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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.VersionAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.VersionAnalyzer.html index 39fe3e95e..eba45afa4 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.VersionAnalyzer.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.VersionAnalyzer.html @@ -156,6 +156,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter.html index 19cd717b3..db76e4f00 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter.html @@ -197,6 +197,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.CorruptDatabaseException.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.CorruptDatabaseException.html index 871214eed..0f8295b36 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.CorruptDatabaseException.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.CorruptDatabaseException.html @@ -119,6 +119,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.CveDB.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.CveDB.html index a1b77d6ab..f5fd2d3c6 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.CveDB.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.CveDB.html @@ -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.data.nvdcve.CveDB.html">CveDB</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">47%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:47px"><span class="text">150/319</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">58%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:58px"><span class="text">55/94</span></div></div></td></tr></table></td><td class="value"><span class="hidden">5.0;</span>5</td></tr> + <tr><td><a href="org.owasp.dependencycheck.data.nvdcve.CveDB.html">CveDB</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">47%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:47px"><span class="text">151/319</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">62%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:62px"><span class="text">59/94</span></div></div></td></tr></table></td><td class="value"><span class="hidden">5.0;</span>5</td></tr> </table> <div class="separator"> </div> @@ -119,7 +119,7 @@ <td class="src"><pre class="src"> <span class="comment"> * @author Jeremy Long (jeremy.long@owasp.org)</span></pre></td></tr> <tr> <td class="numLine"> 51</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 52</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> CveDB {</pre></td></tr> +<tr> <td class="numLineCover"> 52</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> CveDB {</pre></td></tr> <tr> <td class="numLine"> 53</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 54</td> <td class="nbHits"> </td> @@ -344,18 +344,18 @@ <td class="src"><pre class="src">  justification = <span class="string">"Yes, I know... Blank password."</span>)</pre></td></tr> <tr> <td class="numLine"> 164</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> open() <span class="keyword">throws</span> IOException, SQLException, DatabaseException, ClassNotFoundException {</pre></td></tr> -<tr> <td class="numLineCover"> 165</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String fileName = CveDB.getDataDirectory().getCanonicalPath();</pre></td></tr> -<tr> <td class="numLineCover"> 166</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File f = <span class="keyword">new</span> File(fileName, <span class="string">"cve."</span> + DB_SCHEMA_VERSION);</pre></td></tr> -<tr> <td class="numLineCover"> 167</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File check = <span class="keyword">new</span> File(f.getAbsolutePath() + <span class="string">".h2.db"</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 168</td> <td class="nbHitsUncovered"><a title="Line 168: Conditional coverage 50% (1/2)."> 15</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 168: Conditional coverage 50% (1/2)."> <span class="keyword">final</span> <span class="keyword">boolean</span> createTables = !check.exists();</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 169</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String connStr = String.format(<span class="string">"jdbc:h2:file:%s;AUTO_SERVER=TRUE"</span>, f.getAbsolutePath());</pre></td></tr> -<tr> <td class="numLineCover"> 170</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  Class.forName(<span class="string">"org.h2.Driver"</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 171</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  conn = DriverManager.getConnection(connStr, <span class="string">"sa"</span>, <span class="string">""</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 172</td> <td class="nbHitsUncovered"><a title="Line 172: Conditional coverage 50% (1/2)."> 15</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 172: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (createTables) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 165</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String fileName = CveDB.getDataDirectory().getCanonicalPath();</pre></td></tr> +<tr> <td class="numLineCover"> 166</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File f = <span class="keyword">new</span> File(fileName, <span class="string">"cve."</span> + DB_SCHEMA_VERSION);</pre></td></tr> +<tr> <td class="numLineCover"> 167</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File check = <span class="keyword">new</span> File(f.getAbsolutePath() + <span class="string">".h2.db"</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 168</td> <td class="nbHitsUncovered"><a title="Line 168: Conditional coverage 50% (1/2)."> 19</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 168: Conditional coverage 50% (1/2)."> <span class="keyword">final</span> <span class="keyword">boolean</span> createTables = !check.exists();</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 169</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String connStr = String.format(<span class="string">"jdbc:h2:file:%s;AUTO_SERVER=TRUE"</span>, f.getAbsolutePath());</pre></td></tr> +<tr> <td class="numLineCover"> 170</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  Class.forName(<span class="string">"org.h2.Driver"</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 171</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  conn = DriverManager.getConnection(connStr, <span class="string">"sa"</span>, <span class="string">""</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 172</td> <td class="nbHitsUncovered"><a title="Line 172: Conditional coverage 50% (1/2)."> 19</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 172: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (createTables) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 173</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  createTables();</span></pre></td></tr> <tr> <td class="numLine"> 174</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 175</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 175</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 176</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 177</td> <td class="nbHits"> </td> @@ -391,9 +391,9 @@ <td class="src"><pre class="src">  @Override</pre></td></tr> <tr> <td class="numLine"> 194</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">protected</span> <span class="keyword">void</span> finalize() <span class="keyword">throws</span> Throwable {</pre></td></tr> -<tr> <td class="numLineCover"> 195</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  close();</pre></td></tr> -<tr> <td class="numLineCover"> 196</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  <span class="keyword">super</span>.finalize(); <span class="comment">//not necessary if extending Object.</span></pre></td></tr> -<tr> <td class="numLineCover"> 197</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 195</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  close();</pre></td></tr> +<tr> <td class="numLineCover"> 196</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  <span class="keyword">super</span>.finalize(); <span class="comment">//not necessary if extending Object.</span></pre></td></tr> +<tr> <td class="numLineCover"> 197</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 198</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 199</td> <td class="nbHits"> </td> @@ -406,19 +406,19 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 203</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"> 204</td> <td class="nbHitsCovered"><a title="Line 204: Conditional coverage 100% (2/2)."> 23</a></td> <td class="src"><pre class="src"> <a title="Line 204: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (conn != <span class="keyword">null</span>) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 204</td> <td class="nbHitsCovered"><a title="Line 204: Conditional coverage 100% (2/2)."> 31</a></td> <td class="src"><pre class="src"> <a title="Line 204: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (conn != <span class="keyword">null</span>) {</a></pre></td></tr> <tr> <td class="numLine"> 205</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 206</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  conn.close();</pre></td></tr> +<tr> <td class="numLineCover"> 206</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  conn.close();</pre></td></tr> <tr> <td class="numLineCover"> 207</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (SQLException ex) {</span></pre></td></tr> <tr> <td class="numLineCover"> 208</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String msg = <span class="string">"There was an error attempting to close the CveDB, see the log for more details."</span>;</span></pre></td></tr> <tr> <td class="numLineCover"> 209</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(CveDB.<span class="keyword">class</span>.getName()).log(Level.SEVERE, msg, ex);</span></pre></td></tr> <tr> <td class="numLineCover"> 210</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(CveDB.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="keyword">null</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 211</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 212</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  conn = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 211</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 212</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  conn = <span class="keyword">null</span>;</pre></td></tr> <tr> <td class="numLine"> 213</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 214</td> <td class="nbHitsCovered"> 23</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 214</td> <td class="nbHitsCovered"> 31</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 215</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 216</td> <td class="nbHits"> </td> @@ -443,30 +443,30 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 226</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Set<VulnerableSoftware> getCPEs(String vendor, String product) {</pre></td></tr> -<tr> <td class="numLineCover"> 227</td> <td class="nbHitsCovered"> 52</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Set<VulnerableSoftware> cpe = <span class="keyword">new</span> HashSet<VulnerableSoftware>();</pre></td></tr> -<tr> <td class="numLineCover"> 228</td> <td class="nbHitsCovered"> 52</td> <td class="src"><pre class="src">  ResultSet rs = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 229</td> <td class="nbHitsCovered"> 52</td> <td class="src"><pre class="src">  PreparedStatement ps = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 227</td> <td class="nbHitsCovered"> 72</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Set<VulnerableSoftware> cpe = <span class="keyword">new</span> HashSet<VulnerableSoftware>();</pre></td></tr> +<tr> <td class="numLineCover"> 228</td> <td class="nbHitsCovered"> 72</td> <td class="src"><pre class="src">  ResultSet rs = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 229</td> <td class="nbHitsCovered"> 72</td> <td class="src"><pre class="src">  PreparedStatement ps = <span class="keyword">null</span>;</pre></td></tr> <tr> <td class="numLine"> 230</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 231</td> <td class="nbHitsCovered"> 52</td> <td class="src"><pre class="src">  ps = conn.prepareStatement(SELECT_CPE_ENTRIES);</pre></td></tr> -<tr> <td class="numLineCover"> 232</td> <td class="nbHitsCovered"> 52</td> <td class="src"><pre class="src">  ps.setString(1, vendor);</pre></td></tr> -<tr> <td class="numLineCover"> 233</td> <td class="nbHitsCovered"> 52</td> <td class="src"><pre class="src">  ps.setString(2, product);</pre></td></tr> -<tr> <td class="numLineCover"> 234</td> <td class="nbHitsCovered"> 52</td> <td class="src"><pre class="src">  rs = ps.executeQuery();</pre></td></tr> +<tr> <td class="numLineCover"> 231</td> <td class="nbHitsCovered"> 72</td> <td class="src"><pre class="src">  ps = conn.prepareStatement(SELECT_CPE_ENTRIES);</pre></td></tr> +<tr> <td class="numLineCover"> 232</td> <td class="nbHitsCovered"> 72</td> <td class="src"><pre class="src">  ps.setString(1, vendor);</pre></td></tr> +<tr> <td class="numLineCover"> 233</td> <td class="nbHitsCovered"> 72</td> <td class="src"><pre class="src">  ps.setString(2, product);</pre></td></tr> +<tr> <td class="numLineCover"> 234</td> <td class="nbHitsCovered"> 72</td> <td class="src"><pre class="src">  rs = ps.executeQuery();</pre></td></tr> <tr> <td class="numLine"> 235</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 236</td> <td class="nbHitsCovered"><a title="Line 236: Conditional coverage 100% (2/2)."> 3713</a></td> <td class="src"><pre class="src"> <a title="Line 236: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (rs.next()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 237</td> <td class="nbHitsCovered"> 3661</td> <td class="src"><pre class="src">  <span class="keyword">final</span> VulnerableSoftware vs = <span class="keyword">new</span> VulnerableSoftware();</pre></td></tr> -<tr> <td class="numLineCover"> 238</td> <td class="nbHitsCovered"> 3661</td> <td class="src"><pre class="src">  vs.setCpe(rs.getString(1));</pre></td></tr> -<tr> <td class="numLineCover"> 239</td> <td class="nbHitsCovered"> 3661</td> <td class="src"><pre class="src">  cpe.add(vs);</pre></td></tr> -<tr> <td class="numLineCover"> 240</td> <td class="nbHitsCovered"> 3661</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 236</td> <td class="nbHitsCovered"><a title="Line 236: Conditional coverage 100% (2/2)."> 4454</a></td> <td class="src"><pre class="src"> <a title="Line 236: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (rs.next()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 237</td> <td class="nbHitsCovered"> 4382</td> <td class="src"><pre class="src">  <span class="keyword">final</span> VulnerableSoftware vs = <span class="keyword">new</span> VulnerableSoftware();</pre></td></tr> +<tr> <td class="numLineCover"> 238</td> <td class="nbHitsCovered"> 4382</td> <td class="src"><pre class="src">  vs.setCpe(rs.getString(1));</pre></td></tr> +<tr> <td class="numLineCover"> 239</td> <td class="nbHitsCovered"> 4382</td> <td class="src"><pre class="src">  cpe.add(vs);</pre></td></tr> +<tr> <td class="numLineCover"> 240</td> <td class="nbHitsCovered"> 4382</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLineCover"> 241</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (SQLException ex) {</span></pre></td></tr> <tr> <td class="numLineCover"> 242</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(CveDB.<span class="keyword">class</span>.getName()).log(Level.SEVERE, <span class="keyword">null</span>, ex);</span></pre></td></tr> <tr> <td class="numLine"> 243</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 244</td> <td class="nbHitsCovered"> 52</td> <td class="src"><pre class="src">  closeResultSet(rs);</pre></td></tr> -<tr> <td class="numLineCover"> 245</td> <td class="nbHitsCovered"> 52</td> <td class="src"><pre class="src">  closeStatement(ps);</pre></td></tr> -<tr> <td class="numLineCover"> 246</td> <td class="nbHitsCovered"> 52</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 247</td> <td class="nbHitsCovered"> 52</td> <td class="src"><pre class="src">  <span class="keyword">return</span> cpe;</pre></td></tr> +<tr> <td class="numLineCover"> 244</td> <td class="nbHitsCovered"> 72</td> <td class="src"><pre class="src">  closeResultSet(rs);</pre></td></tr> +<tr> <td class="numLineCover"> 245</td> <td class="nbHitsCovered"> 72</td> <td class="src"><pre class="src">  closeStatement(ps);</pre></td></tr> +<tr> <td class="numLineCover"> 246</td> <td class="nbHitsCovered"> 72</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 247</td> <td class="nbHitsCovered"> 72</td> <td class="src"><pre class="src">  <span class="keyword">return</span> cpe;</pre></td></tr> <tr> <td class="numLine"> 248</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 249</td> <td class="nbHits"> </td> @@ -487,51 +487,51 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 257</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> List<Vulnerability> getVulnerabilities(String cpeStr) <span class="keyword">throws</span> DatabaseException {</pre></td></tr> -<tr> <td class="numLineCover"> 258</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  ResultSet rs = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 259</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  <span class="keyword">final</span> VulnerableSoftware cpe = <span class="keyword">new</span> VulnerableSoftware();</pre></td></tr> +<tr> <td class="numLineCover"> 258</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  ResultSet rs = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 259</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  <span class="keyword">final</span> VulnerableSoftware cpe = <span class="keyword">new</span> VulnerableSoftware();</pre></td></tr> <tr> <td class="numLine"> 260</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 261</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  cpe.parseName(cpeStr);</pre></td></tr> +<tr> <td class="numLineCover"> 261</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  cpe.parseName(cpeStr);</pre></td></tr> <tr> <td class="numLineCover"> 262</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (UnsupportedEncodingException ex) {</span></pre></td></tr> <tr> <td class="numLineCover"> 263</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(CveDB.<span class="keyword">class</span>.getName()).log(Level.FINEST, <span class="keyword">null</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 264</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 265</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  <span class="keyword">final</span> DependencyVersion detectedVersion = parseDependencyVersion(cpe);</pre></td></tr> -<tr> <td class="numLineCover"> 266</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<Vulnerability> vulnerabilities = <span class="keyword">new</span> ArrayList<Vulnerability>();</pre></td></tr> +<tr> <td class="numLineCover"> 264</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 265</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  <span class="keyword">final</span> DependencyVersion detectedVersion = parseDependencyVersion(cpe);</pre></td></tr> +<tr> <td class="numLineCover"> 266</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<Vulnerability> vulnerabilities = <span class="keyword">new</span> ArrayList<Vulnerability>();</pre></td></tr> <tr> <td class="numLine"> 267</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 268</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  PreparedStatement ps;</pre></td></tr> -<tr> <td class="numLineCover"> 269</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  <span class="keyword">final</span> HashSet<String> cveEntries = <span class="keyword">new</span> HashSet<String>();</pre></td></tr> +<tr> <td class="numLineCover"> 269</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  <span class="keyword">final</span> HashSet<String> cveEntries = <span class="keyword">new</span> HashSet<String>();</pre></td></tr> <tr> <td class="numLine"> 270</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 271</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  ps = conn.prepareStatement(SELECT_CVE_FROM_SOFTWARE);</pre></td></tr> -<tr> <td class="numLineCover"> 272</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  ps.setString(1, cpe.getVendor());</pre></td></tr> -<tr> <td class="numLineCover"> 273</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  ps.setString(2, cpe.getProduct());</pre></td></tr> -<tr> <td class="numLineCover"> 274</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  rs = ps.executeQuery();</pre></td></tr> -<tr> <td class="numLineCover"> 275</td> <td class="nbHitsCovered"><a title="Line 275: Conditional coverage 100% (2/2)."> 2976</a></td> <td class="src"><pre class="src"> <a title="Line 275: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (rs.next()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 276</td> <td class="nbHitsCovered"> 2969</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String cveId = rs.getString(1);</pre></td></tr> -<tr> <td class="numLineCover"> 277</td> <td class="nbHitsCovered"> 2969</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String cpeId = rs.getString(2);</pre></td></tr> -<tr> <td class="numLineCover"> 278</td> <td class="nbHitsCovered"> 2969</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String previous = rs.getString(3);</pre></td></tr> -<tr> <td class="numLineCover"> 279</td> <td class="nbHitsCovered"><a title="Line 279: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 2969</a></td> <td class="src"><pre class="src"> <a title="Line 279: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (!cveEntries.contains(cveId) && isAffected(cpe.getVendor(), cpe.getProduct(), detectedVersion, cpeId, previous)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 280</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  cveEntries.add(cveId);</pre></td></tr> +<tr> <td class="numLineCover"> 271</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  ps = conn.prepareStatement(SELECT_CVE_FROM_SOFTWARE);</pre></td></tr> +<tr> <td class="numLineCover"> 272</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  ps.setString(1, cpe.getVendor());</pre></td></tr> +<tr> <td class="numLineCover"> 273</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  ps.setString(2, cpe.getProduct());</pre></td></tr> +<tr> <td class="numLineCover"> 274</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  rs = ps.executeQuery();</pre></td></tr> +<tr> <td class="numLineCover"> 275</td> <td class="nbHitsCovered"><a title="Line 275: Conditional coverage 100% (2/2)."> 4500</a></td> <td class="src"><pre class="src"> <a title="Line 275: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (rs.next()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 276</td> <td class="nbHitsCovered"> 4488</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String cveId = rs.getString(1);</pre></td></tr> +<tr> <td class="numLineCover"> 277</td> <td class="nbHitsCovered"> 4488</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String cpeId = rs.getString(2);</pre></td></tr> +<tr> <td class="numLineCover"> 278</td> <td class="nbHitsCovered"> 4488</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String previous = rs.getString(3);</pre></td></tr> +<tr> <td class="numLineCover"> 279</td> <td class="nbHitsCovered"><a title="Line 279: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 4488</a></td> <td class="src"><pre class="src"> <a title="Line 279: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (!cveEntries.contains(cveId) && isAffected(cpe.getVendor(), cpe.getProduct(), detectedVersion, cpeId, previous)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 280</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  cveEntries.add(cveId);</pre></td></tr> <tr> <td class="numLine"> 281</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 282</td> <td class="nbHitsCovered"> 2969</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 283</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  closeResultSet(rs);</pre></td></tr> -<tr> <td class="numLineCover"> 284</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  closeStatement(ps);</pre></td></tr> -<tr> <td class="numLineCover"> 285</td> <td class="nbHitsCovered"><a title="Line 285: Conditional coverage 100% (2/2)."> 7</a></td> <td class="src"><pre class="src"> <a title="Line 285: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (String cve : cveEntries) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 286</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Vulnerability v = getVulnerability(cve);</pre></td></tr> -<tr> <td class="numLineCover"> 287</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  vulnerabilities.add(v);</pre></td></tr> -<tr> <td class="numLineCover"> 288</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 282</td> <td class="nbHitsCovered"> 4488</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 283</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  closeResultSet(rs);</pre></td></tr> +<tr> <td class="numLineCover"> 284</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  closeStatement(ps);</pre></td></tr> +<tr> <td class="numLineCover"> 285</td> <td class="nbHitsCovered"><a title="Line 285: Conditional coverage 100% (2/2)."> 12</a></td> <td class="src"><pre class="src"> <a title="Line 285: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (String cve : cveEntries) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 286</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Vulnerability v = getVulnerability(cve);</pre></td></tr> +<tr> <td class="numLineCover"> 287</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  vulnerabilities.add(v);</pre></td></tr> +<tr> <td class="numLineCover"> 288</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 289</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLineCover"> 290</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (SQLException ex) {</span></pre></td></tr> <tr> <td class="numLineCover"> 291</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> DatabaseException(<span class="string">"Exception retrieving vulnerability for "</span> + cpeStr, ex);</span></pre></td></tr> <tr> <td class="numLine"> 292</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 293</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  closeResultSet(rs);</pre></td></tr> -<tr> <td class="numLineCover"> 294</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 295</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  <span class="keyword">return</span> vulnerabilities;</pre></td></tr> +<tr> <td class="numLineCover"> 293</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  closeResultSet(rs);</pre></td></tr> +<tr> <td class="numLineCover"> 294</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 295</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  <span class="keyword">return</span> vulnerabilities;</pre></td></tr> <tr> <td class="numLine"> 296</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 297</td> <td class="nbHits"> </td> @@ -552,77 +552,77 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 305</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> Vulnerability getVulnerability(String cve) <span class="keyword">throws</span> DatabaseException {</pre></td></tr> -<tr> <td class="numLineCover"> 306</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  PreparedStatement psV = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 307</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  PreparedStatement psR = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 308</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  PreparedStatement psS = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 309</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  ResultSet rsV = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 310</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  ResultSet rsR = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 311</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  ResultSet rsS = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 312</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  Vulnerability vuln = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 306</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  PreparedStatement psV = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 307</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  PreparedStatement psR = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 308</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  PreparedStatement psS = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 309</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  ResultSet rsV = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 310</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  ResultSet rsR = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 311</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  ResultSet rsS = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 312</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  Vulnerability vuln = <span class="keyword">null</span>;</pre></td></tr> <tr> <td class="numLine"> 313</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 314</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  psV = conn.prepareStatement(SELECT_VULNERABILITY);</pre></td></tr> -<tr> <td class="numLineCover"> 315</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  psV.setString(1, cve);</pre></td></tr> -<tr> <td class="numLineCover"> 316</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  rsV = psV.executeQuery();</pre></td></tr> -<tr> <td class="numLineCover"> 317</td> <td class="nbHitsUncovered"><a title="Line 317: Conditional coverage 50% (1/2)."> 50</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 317: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (rsV.next()) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 318</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  vuln = <span class="keyword">new</span> Vulnerability();</pre></td></tr> -<tr> <td class="numLineCover"> 319</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  vuln.setName(cve);</pre></td></tr> -<tr> <td class="numLineCover"> 320</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  vuln.setDescription(rsV.getString(2));</pre></td></tr> -<tr> <td class="numLineCover"> 321</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  String cwe = rsV.getString(3);</pre></td></tr> -<tr> <td class="numLineCover"> 322</td> <td class="nbHitsCovered"><a title="Line 322: Conditional coverage 100% (2/2)."> 50</a></td> <td class="src"><pre class="src"> <a title="Line 322: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (cwe != <span class="keyword">null</span>) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 323</td> <td class="nbHitsCovered"> 47</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String name = CweDB.getCweName(cwe);</pre></td></tr> -<tr> <td class="numLineCover"> 324</td> <td class="nbHitsCovered"><a title="Line 324: Conditional coverage 100% (2/2)."> 47</a></td> <td class="src"><pre class="src"> <a title="Line 324: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (name != <span class="keyword">null</span>) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 325</td> <td class="nbHitsCovered"> 45</td> <td class="src"><pre class="src">  cwe += <span class="string">" "</span> + name;</pre></td></tr> +<tr> <td class="numLineCover"> 314</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  psV = conn.prepareStatement(SELECT_VULNERABILITY);</pre></td></tr> +<tr> <td class="numLineCover"> 315</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  psV.setString(1, cve);</pre></td></tr> +<tr> <td class="numLineCover"> 316</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  rsV = psV.executeQuery();</pre></td></tr> +<tr> <td class="numLineCover"> 317</td> <td class="nbHitsUncovered"><a title="Line 317: Conditional coverage 50% (1/2)."> 59</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 317: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (rsV.next()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 318</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  vuln = <span class="keyword">new</span> Vulnerability();</pre></td></tr> +<tr> <td class="numLineCover"> 319</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  vuln.setName(cve);</pre></td></tr> +<tr> <td class="numLineCover"> 320</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  vuln.setDescription(rsV.getString(2));</pre></td></tr> +<tr> <td class="numLineCover"> 321</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  String cwe = rsV.getString(3);</pre></td></tr> +<tr> <td class="numLineCover"> 322</td> <td class="nbHitsCovered"><a title="Line 322: Conditional coverage 100% (2/2)."> 59</a></td> <td class="src"><pre class="src"> <a title="Line 322: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (cwe != <span class="keyword">null</span>) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 323</td> <td class="nbHitsCovered"> 48</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String name = CweDB.getCweName(cwe);</pre></td></tr> +<tr> <td class="numLineCover"> 324</td> <td class="nbHitsCovered"><a title="Line 324: Conditional coverage 100% (2/2)."> 48</a></td> <td class="src"><pre class="src"> <a title="Line 324: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (name != <span class="keyword">null</span>) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 325</td> <td class="nbHitsCovered"> 46</td> <td class="src"><pre class="src">  cwe += <span class="string">" "</span> + name;</pre></td></tr> <tr> <td class="numLine"> 326</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 327</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 328</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">int</span> cveId = rsV.getInt(1);</pre></td></tr> -<tr> <td class="numLineCover"> 329</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  vuln.setCwe(cwe);</pre></td></tr> -<tr> <td class="numLineCover"> 330</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  vuln.setCvssScore(rsV.getFloat(4));</pre></td></tr> -<tr> <td class="numLineCover"> 331</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  vuln.setCvssAccessVector(rsV.getString(5));</pre></td></tr> -<tr> <td class="numLineCover"> 332</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  vuln.setCvssAccessComplexity(rsV.getString(6));</pre></td></tr> -<tr> <td class="numLineCover"> 333</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  vuln.setCvssAuthentication(rsV.getString(7));</pre></td></tr> -<tr> <td class="numLineCover"> 334</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  vuln.setCvssConfidentialityImpact(rsV.getString(8));</pre></td></tr> -<tr> <td class="numLineCover"> 335</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  vuln.setCvssIntegrityImpact(rsV.getString(9));</pre></td></tr> -<tr> <td class="numLineCover"> 336</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  vuln.setCvssAvailabilityImpact(rsV.getString(10));</pre></td></tr> +<tr> <td class="numLineCover"> 328</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">int</span> cveId = rsV.getInt(1);</pre></td></tr> +<tr> <td class="numLineCover"> 329</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  vuln.setCwe(cwe);</pre></td></tr> +<tr> <td class="numLineCover"> 330</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  vuln.setCvssScore(rsV.getFloat(4));</pre></td></tr> +<tr> <td class="numLineCover"> 331</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  vuln.setCvssAccessVector(rsV.getString(5));</pre></td></tr> +<tr> <td class="numLineCover"> 332</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  vuln.setCvssAccessComplexity(rsV.getString(6));</pre></td></tr> +<tr> <td class="numLineCover"> 333</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  vuln.setCvssAuthentication(rsV.getString(7));</pre></td></tr> +<tr> <td class="numLineCover"> 334</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  vuln.setCvssConfidentialityImpact(rsV.getString(8));</pre></td></tr> +<tr> <td class="numLineCover"> 335</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  vuln.setCvssIntegrityImpact(rsV.getString(9));</pre></td></tr> +<tr> <td class="numLineCover"> 336</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  vuln.setCvssAvailabilityImpact(rsV.getString(10));</pre></td></tr> <tr> <td class="numLine"> 337</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 338</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  psR = conn.prepareStatement(SELECT_REFERENCE);</pre></td></tr> -<tr> <td class="numLineCover"> 339</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  psR.setInt(1, cveId);</pre></td></tr> -<tr> <td class="numLineCover"> 340</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  rsR = psR.executeQuery();</pre></td></tr> -<tr> <td class="numLineCover"> 341</td> <td class="nbHitsCovered"><a title="Line 341: Conditional coverage 100% (2/2)."> 351</a></td> <td class="src"><pre class="src"> <a title="Line 341: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (rsR.next()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 342</td> <td class="nbHitsCovered"> 301</td> <td class="src"><pre class="src">  vuln.addReference(rsR.getString(1), rsR.getString(2), rsR.getString(3));</pre></td></tr> +<tr> <td class="numLineCover"> 338</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  psR = conn.prepareStatement(SELECT_REFERENCE);</pre></td></tr> +<tr> <td class="numLineCover"> 339</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  psR.setInt(1, cveId);</pre></td></tr> +<tr> <td class="numLineCover"> 340</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  rsR = psR.executeQuery();</pre></td></tr> +<tr> <td class="numLineCover"> 341</td> <td class="nbHitsCovered"><a title="Line 341: Conditional coverage 100% (2/2)."> 460</a></td> <td class="src"><pre class="src"> <a title="Line 341: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (rsR.next()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 342</td> <td class="nbHitsCovered"> 401</td> <td class="src"><pre class="src">  vuln.addReference(rsR.getString(1), rsR.getString(2), rsR.getString(3));</pre></td></tr> <tr> <td class="numLine"> 343</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 344</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  psS = conn.prepareStatement(SELECT_SOFTWARE);</pre></td></tr> -<tr> <td class="numLineCover"> 345</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  psS.setInt(1, cveId);</pre></td></tr> -<tr> <td class="numLineCover"> 346</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  rsS = psS.executeQuery();</pre></td></tr> +<tr> <td class="numLineCover"> 344</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  psS = conn.prepareStatement(SELECT_SOFTWARE);</pre></td></tr> +<tr> <td class="numLineCover"> 345</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  psS.setInt(1, cveId);</pre></td></tr> +<tr> <td class="numLineCover"> 346</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  rsS = psS.executeQuery();</pre></td></tr> <tr> <td class="numLineCover"> 347</td> <td class="nbHitsCovered"><a title="Line 347: Conditional coverage 100% (2/2)."> 2673</a></td> <td class="src"><pre class="src"> <a title="Line 347: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (rsS.next()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 348</td> <td class="nbHitsCovered"> 2623</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String cpe = rsS.getString(1);</pre></td></tr> -<tr> <td class="numLineCover"> 349</td> <td class="nbHitsCovered"> 2623</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String prevVersion = rsS.getString(2);</pre></td></tr> -<tr> <td class="numLineCover"> 350</td> <td class="nbHitsCovered"><a title="Line 350: Conditional coverage 100% (2/2)."> 2623</a></td> <td class="src"><pre class="src"> <a title="Line 350: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (prevVersion == <span class="keyword">null</span>) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 351</td> <td class="nbHitsCovered"> 2586</td> <td class="src"><pre class="src">  vuln.addVulnerableSoftware(cpe);</pre></td></tr> +<tr> <td class="numLineCover"> 348</td> <td class="nbHitsCovered"> 2614</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String cpe = rsS.getString(1);</pre></td></tr> +<tr> <td class="numLineCover"> 349</td> <td class="nbHitsCovered"> 2614</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String prevVersion = rsS.getString(2);</pre></td></tr> +<tr> <td class="numLineCover"> 350</td> <td class="nbHitsCovered"><a title="Line 350: Conditional coverage 100% (2/2)."> 2614</a></td> <td class="src"><pre class="src"> <a title="Line 350: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (prevVersion == <span class="keyword">null</span>) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 351</td> <td class="nbHitsCovered"> 2572</td> <td class="src"><pre class="src">  vuln.addVulnerableSoftware(cpe);</pre></td></tr> <tr> <td class="numLine"> 352</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 353</td> <td class="nbHitsCovered"> 37</td> <td class="src"><pre class="src">  vuln.addVulnerableSoftware(cpe, prevVersion);</pre></td></tr> +<tr> <td class="numLineCover"> 353</td> <td class="nbHitsCovered"> 42</td> <td class="src"><pre class="src">  vuln.addVulnerableSoftware(cpe, prevVersion);</pre></td></tr> <tr> <td class="numLine"> 354</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 355</td> <td class="nbHitsCovered"> 2623</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 355</td> <td class="nbHitsCovered"> 2614</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 356</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLineCover"> 357</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (SQLException ex) {</span></pre></td></tr> <tr> <td class="numLineCover"> 358</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> DatabaseException(<span class="string">"Error retrieving "</span> + cve, ex);</span></pre></td></tr> <tr> <td class="numLine"> 359</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 360</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  closeResultSet(rsV);</pre></td></tr> -<tr> <td class="numLineCover"> 361</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  closeResultSet(rsR);</pre></td></tr> -<tr> <td class="numLineCover"> 362</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  closeResultSet(rsS);</pre></td></tr> -<tr> <td class="numLineCover"> 363</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  closeStatement(psV);</pre></td></tr> -<tr> <td class="numLineCover"> 364</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  closeStatement(psR);</pre></td></tr> -<tr> <td class="numLineCover"> 365</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  closeStatement(psS);</pre></td></tr> -<tr> <td class="numLineCover"> 366</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 367</td> <td class="nbHitsCovered"> 50</td> <td class="src"><pre class="src">  <span class="keyword">return</span> vuln;</pre></td></tr> +<tr> <td class="numLineCover"> 360</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  closeResultSet(rsV);</pre></td></tr> +<tr> <td class="numLineCover"> 361</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  closeResultSet(rsR);</pre></td></tr> +<tr> <td class="numLineCover"> 362</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  closeResultSet(rsS);</pre></td></tr> +<tr> <td class="numLineCover"> 363</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  closeStatement(psV);</pre></td></tr> +<tr> <td class="numLineCover"> 364</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  closeStatement(psR);</pre></td></tr> +<tr> <td class="numLineCover"> 365</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  closeStatement(psS);</pre></td></tr> +<tr> <td class="numLineCover"> 366</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 367</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  <span class="keyword">return</span> vuln;</pre></td></tr> <tr> <td class="numLine"> 368</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 369</td> <td class="nbHits"> </td> @@ -809,15 +809,15 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 514</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> File getDataDirectory() <span class="keyword">throws</span> IOException {</pre></td></tr> -<tr> <td class="numLineCover"> 515</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File path = Settings.getFile(Settings.KEYS.CVE_DATA_DIRECTORY);</pre></td></tr> -<tr> <td class="numLineCover"> 516</td> <td class="nbHitsCovered"><a title="Line 516: Conditional coverage 100% (2/2)."> 16</a></td> <td class="src"><pre class="src"> <a title="Line 516: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (!path.exists()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 515</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src">  <span class="keyword">final</span> File path = Settings.getFile(Settings.KEYS.CVE_DATA_DIRECTORY);</pre></td></tr> +<tr> <td class="numLineCover"> 516</td> <td class="nbHitsCovered"><a title="Line 516: Conditional coverage 100% (2/2)."> 20</a></td> <td class="src"><pre class="src"> <a title="Line 516: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (!path.exists()) {</a></pre></td></tr> <tr> <td class="numLineCover"> 517</td> <td class="nbHitsUncovered"><a title="Line 517: Conditional coverage 50% (1/2)."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 517: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!path.mkdirs()) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 518</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> IOException(<span class="string">"Unable to create NVD CVE Data directory"</span>);</span></pre></td></tr> <tr> <td class="numLine"> 519</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 520</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 521</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">return</span> path;</pre></td></tr> +<tr> <td class="numLineCover"> 521</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src">  <span class="keyword">return</span> path;</pre></td></tr> <tr> <td class="numLine"> 522</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 523</td> <td class="nbHits"> </td> @@ -923,18 +923,18 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 588</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> closeStatement(Statement statement) {</pre></td></tr> -<tr> <td class="numLineCover"> 589</td> <td class="nbHitsUncovered"><a title="Line 589: Conditional coverage 50% (1/2)."> 209</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 589: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (statement != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 589</td> <td class="nbHitsUncovered"><a title="Line 589: Conditional coverage 50% (1/2)."> 261</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 589: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (statement != <span class="keyword">null</span>) {</a></span></pre></td></tr> <tr> <td class="numLine"> 590</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 591</td> <td class="nbHitsCovered"> 209</td> <td class="src"><pre class="src">  statement.close();</pre></td></tr> +<tr> <td class="numLineCover"> 591</td> <td class="nbHitsCovered"> 261</td> <td class="src"><pre class="src">  statement.close();</pre></td></tr> <tr> <td class="numLineCover"> 592</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (SQLException ex) {</span></pre></td></tr> <tr> <td class="numLineCover"> 593</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(CveDB.<span class="keyword">class</span></span></pre></td></tr> <tr> <td class="numLine"> 594</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  .getName()).log(Level.FINEST, statement.toString(), ex);</pre></td></tr> -<tr> <td class="numLineCover"> 595</td> <td class="nbHitsCovered"> 209</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 595</td> <td class="nbHitsCovered"> 261</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 596</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 597</td> <td class="nbHitsCovered"> 209</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 597</td> <td class="nbHitsCovered"> 261</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 598</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 599</td> <td class="nbHits"> </td> @@ -951,18 +951,18 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 605</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> closeResultSet(ResultSet rs) {</pre></td></tr> -<tr> <td class="numLineCover"> 606</td> <td class="nbHitsUncovered"><a title="Line 606: Conditional coverage 50% (1/2)."> 216</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 606: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (rs != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 606</td> <td class="nbHitsUncovered"><a title="Line 606: Conditional coverage 50% (1/2)."> 273</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 606: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (rs != <span class="keyword">null</span>) {</a></span></pre></td></tr> <tr> <td class="numLine"> 607</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 608</td> <td class="nbHitsCovered"> 216</td> <td class="src"><pre class="src">  rs.close();</pre></td></tr> +<tr> <td class="numLineCover"> 608</td> <td class="nbHitsCovered"> 273</td> <td class="src"><pre class="src">  rs.close();</pre></td></tr> <tr> <td class="numLineCover"> 609</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (SQLException ex) {</span></pre></td></tr> <tr> <td class="numLineCover"> 610</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(CveDB.<span class="keyword">class</span></span></pre></td></tr> <tr> <td class="numLine"> 611</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  .getName()).log(Level.FINEST, rs.toString(), ex);</pre></td></tr> -<tr> <td class="numLineCover"> 612</td> <td class="nbHitsCovered"> 216</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 612</td> <td class="nbHitsCovered"> 273</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 613</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 614</td> <td class="nbHitsCovered"> 216</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 614</td> <td class="nbHitsCovered"> 273</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 615</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 616</td> <td class="nbHits"> </td> @@ -1035,24 +1035,24 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 655</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">boolean</span> isAffected(String vendor, String product, DependencyVersion identifiedVersion, String cpeId, String previous) {</pre></td></tr> -<tr> <td class="numLineCover"> 656</td> <td class="nbHitsCovered"> 1982</td> <td class="src"><pre class="src">  <span class="keyword">boolean</span> affected = <span class="keyword">false</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 657</td> <td class="nbHitsCovered"><a title="Line 657: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 1982</a></td> <td class="src"><pre class="src"> <a title="Line 657: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">final</span> <span class="keyword">boolean</span> isStruts = <span class="string">"apache"</span>.equals(vendor) && <span class="string">"struts"</span>.equals(product);</a></pre></td></tr> -<tr> <td class="numLineCover"> 658</td> <td class="nbHitsCovered"> 1982</td> <td class="src"><pre class="src">  <span class="keyword">final</span> DependencyVersion v = parseDependencyVersion(cpeId);</pre></td></tr> -<tr> <td class="numLineCover"> 659</td> <td class="nbHitsUncovered"><a title="Line 659: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 1982</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 659: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">final</span> <span class="keyword">boolean</span> prevAffected = previous == <span class="keyword">null</span> ? <span class="keyword">false</span> : !previous.isEmpty();</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 660</td> <td class="nbHitsUncovered"><a title="Line 660: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 1982</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 660: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">if</span> (identifiedVersion == <span class="keyword">null</span> || <span class="string">"-"</span>.equals(identifiedVersion.toString())) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 661</td> <td class="nbHitsUncovered"><a title="Line 661: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 661: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> <span class="keyword">if</span> (v == <span class="keyword">null</span> || <span class="string">"-"</span>.equals(v.toString())) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 656</td> <td class="nbHitsCovered"> 3491</td> <td class="src"><pre class="src">  <span class="keyword">boolean</span> affected = <span class="keyword">false</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 657</td> <td class="nbHitsCovered"><a title="Line 657: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 3491</a></td> <td class="src"><pre class="src"> <a title="Line 657: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">final</span> <span class="keyword">boolean</span> isStruts = <span class="string">"apache"</span>.equals(vendor) && <span class="string">"struts"</span>.equals(product);</a></pre></td></tr> +<tr> <td class="numLineCover"> 658</td> <td class="nbHitsCovered"> 3491</td> <td class="src"><pre class="src">  <span class="keyword">final</span> DependencyVersion v = parseDependencyVersion(cpeId);</pre></td></tr> +<tr> <td class="numLineCover"> 659</td> <td class="nbHitsUncovered"><a title="Line 659: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 3491</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 659: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">final</span> <span class="keyword">boolean</span> prevAffected = previous == <span class="keyword">null</span> ? <span class="keyword">false</span> : !previous.isEmpty();</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 660</td> <td class="nbHitsUncovered"><a title="Line 660: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> 3491</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 660: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> <span class="keyword">if</span> (identifiedVersion == <span class="keyword">null</span> || <span class="string">"-"</span>.equals(identifiedVersion.toString())) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 661</td> <td class="nbHitsUncovered"><a title="Line 661: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 96</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 661: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">if</span> (v == <span class="keyword">null</span> || <span class="string">"-"</span>.equals(v.toString())) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 662</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  affected = <span class="keyword">true</span>;</span></pre></td></tr> <tr> <td class="numLine"> 663</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 664</td> <td class="nbHitsCovered"><a title="Line 664: Conditional coverage 100% (6/6) [each condition: 100%, 100%, 100%]."> 1982</a></td> <td class="src"><pre class="src"> <a title="Line 664: Conditional coverage 100% (6/6) [each condition: 100%, 100%, 100%]."> } <span class="keyword">else</span> <span class="keyword">if</span> (identifiedVersion.equals(v) || (prevAffected && identifiedVersion.compareTo(v) < 0)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 665</td> <td class="nbHitsCovered"><a title="Line 665: Conditional coverage 100% (2/2)."> 50</a></td> <td class="src"><pre class="src"> <a title="Line 665: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (isStruts) { <span class="comment">//struts 2 vulns don't affect struts 1</span></a></pre></td></tr> -<tr> <td class="numLineCover"> 666</td> <td class="nbHitsUncovered"><a title="Line 666: Conditional coverage 50% (1/2)."> 38</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 666: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (identifiedVersion.getVersionParts().get(0).equals(v.getVersionParts().get(0))) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 667</td> <td class="nbHitsCovered"> 38</td> <td class="src"><pre class="src">  affected = <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 664</td> <td class="nbHitsCovered"><a title="Line 664: Conditional coverage 100% (6/6) [each condition: 100%, 100%, 100%]."> 3395</a></td> <td class="src"><pre class="src"> <a title="Line 664: Conditional coverage 100% (6/6) [each condition: 100%, 100%, 100%]."> } <span class="keyword">else</span> <span class="keyword">if</span> (identifiedVersion.equals(v) || (prevAffected && identifiedVersion.compareTo(v) < 0)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 665</td> <td class="nbHitsCovered"><a title="Line 665: Conditional coverage 100% (2/2)."> 81</a></td> <td class="src"><pre class="src"> <a title="Line 665: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (isStruts) { <span class="comment">//struts 2 vulns don't affect struts 1</span></a></pre></td></tr> +<tr> <td class="numLineCover"> 666</td> <td class="nbHitsCovered"><a title="Line 666: Conditional coverage 100% (2/2)."> 70</a></td> <td class="src"><pre class="src"> <a title="Line 666: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (identifiedVersion.getVersionParts().get(0).equals(v.getVersionParts().get(0))) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 667</td> <td class="nbHitsCovered"> 48</td> <td class="src"><pre class="src">  affected = <span class="keyword">true</span>;</pre></td></tr> <tr> <td class="numLine"> 668</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 669</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 670</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  affected = <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 670</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  affected = <span class="keyword">true</span>;</pre></td></tr> <tr> <td class="numLine"> 671</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 672</td> <td class="nbHits"> </td> @@ -1065,7 +1065,7 @@ <td class="src"><pre class="src"> <span class="comment"> * might also introduce false positives.</span></pre></td></tr> <tr> <td class="numLine"> 676</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 677</td> <td class="nbHitsCovered"> 1982</td> <td class="src"><pre class="src">  <span class="keyword">return</span> affected;</pre></td></tr> +<tr> <td class="numLineCover"> 677</td> <td class="nbHitsCovered"> 3491</td> <td class="src"><pre class="src">  <span class="keyword">return</span> affected;</pre></td></tr> <tr> <td class="numLine"> 678</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 679</td> <td class="nbHits"> </td> @@ -1086,16 +1086,16 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 687</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> DependencyVersion parseDependencyVersion(String cpeStr) {</pre></td></tr> -<tr> <td class="numLineCover"> 688</td> <td class="nbHitsCovered"> 1982</td> <td class="src"><pre class="src">  <span class="keyword">final</span> VulnerableSoftware cpe = <span class="keyword">new</span> VulnerableSoftware();</pre></td></tr> +<tr> <td class="numLineCover"> 688</td> <td class="nbHitsCovered"> 3491</td> <td class="src"><pre class="src">  <span class="keyword">final</span> VulnerableSoftware cpe = <span class="keyword">new</span> VulnerableSoftware();</pre></td></tr> <tr> <td class="numLine"> 689</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 690</td> <td class="nbHitsCovered"> 1982</td> <td class="src"><pre class="src">  cpe.parseName(cpeStr);</pre></td></tr> +<tr> <td class="numLineCover"> 690</td> <td class="nbHitsCovered"> 3491</td> <td class="src"><pre class="src">  cpe.parseName(cpeStr);</pre></td></tr> <tr> <td class="numLineCover"> 691</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (UnsupportedEncodingException ex) {</span></pre></td></tr> <tr> <td class="numLine"> 692</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//never going to happen.</span></pre></td></tr> <tr> <td class="numLineCover"> 693</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(CveDB.<span class="keyword">class</span>.getName()).log(Level.FINEST, <span class="keyword">null</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 694</td> <td class="nbHitsCovered"> 1982</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 695</td> <td class="nbHitsCovered"> 1982</td> <td class="src"><pre class="src">  <span class="keyword">return</span> parseDependencyVersion(cpe);</pre></td></tr> +<tr> <td class="numLineCover"> 694</td> <td class="nbHitsCovered"> 3491</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 695</td> <td class="nbHitsCovered"> 3491</td> <td class="src"><pre class="src">  <span class="keyword">return</span> parseDependencyVersion(cpe);</pre></td></tr> <tr> <td class="numLine"> 696</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 697</td> <td class="nbHits"> </td> @@ -1118,28 +1118,28 @@ <td class="src"><pre class="src">  <span class="keyword">private</span> DependencyVersion parseDependencyVersion(VulnerableSoftware cpe) {</pre></td></tr> <tr> <td class="numLine"> 706</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  DependencyVersion cpeVersion;</pre></td></tr> -<tr> <td class="numLineCover"> 707</td> <td class="nbHitsUncovered"><a title="Line 707: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 1989</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 707: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (cpe.getVersion() != <span class="keyword">null</span> && cpe.getVersion().length() > 0) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 707</td> <td class="nbHitsUncovered"><a title="Line 707: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 3503</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 707: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (cpe.getVersion() != <span class="keyword">null</span> && cpe.getVersion().length() > 0) {</a></span></pre></td></tr> <tr> <td class="numLine"> 708</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  String versionText;</pre></td></tr> -<tr> <td class="numLineCover"> 709</td> <td class="nbHitsUncovered"><a title="Line 709: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 1987</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 709: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (cpe.getRevision() != <span class="keyword">null</span> && cpe.getRevision().length() > 0) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 710</td> <td class="nbHitsCovered"> 460</td> <td class="src"><pre class="src">  versionText = String.format(<span class="string">"%s.%s"</span>, cpe.getVersion(), cpe.getRevision());</pre></td></tr> +<tr> <td class="numLineCover"> 709</td> <td class="nbHitsUncovered"><a title="Line 709: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 3499</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 709: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (cpe.getRevision() != <span class="keyword">null</span> && cpe.getRevision().length() > 0) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 710</td> <td class="nbHitsCovered"> 441</td> <td class="src"><pre class="src">  versionText = String.format(<span class="string">"%s.%s"</span>, cpe.getVersion(), cpe.getRevision());</pre></td></tr> <tr> <td class="numLine"> 711</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 712</td> <td class="nbHitsCovered"> 1527</td> <td class="src"><pre class="src">  versionText = cpe.getVersion();</pre></td></tr> +<tr> <td class="numLineCover"> 712</td> <td class="nbHitsCovered"> 3058</td> <td class="src"><pre class="src">  versionText = cpe.getVersion();</pre></td></tr> <tr> <td class="numLine"> 713</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 714</td> <td class="nbHitsCovered"> 1987</td> <td class="src"><pre class="src">  cpeVersion = DependencyVersionUtil.parseVersion(versionText);</pre></td></tr> -<tr> <td class="numLineCover"> 715</td> <td class="nbHitsCovered"> 1987</td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 716</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  cpeVersion = <span class="keyword">new</span> DependencyVersion(<span class="string">"-"</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 714</td> <td class="nbHitsCovered"> 3499</td> <td class="src"><pre class="src">  cpeVersion = DependencyVersionUtil.parseVersion(versionText);</pre></td></tr> +<tr> <td class="numLineCover"> 715</td> <td class="nbHitsCovered"> 3499</td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 716</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src">  cpeVersion = <span class="keyword">new</span> DependencyVersion(<span class="string">"-"</span>);</pre></td></tr> <tr> <td class="numLine"> 717</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 718</td> <td class="nbHitsCovered"> 1989</td> <td class="src"><pre class="src">  <span class="keyword">return</span> cpeVersion;</pre></td></tr> +<tr> <td class="numLineCover"> 718</td> <td class="nbHitsCovered"> 3503</td> <td class="src"><pre class="src">  <span class="keyword">return</span> cpeVersion;</pre></td></tr> <tr> <td class="numLine"> 719</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 720</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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.DatabaseException.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.DatabaseException.html index 618780506..871bcf407 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.DatabaseException.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.DatabaseException.html @@ -117,6 +117,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.InvalidDataException.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.InvalidDataException.html index 5ead0dc10..54ec610f6 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.InvalidDataException.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.InvalidDataException.html @@ -119,6 +119,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.html index 86138faf2..d497681c9 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.NvdCve12Handler.html @@ -457,6 +457,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.html index be1ebc99d..94734de4d 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.NvdCve20Handler.html @@ -896,6 +896,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.AbstractUpdateTask.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.AbstractUpdateTask.html index 3ef20ffee..1e86e6991 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.AbstractUpdateTask.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.AbstractUpdateTask.html @@ -523,6 +523,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.BatchUpdateTask.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.BatchUpdateTask.html index e02e03a65..64818e70a 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.BatchUpdateTask.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.BatchUpdateTask.html @@ -453,6 +453,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.DataStoreMetaInfo.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.DataStoreMetaInfo.html index 44a713842..be86c3e2b 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.DataStoreMetaInfo.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.DataStoreMetaInfo.html @@ -428,6 +428,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.DatabaseUpdater.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.DatabaseUpdater.html index e60ab855f..6a4f0f271 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.DatabaseUpdater.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.DatabaseUpdater.html @@ -210,6 +210,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.NvdCveInfo.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.NvdCveInfo.html index 2dc6740e9..ccd226ad6 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.NvdCveInfo.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.NvdCveInfo.html @@ -278,6 +278,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.StandardUpdateTask.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.StandardUpdateTask.html index aafbc4ab6..35128afff 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.StandardUpdateTask.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.StandardUpdateTask.html @@ -481,6 +481,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.UpdateTask.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.UpdateTask.html index a775987a5..e5050696d 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.UpdateTask.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.UpdateTask.html @@ -121,6 +121,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.UpdateTaskFactory.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.UpdateTaskFactory.html index d25dc6533..47d704bc3 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.UpdateTaskFactory.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.UpdateTaskFactory.html @@ -132,6 +132,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.Updateable.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.Updateable.html index 4a309a6c5..36d613d43 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.Updateable.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.update.Updateable.html @@ -352,6 +352,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Dependency.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Dependency.html index b1905c2d8..d3cee5b17 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Dependency.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Dependency.html @@ -99,7 +99,7 @@ <td class="src"><pre class="src"> <span class="comment"> * @author Jeremy Long (jeremy.long@owasp.org)</span></pre></td></tr> <tr> <td class="numLine"> 41</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 42</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> Dependency <span class="keyword">implements</span> Comparable<Dependency> {</pre></td></tr> +<tr> <td class="numLineCover"> 42</td> <td class="nbHitsCovered"> 26</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> Dependency <span class="keyword">implements</span> Comparable<Dependency> {</pre></td></tr> <tr> <td class="numLine"> 43</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 44</td> <td class="nbHits"> </td> @@ -190,13 +190,13 @@ <td class="src"><pre class="src"> <span class="comment"> * Constructs a new Dependency object.</span></pre></td></tr> <tr> <td class="numLine"> 87</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 88</td> <td class="nbHitsCovered"> 45</td> <td class="src"><pre class="src">  <span class="keyword">public</span> Dependency() {</pre></td></tr> -<tr> <td class="numLineCover"> 89</td> <td class="nbHitsCovered"> 45</td> <td class="src"><pre class="src">  vendorEvidence = <span class="keyword">new</span> EvidenceCollection();</pre></td></tr> -<tr> <td class="numLineCover"> 90</td> <td class="nbHitsCovered"> 45</td> <td class="src"><pre class="src">  productEvidence = <span class="keyword">new</span> EvidenceCollection();</pre></td></tr> -<tr> <td class="numLineCover"> 91</td> <td class="nbHitsCovered"> 45</td> <td class="src"><pre class="src">  versionEvidence = <span class="keyword">new</span> EvidenceCollection();</pre></td></tr> -<tr> <td class="numLineCover"> 92</td> <td class="nbHitsCovered"> 45</td> <td class="src"><pre class="src">  identifiers = <span class="keyword">new</span> TreeSet<Identifier>();</pre></td></tr> -<tr> <td class="numLineCover"> 93</td> <td class="nbHitsCovered"> 45</td> <td class="src"><pre class="src">  vulnerabilities = <span class="keyword">new</span> TreeSet<Vulnerability>(<span class="keyword">new</span> VulnerabilityComparator());</pre></td></tr> -<tr> <td class="numLineCover"> 94</td> <td class="nbHitsCovered"> 45</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 88</td> <td class="nbHitsCovered"> 53</td> <td class="src"><pre class="src">  <span class="keyword">public</span> Dependency() {</pre></td></tr> +<tr> <td class="numLineCover"> 89</td> <td class="nbHitsCovered"> 53</td> <td class="src"><pre class="src">  vendorEvidence = <span class="keyword">new</span> EvidenceCollection();</pre></td></tr> +<tr> <td class="numLineCover"> 90</td> <td class="nbHitsCovered"> 53</td> <td class="src"><pre class="src">  productEvidence = <span class="keyword">new</span> EvidenceCollection();</pre></td></tr> +<tr> <td class="numLineCover"> 91</td> <td class="nbHitsCovered"> 53</td> <td class="src"><pre class="src">  versionEvidence = <span class="keyword">new</span> EvidenceCollection();</pre></td></tr> +<tr> <td class="numLineCover"> 92</td> <td class="nbHitsCovered"> 53</td> <td class="src"><pre class="src">  identifiers = <span class="keyword">new</span> TreeSet<Identifier>();</pre></td></tr> +<tr> <td class="numLineCover"> 93</td> <td class="nbHitsCovered"> 53</td> <td class="src"><pre class="src">  vulnerabilities = <span class="keyword">new</span> TreeSet<Vulnerability>(<span class="keyword">new</span> VulnerabilityComparator());</pre></td></tr> +<tr> <td class="numLineCover"> 94</td> <td class="nbHitsCovered"> 53</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 95</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 96</td> <td class="nbHits"> </td> @@ -211,13 +211,13 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 101</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Dependency(File file) {</pre></td></tr> -<tr> <td class="numLineCover"> 102</td> <td class="nbHitsCovered"> 27</td> <td class="src"><pre class="src">  <span class="keyword">this</span>();</pre></td></tr> -<tr> <td class="numLineCover"> 103</td> <td class="nbHitsCovered"> 27</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.actualFilePath = file.getPath();</pre></td></tr> -<tr> <td class="numLineCover"> 104</td> <td class="nbHitsCovered"> 27</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.filePath = <span class="keyword">this</span>.actualFilePath;</pre></td></tr> -<tr> <td class="numLineCover"> 105</td> <td class="nbHitsCovered"> 27</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.fileName = file.getName();</pre></td></tr> -<tr> <td class="numLineCover"> 106</td> <td class="nbHitsCovered"> 27</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.fileExtension = FileUtils.getFileExtension(fileName);</pre></td></tr> -<tr> <td class="numLineCover"> 107</td> <td class="nbHitsCovered"> 27</td> <td class="src"><pre class="src">  determineHashes(file);</pre></td></tr> -<tr> <td class="numLineCover"> 108</td> <td class="nbHitsCovered"> 27</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 102</td> <td class="nbHitsCovered"> 35</td> <td class="src"><pre class="src">  <span class="keyword">this</span>();</pre></td></tr> +<tr> <td class="numLineCover"> 103</td> <td class="nbHitsCovered"> 35</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.actualFilePath = file.getPath();</pre></td></tr> +<tr> <td class="numLineCover"> 104</td> <td class="nbHitsCovered"> 35</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.filePath = <span class="keyword">this</span>.actualFilePath;</pre></td></tr> +<tr> <td class="numLineCover"> 105</td> <td class="nbHitsCovered"> 35</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.fileName = file.getName();</pre></td></tr> +<tr> <td class="numLineCover"> 106</td> <td class="nbHitsCovered"> 35</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.fileExtension = FileUtils.getFileExtension(fileName);</pre></td></tr> +<tr> <td class="numLineCover"> 107</td> <td class="nbHitsCovered"> 35</td> <td class="src"><pre class="src">  determineHashes(file);</pre></td></tr> +<tr> <td class="numLineCover"> 108</td> <td class="nbHitsCovered"> 35</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 109</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 110</td> <td class="nbHits"> </td> @@ -232,7 +232,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 115</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> String getFileName() {</pre></td></tr> -<tr> <td class="numLineCover"> 116</td> <td class="nbHitsCovered"> 91</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">this</span>.fileName;</pre></td></tr> +<tr> <td class="numLineCover"> 116</td> <td class="nbHitsCovered"> 160</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">this</span>.fileName;</pre></td></tr> <tr> <td class="numLine"> 117</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 118</td> <td class="nbHits"> </td> @@ -249,8 +249,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 124</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> setFileName(String fileName) {</pre></td></tr> -<tr> <td class="numLineCover"> 125</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.fileName = fileName;</pre></td></tr> -<tr> <td class="numLineCover"> 126</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 125</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.fileName = fileName;</pre></td></tr> +<tr> <td class="numLineCover"> 126</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 127</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 128</td> <td class="nbHits"> </td> @@ -281,7 +281,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 142</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> String getActualFilePath() {</pre></td></tr> -<tr> <td class="numLineCover"> 143</td> <td class="nbHitsCovered"> 82</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">this</span>.actualFilePath;</pre></td></tr> +<tr> <td class="numLineCover"> 143</td> <td class="nbHitsCovered"> 142</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">this</span>.actualFilePath;</pre></td></tr> <tr> <td class="numLine"> 144</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 145</td> <td class="nbHits"> </td> @@ -298,8 +298,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 151</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> setFilePath(String filePath) {</pre></td></tr> -<tr> <td class="numLineCover"> 152</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.filePath = filePath;</pre></td></tr> -<tr> <td class="numLineCover"> 153</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 152</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.filePath = filePath;</pre></td></tr> +<tr> <td class="numLineCover"> 153</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 154</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 155</td> <td class="nbHits"> </td> @@ -318,7 +318,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 162</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> String getFilePath() {</pre></td></tr> -<tr> <td class="numLineCover"> 163</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">this</span>.filePath;</pre></td></tr> +<tr> <td class="numLineCover"> 163</td> <td class="nbHitsCovered"> 17</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">this</span>.filePath;</pre></td></tr> <tr> <td class="numLine"> 164</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 165</td> <td class="nbHits"> </td> @@ -351,7 +351,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 180</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> String getFileExtension() {</pre></td></tr> -<tr> <td class="numLineCover"> 181</td> <td class="nbHitsCovered"> 31</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">this</span>.fileExtension;</pre></td></tr> +<tr> <td class="numLineCover"> 181</td> <td class="nbHitsCovered"> 80</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">this</span>.fileExtension;</pre></td></tr> <tr> <td class="numLine"> 182</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 183</td> <td class="nbHits"> </td> @@ -385,8 +385,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 198</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> setMd5sum(String md5sum) {</pre></td></tr> -<tr> <td class="numLineCover"> 199</td> <td class="nbHitsCovered"> 28</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.md5sum = md5sum;</pre></td></tr> -<tr> <td class="numLineCover"> 200</td> <td class="nbHitsCovered"> 28</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 199</td> <td class="nbHitsCovered"> 36</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.md5sum = md5sum;</pre></td></tr> +<tr> <td class="numLineCover"> 200</td> <td class="nbHitsCovered"> 36</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 201</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 202</td> <td class="nbHits"> </td> @@ -418,8 +418,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 216</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> setSha1sum(String sha1sum) {</pre></td></tr> -<tr> <td class="numLineCover"> 217</td> <td class="nbHitsCovered"> 28</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.sha1sum = sha1sum;</pre></td></tr> -<tr> <td class="numLineCover"> 218</td> <td class="nbHitsCovered"> 28</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 217</td> <td class="nbHitsCovered"> 36</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.sha1sum = sha1sum;</pre></td></tr> +<tr> <td class="numLineCover"> 218</td> <td class="nbHitsCovered"> 36</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 219</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 220</td> <td class="nbHits"> </td> @@ -434,7 +434,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 225</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Set<Identifier> getIdentifiers() {</pre></td></tr> -<tr> <td class="numLineCover"> 226</td> <td class="nbHitsCovered"> 78</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">this</span>.identifiers;</pre></td></tr> +<tr> <td class="numLineCover"> 226</td> <td class="nbHitsCovered"> 125</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">this</span>.identifiers;</pre></td></tr> <tr> <td class="numLine"> 227</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 228</td> <td class="nbHits"> </td> @@ -492,8 +492,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 257</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> addIdentifier(Identifier identifier) {</pre></td></tr> -<tr> <td class="numLineCover"> 258</td> <td class="nbHitsCovered"> 60</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.identifiers.add(identifier);</pre></td></tr> -<tr> <td class="numLineCover"> 259</td> <td class="nbHitsCovered"> 60</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 258</td> <td class="nbHitsCovered"> 88</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.identifiers.add(identifier);</pre></td></tr> +<tr> <td class="numLineCover"> 259</td> <td class="nbHitsCovered"> 88</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 260</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 261</td> <td class="nbHits"> </td> @@ -542,7 +542,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 284</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> EvidenceCollection getVendorEvidence() {</pre></td></tr> -<tr> <td class="numLineCover"> 285</td> <td class="nbHitsCovered"> 347</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">this</span>.vendorEvidence;</pre></td></tr> +<tr> <td class="numLineCover"> 285</td> <td class="nbHitsCovered"> 451</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">this</span>.vendorEvidence;</pre></td></tr> <tr> <td class="numLine"> 286</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 287</td> <td class="nbHits"> </td> @@ -559,7 +559,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 293</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> EvidenceCollection getProductEvidence() {</pre></td></tr> -<tr> <td class="numLineCover"> 294</td> <td class="nbHitsCovered"> 902</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">this</span>.productEvidence;</pre></td></tr> +<tr> <td class="numLineCover"> 294</td> <td class="nbHitsCovered"> 1080</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">this</span>.productEvidence;</pre></td></tr> <tr> <td class="numLine"> 295</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 296</td> <td class="nbHits"> </td> @@ -576,7 +576,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 302</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> EvidenceCollection getVersionEvidence() {</pre></td></tr> -<tr> <td class="numLineCover"> 303</td> <td class="nbHitsCovered"> 246</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">this</span>.versionEvidence;</pre></td></tr> +<tr> <td class="numLineCover"> 303</td> <td class="nbHitsCovered"> 328</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">this</span>.versionEvidence;</pre></td></tr> <tr> <td class="numLine"> 304</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 305</td> <td class="nbHits"> </td> @@ -585,7 +585,7 @@ <td class="src"><pre class="src"> <span class="comment"> * A list of exceptions that occurred during analysis of this dependency.</span></pre></td></tr> <tr> <td class="numLine"> 307</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 308</td> <td class="nbHitsCovered"> 45</td> <td class="src"><pre class="src">  <span class="keyword">private</span> List<Exception> analysisExceptions = <span class="keyword">new</span> ArrayList<Exception>();</pre></td></tr> +<tr> <td class="numLineCover"> 308</td> <td class="nbHitsCovered"> 53</td> <td class="src"><pre class="src">  <span class="keyword">private</span> List<Exception> analysisExceptions = <span class="keyword">new</span> ArrayList<Exception>();</pre></td></tr> <tr> <td class="numLine"> 309</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 310</td> <td class="nbHits"> </td> @@ -739,7 +739,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 390</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> SortedSet<Vulnerability> getVulnerabilities() {</pre></td></tr> -<tr> <td class="numLineCover"> 391</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  <span class="keyword">return</span> vulnerabilities;</pre></td></tr> +<tr> <td class="numLineCover"> 391</td> <td class="nbHitsCovered"> 17</td> <td class="src"><pre class="src">  <span class="keyword">return</span> vulnerabilities;</pre></td></tr> <tr> <td class="numLine"> 392</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 393</td> <td class="nbHits"> </td> @@ -772,12 +772,12 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 408</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> determineHashes(File file) {</pre></td></tr> -<tr> <td class="numLineCover"> 409</td> <td class="nbHitsCovered"> 27</td> <td class="src"><pre class="src">  String md5 = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 410</td> <td class="nbHitsCovered"> 27</td> <td class="src"><pre class="src">  String sha1 = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 409</td> <td class="nbHitsCovered"> 35</td> <td class="src"><pre class="src">  String md5 = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 410</td> <td class="nbHitsCovered"> 35</td> <td class="src"><pre class="src">  String sha1 = <span class="keyword">null</span>;</pre></td></tr> <tr> <td class="numLine"> 411</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 412</td> <td class="nbHitsCovered"> 27</td> <td class="src"><pre class="src">  md5 = Checksum.getMD5Checksum(file);</pre></td></tr> -<tr> <td class="numLineCover"> 413</td> <td class="nbHitsCovered"> 27</td> <td class="src"><pre class="src">  sha1 = Checksum.getSHA1Checksum(file);</pre></td></tr> +<tr> <td class="numLineCover"> 412</td> <td class="nbHitsCovered"> 35</td> <td class="src"><pre class="src">  md5 = Checksum.getMD5Checksum(file);</pre></td></tr> +<tr> <td class="numLineCover"> 413</td> <td class="nbHitsCovered"> 35</td> <td class="src"><pre class="src">  sha1 = Checksum.getSHA1Checksum(file);</pre></td></tr> <tr> <td class="numLineCover"> 414</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"> 415</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 read '%s' to determine hashes."</span>, file.getName());</span></pre></td></tr> <tr> <td class="numLineCover"> 416</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Dependency.<span class="keyword">class</span>.getName()).log(Level.WARNING, msg);</span></pre></td></tr> @@ -786,10 +786,10 @@ <tr> <td class="numLineCover"> 419</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String msg = <span class="string">"Unable to use MD5 of SHA1 checksums."</span>;</span></pre></td></tr> <tr> <td class="numLineCover"> 420</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Dependency.<span class="keyword">class</span>.getName()).log(Level.WARNING, msg);</span></pre></td></tr> <tr> <td class="numLineCover"> 421</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Dependency.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="keyword">null</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 422</td> <td class="nbHitsCovered"> 27</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 423</td> <td class="nbHitsCovered"> 27</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.setMd5sum(md5);</pre></td></tr> -<tr> <td class="numLineCover"> 424</td> <td class="nbHitsCovered"> 27</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.setSha1sum(sha1);</pre></td></tr> -<tr> <td class="numLineCover"> 425</td> <td class="nbHitsCovered"> 27</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 422</td> <td class="nbHitsCovered"> 35</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 423</td> <td class="nbHitsCovered"> 35</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.setMd5sum(md5);</pre></td></tr> +<tr> <td class="numLineCover"> 424</td> <td class="nbHitsCovered"> 35</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.setSha1sum(sha1);</pre></td></tr> +<tr> <td class="numLineCover"> 425</td> <td class="nbHitsCovered"> 35</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 426</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 427</td> <td class="nbHits"> </td> @@ -812,7 +812,7 @@ <td class="src"><pre class="src"> <span class="comment"> * A collection of related dependencies.</span></pre></td></tr> <tr> <td class="numLine"> 437</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 438</td> <td class="nbHitsCovered"> 45</td> <td class="src"><pre class="src">  <span class="keyword">private</span> Set<Dependency> relatedDependencies = <span class="keyword">new</span> TreeSet<Dependency>();</pre></td></tr> +<tr> <td class="numLineCover"> 438</td> <td class="nbHitsCovered"> 53</td> <td class="src"><pre class="src">  <span class="keyword">private</span> Set<Dependency> relatedDependencies = <span class="keyword">new</span> TreeSet<Dependency>();</pre></td></tr> <tr> <td class="numLine"> 439</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 440</td> <td class="nbHits"> </td> @@ -880,7 +880,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 474</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">int</span> compareTo(Dependency o) {</pre></td></tr> -<tr> <td class="numLineCover"> 475</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">this</span>.getFileName().compareToIgnoreCase(o.getFileName());</pre></td></tr> +<tr> <td class="numLineCover"> 475</td> <td class="nbHitsCovered"> 26</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">this</span>.getFileName().compareToIgnoreCase(o.getFileName());</pre></td></tr> <tr> <td class="numLine"> 476</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 477</td> <td class="nbHits"> </td> @@ -993,23 +993,23 @@ <td class="src"><pre class="src">  @Override</pre></td></tr> <tr> <td class="numLine"> 549</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">int</span> hashCode() {</pre></td></tr> -<tr> <td class="numLineCover"> 550</td> <td class="nbHitsCovered"> 29</td> <td class="src"><pre class="src">  <span class="keyword">int</span> hash = 3;</pre></td></tr> -<tr> <td class="numLineCover"> 551</td> <td class="nbHitsUncovered"><a title="Line 551: Conditional coverage 50% (1/2)."> 29</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 551: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.actualFilePath != <span class="keyword">null</span> ? <span class="keyword">this</span>.actualFilePath.hashCode() : 0);</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 552</td> <td class="nbHitsUncovered"><a title="Line 552: Conditional coverage 50% (1/2)."> 29</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 552: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.filePath != <span class="keyword">null</span> ? <span class="keyword">this</span>.filePath.hashCode() : 0);</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 553</td> <td class="nbHitsUncovered"><a title="Line 553: Conditional coverage 50% (1/2)."> 29</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 553: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.fileName != <span class="keyword">null</span> ? <span class="keyword">this</span>.fileName.hashCode() : 0);</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 554</td> <td class="nbHitsUncovered"><a title="Line 554: Conditional coverage 50% (1/2)."> 29</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 554: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.fileExtension != <span class="keyword">null</span> ? <span class="keyword">this</span>.fileExtension.hashCode() : 0);</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 555</td> <td class="nbHitsUncovered"><a title="Line 555: Conditional coverage 50% (1/2)."> 29</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 555: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.md5sum != <span class="keyword">null</span> ? <span class="keyword">this</span>.md5sum.hashCode() : 0);</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 556</td> <td class="nbHitsUncovered"><a title="Line 556: Conditional coverage 50% (1/2)."> 29</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 556: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.sha1sum != <span class="keyword">null</span> ? <span class="keyword">this</span>.sha1sum.hashCode() : 0);</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 557</td> <td class="nbHitsUncovered"><a title="Line 557: Conditional coverage 50% (1/2)."> 29</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 557: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.identifiers != <span class="keyword">null</span> ? <span class="keyword">this</span>.identifiers.hashCode() : 0);</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 558</td> <td class="nbHitsUncovered"><a title="Line 558: Conditional coverage 50% (1/2)."> 29</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 558: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.vendorEvidence != <span class="keyword">null</span> ? <span class="keyword">this</span>.vendorEvidence.hashCode() : 0);</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 559</td> <td class="nbHitsUncovered"><a title="Line 559: Conditional coverage 50% (1/2)."> 29</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 559: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.productEvidence != <span class="keyword">null</span> ? <span class="keyword">this</span>.productEvidence.hashCode() : 0);</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 560</td> <td class="nbHitsUncovered"><a title="Line 560: Conditional coverage 50% (1/2)."> 29</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 560: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.versionEvidence != <span class="keyword">null</span> ? <span class="keyword">this</span>.versionEvidence.hashCode() : 0);</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 561</td> <td class="nbHitsUncovered"><a title="Line 561: Conditional coverage 50% (1/2)."> 29</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 561: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.analysisExceptions != <span class="keyword">null</span> ? <span class="keyword">this</span>.analysisExceptions.hashCode() : 0);</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 562</td> <td class="nbHitsCovered"><a title="Line 562: Conditional coverage 100% (2/2)."> 29</a></td> <td class="src"><pre class="src"> <a title="Line 562: Conditional coverage 100% (2/2)."> hash = 47 * hash + (<span class="keyword">this</span>.description != <span class="keyword">null</span> ? <span class="keyword">this</span>.description.hashCode() : 0);</a></pre></td></tr> -<tr> <td class="numLineCover"> 563</td> <td class="nbHitsCovered"><a title="Line 563: Conditional coverage 100% (2/2)."> 29</a></td> <td class="src"><pre class="src"> <a title="Line 563: Conditional coverage 100% (2/2)."> hash = 47 * hash + (<span class="keyword">this</span>.license != <span class="keyword">null</span> ? <span class="keyword">this</span>.license.hashCode() : 0);</a></pre></td></tr> -<tr> <td class="numLineCover"> 564</td> <td class="nbHitsUncovered"><a title="Line 564: Conditional coverage 50% (1/2)."> 29</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 564: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.vulnerabilities != <span class="keyword">null</span> ? <span class="keyword">this</span>.vulnerabilities.hashCode() : 0);</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 565</td> <td class="nbHitsUncovered"><a title="Line 565: Conditional coverage 50% (1/2)."> 29</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 565: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.relatedDependencies != <span class="keyword">null</span> ? <span class="keyword">this</span>.relatedDependencies.hashCode() : 0);</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 566</td> <td class="nbHitsCovered"> 29</td> <td class="src"><pre class="src">  <span class="keyword">return</span> hash;</pre></td></tr> +<tr> <td class="numLineCover"> 550</td> <td class="nbHitsCovered"> 90</td> <td class="src"><pre class="src">  <span class="keyword">int</span> hash = 3;</pre></td></tr> +<tr> <td class="numLineCover"> 551</td> <td class="nbHitsUncovered"><a title="Line 551: Conditional coverage 50% (1/2)."> 90</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 551: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.actualFilePath != <span class="keyword">null</span> ? <span class="keyword">this</span>.actualFilePath.hashCode() : 0);</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 552</td> <td class="nbHitsUncovered"><a title="Line 552: Conditional coverage 50% (1/2)."> 90</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 552: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.filePath != <span class="keyword">null</span> ? <span class="keyword">this</span>.filePath.hashCode() : 0);</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 553</td> <td class="nbHitsUncovered"><a title="Line 553: Conditional coverage 50% (1/2)."> 90</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 553: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.fileName != <span class="keyword">null</span> ? <span class="keyword">this</span>.fileName.hashCode() : 0);</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 554</td> <td class="nbHitsUncovered"><a title="Line 554: Conditional coverage 50% (1/2)."> 90</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 554: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.fileExtension != <span class="keyword">null</span> ? <span class="keyword">this</span>.fileExtension.hashCode() : 0);</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 555</td> <td class="nbHitsUncovered"><a title="Line 555: Conditional coverage 50% (1/2)."> 90</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 555: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.md5sum != <span class="keyword">null</span> ? <span class="keyword">this</span>.md5sum.hashCode() : 0);</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 556</td> <td class="nbHitsUncovered"><a title="Line 556: Conditional coverage 50% (1/2)."> 90</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 556: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.sha1sum != <span class="keyword">null</span> ? <span class="keyword">this</span>.sha1sum.hashCode() : 0);</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 557</td> <td class="nbHitsUncovered"><a title="Line 557: Conditional coverage 50% (1/2)."> 90</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 557: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.identifiers != <span class="keyword">null</span> ? <span class="keyword">this</span>.identifiers.hashCode() : 0);</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 558</td> <td class="nbHitsUncovered"><a title="Line 558: Conditional coverage 50% (1/2)."> 90</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 558: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.vendorEvidence != <span class="keyword">null</span> ? <span class="keyword">this</span>.vendorEvidence.hashCode() : 0);</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 559</td> <td class="nbHitsUncovered"><a title="Line 559: Conditional coverage 50% (1/2)."> 90</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 559: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.productEvidence != <span class="keyword">null</span> ? <span class="keyword">this</span>.productEvidence.hashCode() : 0);</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 560</td> <td class="nbHitsUncovered"><a title="Line 560: Conditional coverage 50% (1/2)."> 90</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 560: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.versionEvidence != <span class="keyword">null</span> ? <span class="keyword">this</span>.versionEvidence.hashCode() : 0);</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 561</td> <td class="nbHitsUncovered"><a title="Line 561: Conditional coverage 50% (1/2)."> 90</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 561: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.analysisExceptions != <span class="keyword">null</span> ? <span class="keyword">this</span>.analysisExceptions.hashCode() : 0);</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 562</td> <td class="nbHitsCovered"><a title="Line 562: Conditional coverage 100% (2/2)."> 90</a></td> <td class="src"><pre class="src"> <a title="Line 562: Conditional coverage 100% (2/2)."> hash = 47 * hash + (<span class="keyword">this</span>.description != <span class="keyword">null</span> ? <span class="keyword">this</span>.description.hashCode() : 0);</a></pre></td></tr> +<tr> <td class="numLineCover"> 563</td> <td class="nbHitsCovered"><a title="Line 563: Conditional coverage 100% (2/2)."> 90</a></td> <td class="src"><pre class="src"> <a title="Line 563: Conditional coverage 100% (2/2)."> hash = 47 * hash + (<span class="keyword">this</span>.license != <span class="keyword">null</span> ? <span class="keyword">this</span>.license.hashCode() : 0);</a></pre></td></tr> +<tr> <td class="numLineCover"> 564</td> <td class="nbHitsUncovered"><a title="Line 564: Conditional coverage 50% (1/2)."> 90</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 564: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.vulnerabilities != <span class="keyword">null</span> ? <span class="keyword">this</span>.vulnerabilities.hashCode() : 0);</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 565</td> <td class="nbHitsUncovered"><a title="Line 565: Conditional coverage 50% (1/2)."> 90</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 565: Conditional coverage 50% (1/2)."> hash = 47 * hash + (<span class="keyword">this</span>.relatedDependencies != <span class="keyword">null</span> ? <span class="keyword">this</span>.relatedDependencies.hashCode() : 0);</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 566</td> <td class="nbHitsCovered"> 90</td> <td class="src"><pre class="src">  <span class="keyword">return</span> hash;</pre></td></tr> <tr> <td class="numLine"> 567</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 568</td> <td class="nbHits"> </td> @@ -1037,6 +1037,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Evidence.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Evidence.html index 23b90375d..e356dc79e 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Evidence.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Evidence.html @@ -68,7 +68,7 @@ <td class="src"><pre class="src"> <span class="comment"> * @author Jeremy Long (jeremy.long@owasp.org)</span></pre></td></tr> <tr> <td class="numLine"> 25</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 26</td> <td class="nbHitsCovered"> 122292</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> Evidence <span class="keyword">implements</span> Comparable<Evidence> {</pre></td></tr> +<tr> <td class="numLineCover"> 26</td> <td class="nbHitsCovered"> 129498</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> Evidence <span class="keyword">implements</span> Comparable<Evidence> {</pre></td></tr> <tr> <td class="numLine"> 27</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 28</td> <td class="nbHits"> </td> @@ -77,7 +77,7 @@ <td class="src"><pre class="src"> <span class="comment"> * The confidence that the evidence is "high" quality.</span></pre></td></tr> <tr> <td class="numLine"> 30</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 31</td> <td class="nbHitsCovered"> 56</td> <td class="src"><pre class="src">  <span class="keyword">public</span> enum Confidence {</pre></td></tr> +<tr> <td class="numLineCover"> 31</td> <td class="nbHitsCovered"> 76</td> <td class="src"><pre class="src">  <span class="keyword">public</span> enum Confidence {</pre></td></tr> <tr> <td class="numLine"> 32</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 33</td> <td class="nbHits"> </td> @@ -138,12 +138,12 @@ <td class="src"><pre class="src"> <span class="comment"> * @param confidence the confidence of the evidence.</span></pre></td></tr> <tr> <td class="numLine"> 64</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 65</td> <td class="nbHitsCovered"> 67264</td> <td class="src"><pre class="src">  <span class="keyword">public</span> Evidence(String source, String name, String value, Confidence confidence) {</pre></td></tr> -<tr> <td class="numLineCover"> 66</td> <td class="nbHitsCovered"> 67264</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.source = source;</pre></td></tr> -<tr> <td class="numLineCover"> 67</td> <td class="nbHitsCovered"> 67264</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.name = name;</pre></td></tr> -<tr> <td class="numLineCover"> 68</td> <td class="nbHitsCovered"> 67264</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.value = value;</pre></td></tr> -<tr> <td class="numLineCover"> 69</td> <td class="nbHitsCovered"> 67264</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.confidence = confidence;</pre></td></tr> -<tr> <td class="numLineCover"> 70</td> <td class="nbHitsCovered"> 67264</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 65</td> <td class="nbHitsCovered"> 70882</td> <td class="src"><pre class="src">  <span class="keyword">public</span> Evidence(String source, String name, String value, Confidence confidence) {</pre></td></tr> +<tr> <td class="numLineCover"> 66</td> <td class="nbHitsCovered"> 70882</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.source = source;</pre></td></tr> +<tr> <td class="numLineCover"> 67</td> <td class="nbHitsCovered"> 70882</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.name = name;</pre></td></tr> +<tr> <td class="numLineCover"> 68</td> <td class="nbHitsCovered"> 70882</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.value = value;</pre></td></tr> +<tr> <td class="numLineCover"> 69</td> <td class="nbHitsCovered"> 70882</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.confidence = confidence;</pre></td></tr> +<tr> <td class="numLineCover"> 70</td> <td class="nbHitsCovered"> 70882</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 71</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 72</td> <td class="nbHits"> </td> @@ -248,8 +248,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 125</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> String getValue() {</pre></td></tr> -<tr> <td class="numLineCover"> 126</td> <td class="nbHitsCovered"> 6305</td> <td class="src"><pre class="src">  used = <span class="keyword">true</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 127</td> <td class="nbHitsCovered"> 6305</td> <td class="src"><pre class="src">  <span class="keyword">return</span> value;</pre></td></tr> +<tr> <td class="numLineCover"> 126</td> <td class="nbHitsCovered"> 6725</td> <td class="src"><pre class="src">  used = <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 127</td> <td class="nbHitsCovered"> 6725</td> <td class="src"><pre class="src">  <span class="keyword">return</span> value;</pre></td></tr> <tr> <td class="numLine"> 128</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 129</td> <td class="nbHits"> </td> @@ -272,8 +272,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 138</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> String getValue(Boolean setUsed) {</pre></td></tr> -<tr> <td class="numLineCover"> 139</td> <td class="nbHitsUncovered"><a title="Line 139: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 166</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 139: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> used = used || setUsed;</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 140</td> <td class="nbHitsCovered"> 166</td> <td class="src"><pre class="src">  <span class="keyword">return</span> value;</pre></td></tr> +<tr> <td class="numLineCover"> 139</td> <td class="nbHitsUncovered"><a title="Line 139: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 210</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 139: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> used = used || setUsed;</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 140</td> <td class="nbHitsCovered"> 210</td> <td class="src"><pre class="src">  <span class="keyword">return</span> value;</pre></td></tr> <tr> <td class="numLine"> 141</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 142</td> <td class="nbHits"> </td> @@ -314,7 +314,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 161</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> isUsed() {</pre></td></tr> -<tr> <td class="numLineCover"> 162</td> <td class="nbHitsCovered"> 8837</td> <td class="src"><pre class="src">  <span class="keyword">return</span> used;</pre></td></tr> +<tr> <td class="numLineCover"> 162</td> <td class="nbHitsCovered"> 9273</td> <td class="src"><pre class="src">  <span class="keyword">return</span> used;</pre></td></tr> <tr> <td class="numLine"> 163</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 164</td> <td class="nbHits"> </td> @@ -355,7 +355,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 183</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Confidence getConfidence() {</pre></td></tr> -<tr> <td class="numLineCover"> 184</td> <td class="nbHitsCovered"> 2249</td> <td class="src"><pre class="src">  <span class="keyword">return</span> confidence;</pre></td></tr> +<tr> <td class="numLineCover"> 184</td> <td class="nbHitsCovered"> 2551</td> <td class="src"><pre class="src">  <span class="keyword">return</span> confidence;</pre></td></tr> <tr> <td class="numLine"> 185</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 186</td> <td class="nbHits"> </td> @@ -471,11 +471,11 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 249</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">int</span> compareTo(Evidence o) {</pre></td></tr> -<tr> <td class="numLineCover"> 250</td> <td class="nbHitsCovered"><a title="Line 250: Conditional coverage 100% (2/2)."> 122292</a></td> <td class="src"><pre class="src"> <a title="Line 250: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (source.equals(o.source)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 251</td> <td class="nbHitsCovered"><a title="Line 251: Conditional coverage 100% (2/2)."> 95835</a></td> <td class="src"><pre class="src"> <a title="Line 251: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (name.equals(o.name)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 252</td> <td class="nbHitsCovered"><a title="Line 252: Conditional coverage 100% (2/2)."> 95561</a></td> <td class="src"><pre class="src"> <a title="Line 252: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (value.equals(o.value)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 253</td> <td class="nbHitsCovered"><a title="Line 253: Conditional coverage 100% (2/2)."> 66918</a></td> <td class="src"><pre class="src"> <a title="Line 253: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (confidence.equals(o.confidence)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 254</td> <td class="nbHitsCovered"> 66913</td> <td class="src"><pre class="src">  <span class="keyword">return</span> 0; <span class="comment">//they are equal</span></pre></td></tr> +<tr> <td class="numLineCover"> 250</td> <td class="nbHitsCovered"><a title="Line 250: Conditional coverage 100% (2/2)."> 129498</a></td> <td class="src"><pre class="src"> <a title="Line 250: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (source.equals(o.source)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 251</td> <td class="nbHitsCovered"><a title="Line 251: Conditional coverage 100% (2/2)."> 99433</a></td> <td class="src"><pre class="src"> <a title="Line 251: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (name.equals(o.name)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 252</td> <td class="nbHitsCovered"><a title="Line 252: Conditional coverage 100% (2/2)."> 99127</a></td> <td class="src"><pre class="src"> <a title="Line 252: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (value.equals(o.value)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 253</td> <td class="nbHitsCovered"><a title="Line 253: Conditional coverage 100% (2/2)."> 70476</a></td> <td class="src"><pre class="src"> <a title="Line 253: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (confidence.equals(o.confidence)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 254</td> <td class="nbHitsCovered"> 70471</td> <td class="src"><pre class="src">  <span class="keyword">return</span> 0; <span class="comment">//they are equal</span></pre></td></tr> <tr> <td class="numLine"> 255</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> <tr> <td class="numLineCover"> 256</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  <span class="keyword">return</span> confidence.compareTo(o.confidence);</pre></td></tr> @@ -483,17 +483,17 @@ <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 258</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 259</td> <td class="nbHitsCovered"> 28643</td> <td class="src"><pre class="src">  <span class="keyword">return</span> value.compareToIgnoreCase(o.value);</pre></td></tr> +<tr> <td class="numLineCover"> 259</td> <td class="nbHitsCovered"> 28651</td> <td class="src"><pre class="src">  <span class="keyword">return</span> value.compareToIgnoreCase(o.value);</pre></td></tr> <tr> <td class="numLine"> 260</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 261</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 262</td> <td class="nbHitsCovered"> 274</td> <td class="src"><pre class="src">  <span class="keyword">return</span> name.compareToIgnoreCase(o.name);</pre></td></tr> +<tr> <td class="numLineCover"> 262</td> <td class="nbHitsCovered"> 306</td> <td class="src"><pre class="src">  <span class="keyword">return</span> name.compareToIgnoreCase(o.name);</pre></td></tr> <tr> <td class="numLine"> 263</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 264</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 265</td> <td class="nbHitsCovered"> 26457</td> <td class="src"><pre class="src">  <span class="keyword">return</span> source.compareToIgnoreCase(o.source);</pre></td></tr> +<tr> <td class="numLineCover"> 265</td> <td class="nbHitsCovered"> 30065</td> <td class="src"><pre class="src">  <span class="keyword">return</span> source.compareToIgnoreCase(o.source);</pre></td></tr> <tr> <td class="numLine"> 266</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 267</td> <td class="nbHits"> </td> @@ -502,6 +502,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.EvidenceCollection.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.EvidenceCollection.html index 51f079280..b651b16d7 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.EvidenceCollection.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.EvidenceCollection.html @@ -112,10 +112,10 @@ <td class="src"><pre class="src"> <span class="comment"> * collection.</span></pre></td></tr> <tr> <td class="numLine"> 45</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 46</td> <td class="nbHitsCovered"> 388</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Filter<Evidence> HIGHEST_CONFIDENCE = <span class="keyword">new</span> Filter<Evidence>() {</pre></td></tr> +<tr> <td class="numLineCover"> 46</td> <td class="nbHitsCovered"> 442</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Filter<Evidence> HIGHEST_CONFIDENCE = <span class="keyword">new</span> Filter<Evidence>() {</pre></td></tr> <tr> <td class="numLine"> 47</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> passes(Evidence evidence) {</pre></td></tr> -<tr> <td class="numLineCover"> 48</td> <td class="nbHitsCovered"><a title="Line 48: Conditional coverage 100% (2/2)."> 387</a></td> <td class="src"><pre class="src"> <a title="Line 48: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> evidence.getConfidence() == Evidence.Confidence.HIGHEST;</a></pre></td></tr> +<tr> <td class="numLineCover"> 48</td> <td class="nbHitsCovered"><a title="Line 48: Conditional coverage 100% (2/2)."> 441</a></td> <td class="src"><pre class="src"> <a title="Line 48: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> evidence.getConfidence() == Evidence.Confidence.HIGHEST;</a></pre></td></tr> <tr> <td class="numLine"> 49</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 50</td> <td class="nbHits"> </td> @@ -128,10 +128,10 @@ <td class="src"><pre class="src"> <span class="comment"> * collection.</span></pre></td></tr> <tr> <td class="numLine"> 54</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 55</td> <td class="nbHitsCovered"> 385</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Filter<Evidence> HIGH_CONFIDENCE = <span class="keyword">new</span> Filter<Evidence>() {</pre></td></tr> +<tr> <td class="numLineCover"> 55</td> <td class="nbHitsCovered"> 439</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Filter<Evidence> HIGH_CONFIDENCE = <span class="keyword">new</span> Filter<Evidence>() {</pre></td></tr> <tr> <td class="numLine"> 56</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> passes(Evidence evidence) {</pre></td></tr> -<tr> <td class="numLineCover"> 57</td> <td class="nbHitsCovered"><a title="Line 57: Conditional coverage 100% (2/2)."> 384</a></td> <td class="src"><pre class="src"> <a title="Line 57: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> evidence.getConfidence() == Evidence.Confidence.HIGH;</a></pre></td></tr> +<tr> <td class="numLineCover"> 57</td> <td class="nbHitsCovered"><a title="Line 57: Conditional coverage 100% (2/2)."> 438</a></td> <td class="src"><pre class="src"> <a title="Line 57: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> evidence.getConfidence() == Evidence.Confidence.HIGH;</a></pre></td></tr> <tr> <td class="numLine"> 58</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 59</td> <td class="nbHits"> </td> @@ -147,7 +147,7 @@ <tr> <td class="numLineCover"> 64</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Filter<Evidence> MEDIUM_CONFIDENCE = <span class="keyword">new</span> Filter<Evidence>() {</pre></td></tr> <tr> <td class="numLine"> 65</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> passes(Evidence evidence) {</pre></td></tr> -<tr> <td class="numLineCover"> 66</td> <td class="nbHitsCovered"><a title="Line 66: Conditional coverage 100% (2/2)."> 373</a></td> <td class="src"><pre class="src"> <a title="Line 66: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> evidence.getConfidence() == Evidence.Confidence.MEDIUM;</a></pre></td></tr> +<tr> <td class="numLineCover"> 66</td> <td class="nbHitsCovered"><a title="Line 66: Conditional coverage 100% (2/2)."> 419</a></td> <td class="src"><pre class="src"> <a title="Line 66: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> evidence.getConfidence() == Evidence.Confidence.MEDIUM;</a></pre></td></tr> <tr> <td class="numLine"> 67</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 68</td> <td class="nbHits"> </td> @@ -161,7 +161,7 @@ <tr> <td class="numLineCover"> 72</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Filter<Evidence> LOW_CONFIDENCE = <span class="keyword">new</span> Filter<Evidence>() {</pre></td></tr> <tr> <td class="numLine"> 73</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> passes(Evidence evidence) {</pre></td></tr> -<tr> <td class="numLineCover"> 74</td> <td class="nbHitsCovered"><a title="Line 74: Conditional coverage 100% (2/2)."> 630</a></td> <td class="src"><pre class="src"> <a title="Line 74: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> evidence.getConfidence() == Evidence.Confidence.LOW;</a></pre></td></tr> +<tr> <td class="numLineCover"> 74</td> <td class="nbHitsCovered"><a title="Line 74: Conditional coverage 100% (2/2)."> 706</a></td> <td class="src"><pre class="src"> <a title="Line 74: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> evidence.getConfidence() == Evidence.Confidence.LOW;</a></pre></td></tr> <tr> <td class="numLine"> 75</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 76</td> <td class="nbHits"> </td> @@ -177,7 +177,7 @@ <tr> <td class="numLineCover"> 81</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Filter<Evidence> EVIDENCE_USED = <span class="keyword">new</span> Filter<Evidence>() {</pre></td></tr> <tr> <td class="numLine"> 82</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> passes(Evidence evidence) {</pre></td></tr> -<tr> <td class="numLineCover"> 83</td> <td class="nbHitsCovered"> 8778</td> <td class="src"><pre class="src">  <span class="keyword">return</span> evidence.isUsed();</pre></td></tr> +<tr> <td class="numLineCover"> 83</td> <td class="nbHitsCovered"> 9214</td> <td class="src"><pre class="src">  <span class="keyword">return</span> evidence.isUsed();</pre></td></tr> <tr> <td class="numLine"> 84</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 85</td> <td class="nbHits"> </td> @@ -200,15 +200,15 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 94</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">final</span> Iterable<Evidence> iterator(Evidence.Confidence confidence) {</pre></td></tr> -<tr> <td class="numLineCover"> 95</td> <td class="nbHitsCovered"><a title="Line 95: Conditional coverage 100% (2/2)."> 332</a></td> <td class="src"><pre class="src"> <a title="Line 95: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (confidence == Evidence.Confidence.HIGHEST) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 96</td> <td class="nbHitsCovered"> 77</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EvidenceCollection.HIGHEST_CONFIDENCE.filter(<span class="keyword">this</span>.list);</pre></td></tr> -<tr> <td class="numLineCover"> 97</td> <td class="nbHitsCovered"><a title="Line 97: Conditional coverage 100% (2/2)."> 255</a></td> <td class="src"><pre class="src"> <a title="Line 97: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (confidence == Evidence.Confidence.HIGH) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 98</td> <td class="nbHitsCovered"> 77</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EvidenceCollection.HIGH_CONFIDENCE.filter(<span class="keyword">this</span>.list);</pre></td></tr> -<tr> <td class="numLineCover"> 99</td> <td class="nbHitsCovered"><a title="Line 99: Conditional coverage 100% (2/2)."> 178</a></td> <td class="src"><pre class="src"> <a title="Line 99: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (confidence == Evidence.Confidence.MEDIUM) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 100</td> <td class="nbHitsCovered"> 75</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EvidenceCollection.MEDIUM_CONFIDENCE.filter(<span class="keyword">this</span>.list);</pre></td></tr> +<tr> <td class="numLineCover"> 95</td> <td class="nbHitsCovered"><a title="Line 95: Conditional coverage 100% (2/2)."> 448</a></td> <td class="src"><pre class="src"> <a title="Line 95: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (confidence == Evidence.Confidence.HIGHEST) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 96</td> <td class="nbHitsCovered"> 109</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EvidenceCollection.HIGHEST_CONFIDENCE.filter(<span class="keyword">this</span>.list);</pre></td></tr> +<tr> <td class="numLineCover"> 97</td> <td class="nbHitsCovered"><a title="Line 97: Conditional coverage 100% (2/2)."> 339</a></td> <td class="src"><pre class="src"> <a title="Line 97: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (confidence == Evidence.Confidence.HIGH) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 98</td> <td class="nbHitsCovered"> 109</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EvidenceCollection.HIGH_CONFIDENCE.filter(<span class="keyword">this</span>.list);</pre></td></tr> +<tr> <td class="numLineCover"> 99</td> <td class="nbHitsCovered"><a title="Line 99: Conditional coverage 100% (2/2)."> 230</a></td> <td class="src"><pre class="src"> <a title="Line 99: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (confidence == Evidence.Confidence.MEDIUM) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 100</td> <td class="nbHitsCovered"> 99</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EvidenceCollection.MEDIUM_CONFIDENCE.filter(<span class="keyword">this</span>.list);</pre></td></tr> <tr> <td class="numLine"> 101</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 102</td> <td class="nbHitsCovered"> 103</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EvidenceCollection.LOW_CONFIDENCE.filter(<span class="keyword">this</span>.list);</pre></td></tr> +<tr> <td class="numLineCover"> 102</td> <td class="nbHitsCovered"> 131</td> <td class="src"><pre class="src">  <span class="keyword">return</span> EvidenceCollection.LOW_CONFIDENCE.filter(<span class="keyword">this</span>.list);</pre></td></tr> <tr> <td class="numLine"> 103</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 104</td> <td class="nbHits"> </td> @@ -237,10 +237,10 @@ <td class="src"><pre class="src"> <span class="comment"> * Creates a new EvidenceCollection.</span></pre></td></tr> <tr> <td class="numLine"> 116</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 117</td> <td class="nbHitsCovered"> 140</td> <td class="src"><pre class="src">  <span class="keyword">public</span> EvidenceCollection() {</pre></td></tr> -<tr> <td class="numLineCover"> 118</td> <td class="nbHitsCovered"> 140</td> <td class="src"><pre class="src">  list = <span class="keyword">new</span> TreeSet<Evidence>();</pre></td></tr> -<tr> <td class="numLineCover"> 119</td> <td class="nbHitsCovered"> 140</td> <td class="src"><pre class="src">  weightedStrings = <span class="keyword">new</span> HashSet<String>();</pre></td></tr> -<tr> <td class="numLineCover"> 120</td> <td class="nbHitsCovered"> 140</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 117</td> <td class="nbHitsCovered"> 164</td> <td class="src"><pre class="src">  <span class="keyword">public</span> EvidenceCollection() {</pre></td></tr> +<tr> <td class="numLineCover"> 118</td> <td class="nbHitsCovered"> 164</td> <td class="src"><pre class="src">  list = <span class="keyword">new</span> TreeSet<Evidence>();</pre></td></tr> +<tr> <td class="numLineCover"> 119</td> <td class="nbHitsCovered"> 164</td> <td class="src"><pre class="src">  weightedStrings = <span class="keyword">new</span> HashSet<String>();</pre></td></tr> +<tr> <td class="numLineCover"> 120</td> <td class="nbHitsCovered"> 164</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 121</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 122</td> <td class="nbHits"> </td> @@ -255,8 +255,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 127</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> addEvidence(Evidence e) {</pre></td></tr> -<tr> <td class="numLineCover"> 128</td> <td class="nbHitsCovered"> 67295</td> <td class="src"><pre class="src">  list.add(e);</pre></td></tr> -<tr> <td class="numLineCover"> 129</td> <td class="nbHitsCovered"> 67295</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 128</td> <td class="nbHitsCovered"> 70895</td> <td class="src"><pre class="src">  list.add(e);</pre></td></tr> +<tr> <td class="numLineCover"> 129</td> <td class="nbHitsCovered"> 70895</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 130</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 131</td> <td class="nbHits"> </td> @@ -279,9 +279,9 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 140</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> addEvidence(String source, String name, String value, Evidence.Confidence confidence) {</pre></td></tr> -<tr> <td class="numLineCover"> 141</td> <td class="nbHitsCovered"> 67235</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Evidence e = <span class="keyword">new</span> Evidence(source, name, value, confidence);</pre></td></tr> -<tr> <td class="numLineCover"> 142</td> <td class="nbHitsCovered"> 67235</td> <td class="src"><pre class="src">  addEvidence(e);</pre></td></tr> -<tr> <td class="numLineCover"> 143</td> <td class="nbHitsCovered"> 67235</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 141</td> <td class="nbHitsCovered"> 70835</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Evidence e = <span class="keyword">new</span> Evidence(source, name, value, confidence);</pre></td></tr> +<tr> <td class="numLineCover"> 142</td> <td class="nbHitsCovered"> 70835</td> <td class="src"><pre class="src">  addEvidence(e);</pre></td></tr> +<tr> <td class="numLineCover"> 143</td> <td class="nbHitsCovered"> 70835</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 144</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 145</td> <td class="nbHits"> </td> @@ -316,8 +316,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 160</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> addWeighting(String str) {</pre></td></tr> -<tr> <td class="numLineCover"> 161</td> <td class="nbHitsCovered"> 51</td> <td class="src"><pre class="src">  weightedStrings.add(str);</pre></td></tr> -<tr> <td class="numLineCover"> 162</td> <td class="nbHitsCovered"> 51</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 161</td> <td class="nbHitsCovered"> 57</td> <td class="src"><pre class="src">  weightedStrings.add(str);</pre></td></tr> +<tr> <td class="numLineCover"> 162</td> <td class="nbHitsCovered"> 57</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 163</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 164</td> <td class="nbHits"> </td> @@ -334,7 +334,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 170</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Set<String> getWeighting() {</pre></td></tr> -<tr> <td class="numLineCover"> 171</td> <td class="nbHitsCovered"> 105</td> <td class="src"><pre class="src">  <span class="keyword">return</span> weightedStrings;</pre></td></tr> +<tr> <td class="numLineCover"> 171</td> <td class="nbHitsCovered"> 145</td> <td class="src"><pre class="src">  <span class="keyword">return</span> weightedStrings;</pre></td></tr> <tr> <td class="numLine"> 172</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 173</td> <td class="nbHits"> </td> @@ -351,7 +351,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 179</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Set<Evidence> getEvidence() {</pre></td></tr> -<tr> <td class="numLineCover"> 180</td> <td class="nbHitsCovered"> 18</td> <td class="src"><pre class="src">  <span class="keyword">return</span> list;</pre></td></tr> +<tr> <td class="numLineCover"> 180</td> <td class="nbHitsCovered"> 30</td> <td class="src"><pre class="src">  <span class="keyword">return</span> list;</pre></td></tr> <tr> <td class="numLine"> 181</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 182</td> <td class="nbHits"> </td> @@ -432,7 +432,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 227</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Iterator<Evidence> iterator() {</pre></td></tr> -<tr> <td class="numLineCover"> 228</td> <td class="nbHitsCovered"> 1142</td> <td class="src"><pre class="src">  <span class="keyword">return</span> list.iterator();</pre></td></tr> +<tr> <td class="numLineCover"> 228</td> <td class="nbHitsCovered"> 1456</td> <td class="src"><pre class="src">  <span class="keyword">return</span> list.iterator();</pre></td></tr> <tr> <td class="numLine"> 229</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 230</td> <td class="nbHits"> </td> @@ -451,23 +451,23 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 237</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> containsUsedString(String text) {</pre></td></tr> -<tr> <td class="numLineCover"> 238</td> <td class="nbHitsUncovered"><a title="Line 238: Conditional coverage 50% (1/2)."> 1127</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 238: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (text == <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 238</td> <td class="nbHitsUncovered"><a title="Line 238: Conditional coverage 50% (1/2)."> 1435</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 238: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (text == <span class="keyword">null</span>) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 239</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> <tr> <td class="numLine"> 240</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 241</td> <td class="nbHitsCovered"> 1127</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String textToTest = text.toLowerCase();</pre></td></tr> +<tr> <td class="numLineCover"> 241</td> <td class="nbHitsCovered"> 1435</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String textToTest = text.toLowerCase();</pre></td></tr> <tr> <td class="numLine"> 242</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 243</td> <td class="nbHitsCovered"><a title="Line 243: Conditional coverage 100% (2/2)."> 1127</a></td> <td class="src"><pre class="src"> <a title="Line 243: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence e : EvidenceCollection.EVIDENCE_USED.filter(<span class="keyword">this</span>)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 243</td> <td class="nbHitsCovered"><a title="Line 243: Conditional coverage 100% (2/2)."> 1435</a></td> <td class="src"><pre class="src"> <a title="Line 243: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence e : EvidenceCollection.EVIDENCE_USED.filter(<span class="keyword">this</span>)) {</a></pre></td></tr> <tr> <td class="numLine"> 244</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//TODO consider changing the regex to only compare alpha-numeric (i.e. strip everything else)</span></pre></td></tr> -<tr> <td class="numLineCover"> 245</td> <td class="nbHitsCovered"> 5798</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String value = urlCorrection(e.getValue().toLowerCase()).replaceAll(<span class="string">"[\\s_-]"</span>, <span class="string">""</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 246</td> <td class="nbHitsCovered"><a title="Line 246: Conditional coverage 100% (2/2)."> 5798</a></td> <td class="src"><pre class="src"> <a title="Line 246: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (value.contains(textToTest)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 247</td> <td class="nbHitsCovered"> 393</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 245</td> <td class="nbHitsCovered"> 6156</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String value = urlCorrection(e.getValue().toLowerCase()).replaceAll(<span class="string">"[\\s_-]"</span>, <span class="string">""</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 246</td> <td class="nbHitsCovered"><a title="Line 246: Conditional coverage 100% (2/2)."> 6156</a></td> <td class="src"><pre class="src"> <a title="Line 246: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (value.contains(textToTest)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 247</td> <td class="nbHitsCovered"> 505</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> <tr> <td class="numLine"> 248</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 249</td> <td class="nbHitsCovered"> 5405</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 250</td> <td class="nbHitsCovered"> 734</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 249</td> <td class="nbHitsCovered"> 5651</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 250</td> <td class="nbHitsCovered"> 930</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> <tr> <td class="numLine"> 251</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 252</td> <td class="nbHits"> </td> @@ -522,14 +522,14 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 281</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> contains(Evidence.Confidence confidence) {</pre></td></tr> -<tr> <td class="numLineCover"> 282</td> <td class="nbHitsCovered"><a title="Line 282: Conditional coverage 100% (2/2)."> 104</a></td> <td class="src"><pre class="src"> <a title="Line 282: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence e : list) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 283</td> <td class="nbHitsCovered"><a title="Line 283: Conditional coverage 100% (2/2)."> 473</a></td> <td class="src"><pre class="src"> <a title="Line 283: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (e.getConfidence().equals(confidence)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 284</td> <td class="nbHitsCovered"> 101</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 282</td> <td class="nbHitsCovered"><a title="Line 282: Conditional coverage 100% (2/2)."> 152</a></td> <td class="src"><pre class="src"> <a title="Line 282: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence e : list) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 283</td> <td class="nbHitsCovered"><a title="Line 283: Conditional coverage 100% (2/2)."> 545</a></td> <td class="src"><pre class="src"> <a title="Line 283: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (e.getConfidence().equals(confidence)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 284</td> <td class="nbHitsCovered"> 125</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> <tr> <td class="numLine"> 285</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 286</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 287</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 287</td> <td class="nbHitsCovered"> 27</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> <tr> <td class="numLine"> 288</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 289</td> <td class="nbHits"> </td> @@ -627,7 +627,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 343</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">int</span> size() {</pre></td></tr> -<tr> <td class="numLineCover"> 344</td> <td class="nbHitsCovered"> 129</td> <td class="src"><pre class="src">  <span class="keyword">return</span> list.size();</pre></td></tr> +<tr> <td class="numLineCover"> 344</td> <td class="nbHitsCovered"> 165</td> <td class="src"><pre class="src">  <span class="keyword">return</span> list.size();</pre></td></tr> <tr> <td class="numLine"> 345</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 346</td> <td class="nbHits"> </td> @@ -666,8 +666,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 363</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> String urlCorrection(String value) {</pre></td></tr> -<tr> <td class="numLineCover"> 364</td> <td class="nbHitsUncovered"><a title="Line 364: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> 5798</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 364: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> <span class="keyword">if</span> (value == <span class="keyword">null</span> || !UrlStringUtils.containsUrl(value)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 365</td> <td class="nbHitsCovered"> 5665</td> <td class="src"><pre class="src">  <span class="keyword">return</span> value;</pre></td></tr> +<tr> <td class="numLineCover"> 364</td> <td class="nbHitsUncovered"><a title="Line 364: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> 6156</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 364: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> <span class="keyword">if</span> (value == <span class="keyword">null</span> || !UrlStringUtils.containsUrl(value)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 365</td> <td class="nbHitsCovered"> 6023</td> <td class="src"><pre class="src">  <span class="keyword">return</span> value;</pre></td></tr> <tr> <td class="numLine"> 366</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLineCover"> 367</td> <td class="nbHitsCovered"> 133</td> <td class="src"><pre class="src">  <span class="keyword">final</span> StringBuilder sb = <span class="keyword">new</span> StringBuilder(value.length());</pre></td></tr> @@ -696,6 +696,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Identifier.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Identifier.html index ba0e6aa63..31d0b6c7c 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Identifier.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Identifier.html @@ -65,7 +65,7 @@ <td class="src"><pre class="src"> <span class="comment"> * @author Jeremy Long (jeremy.long@owasp.org)</span></pre></td></tr> <tr> <td class="numLine"> 24</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 25</td> <td class="nbHitsCovered"> 94</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> Identifier <span class="keyword">implements</span> Comparable<Identifier> {</pre></td></tr> +<tr> <td class="numLineCover"> 25</td> <td class="nbHitsCovered"> 128</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> Identifier <span class="keyword">implements</span> Comparable<Identifier> {</pre></td></tr> <tr> <td class="numLine"> 26</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 27</td> <td class="nbHits"> </td> @@ -82,11 +82,11 @@ <td class="src"><pre class="src"> <span class="comment"> * @param url the identifier url.</span></pre></td></tr> <tr> <td class="numLine"> 33</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 34</td> <td class="nbHitsCovered"> 194</td> <td class="src"><pre class="src">  <span class="keyword">public</span> Identifier(String type, String value, String url) {</pre></td></tr> -<tr> <td class="numLineCover"> 35</td> <td class="nbHitsCovered"> 194</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.type = type;</pre></td></tr> -<tr> <td class="numLineCover"> 36</td> <td class="nbHitsCovered"> 194</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.value = value;</pre></td></tr> -<tr> <td class="numLineCover"> 37</td> <td class="nbHitsCovered"> 194</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.url = url;</pre></td></tr> -<tr> <td class="numLineCover"> 38</td> <td class="nbHitsCovered"> 194</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 34</td> <td class="nbHitsCovered"> 246</td> <td class="src"><pre class="src">  <span class="keyword">public</span> Identifier(String type, String value, String url) {</pre></td></tr> +<tr> <td class="numLineCover"> 35</td> <td class="nbHitsCovered"> 246</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.type = type;</pre></td></tr> +<tr> <td class="numLineCover"> 36</td> <td class="nbHitsCovered"> 246</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.value = value;</pre></td></tr> +<tr> <td class="numLineCover"> 37</td> <td class="nbHitsCovered"> 246</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.url = url;</pre></td></tr> +<tr> <td class="numLineCover"> 38</td> <td class="nbHitsCovered"> 246</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 39</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 40</td> <td class="nbHits"> </td> @@ -132,7 +132,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 62</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> String getValue() {</pre></td></tr> -<tr> <td class="numLineCover"> 63</td> <td class="nbHitsCovered"> 255</td> <td class="src"><pre class="src">  <span class="keyword">return</span> value;</pre></td></tr> +<tr> <td class="numLineCover"> 63</td> <td class="nbHitsCovered"> 366</td> <td class="src"><pre class="src">  <span class="keyword">return</span> value;</pre></td></tr> <tr> <td class="numLine"> 64</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 65</td> <td class="nbHits"> </td> @@ -173,7 +173,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 84</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> String getUrl() {</pre></td></tr> -<tr> <td class="numLineCover"> 85</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  <span class="keyword">return</span> url;</pre></td></tr> +<tr> <td class="numLineCover"> 85</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">return</span> url;</pre></td></tr> <tr> <td class="numLine"> 86</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 87</td> <td class="nbHits"> </td> @@ -214,7 +214,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 106</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> String getType() {</pre></td></tr> -<tr> <td class="numLineCover"> 107</td> <td class="nbHitsCovered"> 63</td> <td class="src"><pre class="src">  <span class="keyword">return</span> type;</pre></td></tr> +<tr> <td class="numLineCover"> 107</td> <td class="nbHitsCovered"> 90</td> <td class="src"><pre class="src">  <span class="keyword">return</span> type;</pre></td></tr> <tr> <td class="numLine"> 108</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 109</td> <td class="nbHits"> </td> @@ -255,7 +255,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 128</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> String getDescription() {</pre></td></tr> -<tr> <td class="numLineCover"> 129</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  <span class="keyword">return</span> description;</pre></td></tr> +<tr> <td class="numLineCover"> 129</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  <span class="keyword">return</span> description;</pre></td></tr> <tr> <td class="numLine"> 130</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 131</td> <td class="nbHits"> </td> @@ -306,10 +306,10 @@ <td class="src"><pre class="src">  @Override</pre></td></tr> <tr> <td class="numLine"> 160</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">int</span> hashCode() {</pre></td></tr> -<tr> <td class="numLineCover"> 161</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  <span class="keyword">int</span> hash = 5;</pre></td></tr> -<tr> <td class="numLineCover"> 162</td> <td class="nbHitsUncovered"><a title="Line 162: Conditional coverage 50% (1/2)."> 19</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 162: Conditional coverage 50% (1/2)."> hash = 53 * hash + (<span class="keyword">this</span>.value != <span class="keyword">null</span> ? <span class="keyword">this</span>.value.hashCode() : 0);</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 163</td> <td class="nbHitsUncovered"><a title="Line 163: Conditional coverage 50% (1/2)."> 19</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 163: Conditional coverage 50% (1/2)."> hash = 53 * hash + (<span class="keyword">this</span>.type != <span class="keyword">null</span> ? <span class="keyword">this</span>.type.hashCode() : 0);</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 164</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  <span class="keyword">return</span> hash;</pre></td></tr> +<tr> <td class="numLineCover"> 161</td> <td class="nbHitsCovered"> 37</td> <td class="src"><pre class="src">  <span class="keyword">int</span> hash = 5;</pre></td></tr> +<tr> <td class="numLineCover"> 162</td> <td class="nbHitsUncovered"><a title="Line 162: Conditional coverage 50% (1/2)."> 37</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 162: Conditional coverage 50% (1/2)."> hash = 53 * hash + (<span class="keyword">this</span>.value != <span class="keyword">null</span> ? <span class="keyword">this</span>.value.hashCode() : 0);</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 163</td> <td class="nbHitsUncovered"><a title="Line 163: Conditional coverage 50% (1/2)."> 37</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 163: Conditional coverage 50% (1/2)."> hash = 53 * hash + (<span class="keyword">this</span>.type != <span class="keyword">null</span> ? <span class="keyword">this</span>.type.hashCode() : 0);</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 164</td> <td class="nbHitsCovered"> 37</td> <td class="src"><pre class="src">  <span class="keyword">return</span> hash;</pre></td></tr> <tr> <td class="numLine"> 165</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 166</td> <td class="nbHits"> </td> @@ -349,17 +349,17 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 184</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">int</span> compareTo(Identifier o) {</pre></td></tr> -<tr> <td class="numLineCover"> 185</td> <td class="nbHitsUncovered"><a title="Line 185: Conditional coverage 50% (1/2)."> 161</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 185: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (o == <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 185</td> <td class="nbHitsUncovered"><a title="Line 185: Conditional coverage 50% (1/2)."> 211</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 185: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (o == <span class="keyword">null</span>) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 186</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> -1;</span></pre></td></tr> <tr> <td class="numLine"> 187</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 188</td> <td class="nbHitsCovered"> 161</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">this</span>.value.compareTo(o.value);</pre></td></tr> +<tr> <td class="numLineCover"> 188</td> <td class="nbHitsCovered"> 211</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">this</span>.value.compareTo(o.value);</pre></td></tr> <tr> <td class="numLine"> 189</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 190</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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Reference.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Reference.html index d97628966..e1706d0fd 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Reference.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Reference.html @@ -73,7 +73,7 @@ <td class="src"><pre class="src"> <span class="comment"> * @author Jeremy Long (jeremy.long@owasp.org)</span></pre></td></tr> <tr> <td class="numLine"> 28</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 29</td> <td class="nbHitsCovered"> 1198</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> Reference <span class="keyword">implements</span> Serializable, Comparable<Reference> {</pre></td></tr> +<tr> <td class="numLineCover"> 29</td> <td class="nbHitsCovered"> 1569</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> Reference <span class="keyword">implements</span> Serializable, Comparable<Reference> {</pre></td></tr> <tr> <td class="numLine"> 30</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 31</td> <td class="nbHits"> </td> @@ -106,7 +106,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 45</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"> 46</td> <td class="nbHitsCovered"> 208</td> <td class="src"><pre class="src">  <span class="keyword">return</span> name;</pre></td></tr> +<tr> <td class="numLineCover"> 46</td> <td class="nbHitsCovered"> 202</td> <td class="src"><pre class="src">  <span class="keyword">return</span> name;</pre></td></tr> <tr> <td class="numLine"> 47</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 48</td> <td class="nbHits"> </td> @@ -123,8 +123,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 54</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"> 55</td> <td class="nbHitsCovered"> 391</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.name = name;</pre></td></tr> -<tr> <td class="numLineCover"> 56</td> <td class="nbHitsCovered"> 391</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 55</td> <td class="nbHitsCovered"> 491</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.name = name;</pre></td></tr> +<tr> <td class="numLineCover"> 56</td> <td class="nbHitsCovered"> 491</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 57</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 58</td> <td class="nbHits"> </td> @@ -147,7 +147,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 67</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> String getUrl() {</pre></td></tr> -<tr> <td class="numLineCover"> 68</td> <td class="nbHitsCovered"> 208</td> <td class="src"><pre class="src">  <span class="keyword">return</span> url;</pre></td></tr> +<tr> <td class="numLineCover"> 68</td> <td class="nbHitsCovered"> 202</td> <td class="src"><pre class="src">  <span class="keyword">return</span> url;</pre></td></tr> <tr> <td class="numLine"> 69</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 70</td> <td class="nbHits"> </td> @@ -164,8 +164,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 76</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> setUrl(String url) {</pre></td></tr> -<tr> <td class="numLineCover"> 77</td> <td class="nbHitsCovered"> 391</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.url = url;</pre></td></tr> -<tr> <td class="numLineCover"> 78</td> <td class="nbHitsCovered"> 391</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 77</td> <td class="nbHitsCovered"> 491</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.url = url;</pre></td></tr> +<tr> <td class="numLineCover"> 78</td> <td class="nbHitsCovered"> 491</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 79</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 80</td> <td class="nbHits"> </td> @@ -188,7 +188,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 89</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> String getSource() {</pre></td></tr> -<tr> <td class="numLineCover"> 90</td> <td class="nbHitsCovered"> 208</td> <td class="src"><pre class="src">  <span class="keyword">return</span> source;</pre></td></tr> +<tr> <td class="numLineCover"> 90</td> <td class="nbHitsCovered"> 202</td> <td class="src"><pre class="src">  <span class="keyword">return</span> source;</pre></td></tr> <tr> <td class="numLine"> 91</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 92</td> <td class="nbHits"> </td> @@ -205,8 +205,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 98</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> setSource(String source) {</pre></td></tr> -<tr> <td class="numLineCover"> 99</td> <td class="nbHitsCovered"> 391</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.source = source;</pre></td></tr> -<tr> <td class="numLineCover"> 100</td> <td class="nbHitsCovered"> 391</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 99</td> <td class="nbHitsCovered"> 491</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.source = source;</pre></td></tr> +<tr> <td class="numLineCover"> 100</td> <td class="nbHitsCovered"> 491</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 101</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 102</td> <td class="nbHits"> </td> @@ -266,8 +266,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 138</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">int</span> compareTo(Reference o) {</pre></td></tr> -<tr> <td class="numLineCover"> 139</td> <td class="nbHitsCovered"><a title="Line 139: Conditional coverage 100% (2/2)."> 807</a></td> <td class="src"><pre class="src"> <a title="Line 139: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (source.equals(o.source)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 140</td> <td class="nbHitsUncovered"><a title="Line 140: Conditional coverage 50% (1/2)."> 141</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 140: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (name.equals(o.name)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 139</td> <td class="nbHitsCovered"><a title="Line 139: Conditional coverage 100% (2/2)."> 1078</a></td> <td class="src"><pre class="src"> <a title="Line 139: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (source.equals(o.source)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 140</td> <td class="nbHitsUncovered"><a title="Line 140: Conditional coverage 50% (1/2)."> 172</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 140: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (name.equals(o.name)) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 141</td> <td class="nbHitsUncovered"><a title="Line 141: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 141: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (url.equals(o.url)) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 142</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> 0; <span class="comment">//they are equal</span></span></pre></td></tr> <tr> <td class="numLine"> 143</td> <td class="nbHits"> </td> @@ -277,12 +277,12 @@ <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 146</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 147</td> <td class="nbHitsCovered"> 141</td> <td class="src"><pre class="src">  <span class="keyword">return</span> name.compareTo(o.name);</pre></td></tr> +<tr> <td class="numLineCover"> 147</td> <td class="nbHitsCovered"> 172</td> <td class="src"><pre class="src">  <span class="keyword">return</span> name.compareTo(o.name);</pre></td></tr> <tr> <td class="numLine"> 148</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 149</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 150</td> <td class="nbHitsCovered"> 666</td> <td class="src"><pre class="src">  <span class="keyword">return</span> source.compareTo(o.source);</pre></td></tr> +<tr> <td class="numLineCover"> 150</td> <td class="nbHitsCovered"> 906</td> <td class="src"><pre class="src">  <span class="keyword">return</span> source.compareTo(o.source);</pre></td></tr> <tr> <td class="numLine"> 151</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 152</td> <td class="nbHits"> </td> @@ -291,6 +291,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Vulnerability.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Vulnerability.html index dd69746bf..fe7a4fb27 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Vulnerability.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Vulnerability.html @@ -77,7 +77,7 @@ <td class="src"><pre class="src"> <span class="comment"> * @author Jeremy Long (jeremy.long@owasp.org)</span></pre></td></tr> <tr> <td class="numLine"> 30</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 31</td> <td class="nbHitsCovered"> 77</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> Vulnerability <span class="keyword">implements</span> Serializable, Comparable<Vulnerability> {</pre></td></tr> +<tr> <td class="numLineCover"> 31</td> <td class="nbHitsCovered"> 86</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> Vulnerability <span class="keyword">implements</span> Serializable, Comparable<Vulnerability> {</pre></td></tr> <tr> <td class="numLine"> 32</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 33</td> <td class="nbHits"> </td> @@ -110,7 +110,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 47</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"> 48</td> <td class="nbHitsCovered"> 192</td> <td class="src"><pre class="src">  <span class="keyword">return</span> name;</pre></td></tr> +<tr> <td class="numLineCover"> 48</td> <td class="nbHitsCovered"> 213</td> <td class="src"><pre class="src">  <span class="keyword">return</span> name;</pre></td></tr> <tr> <td class="numLine"> 49</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 50</td> <td class="nbHits"> </td> @@ -127,8 +127,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 56</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"> 57</td> <td class="nbHitsCovered"> 77</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.name = name;</pre></td></tr> -<tr> <td class="numLineCover"> 58</td> <td class="nbHitsCovered"> 77</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 57</td> <td class="nbHitsCovered"> 86</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.name = name;</pre></td></tr> +<tr> <td class="numLineCover"> 58</td> <td class="nbHitsCovered"> 86</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 59</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 60</td> <td class="nbHits"> </td> @@ -151,7 +151,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 69</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> String getDescription() {</pre></td></tr> -<tr> <td class="numLineCover"> 70</td> <td class="nbHitsCovered"> 30</td> <td class="src"><pre class="src">  <span class="keyword">return</span> description;</pre></td></tr> +<tr> <td class="numLineCover"> 70</td> <td class="nbHitsCovered"> 29</td> <td class="src"><pre class="src">  <span class="keyword">return</span> description;</pre></td></tr> <tr> <td class="numLine"> 71</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 72</td> <td class="nbHits"> </td> @@ -168,15 +168,15 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 78</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> setDescription(String description) {</pre></td></tr> -<tr> <td class="numLineCover"> 79</td> <td class="nbHitsCovered"> 77</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.description = description;</pre></td></tr> -<tr> <td class="numLineCover"> 80</td> <td class="nbHitsCovered"> 77</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 79</td> <td class="nbHitsCovered"> 86</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.description = description;</pre></td></tr> +<tr> <td class="numLineCover"> 80</td> <td class="nbHitsCovered"> 86</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 81</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 82</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * References for this vulnerability.</span></pre></td></tr> <tr> <td class="numLine"> 83</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 84</td> <td class="nbHitsCovered"> 77</td> <td class="src"><pre class="src">  <span class="keyword">private</span> SortedSet<Reference> references = <span class="keyword">new</span> TreeSet<Reference>();</pre></td></tr> +<tr> <td class="numLineCover"> 84</td> <td class="nbHitsCovered"> 86</td> <td class="src"><pre class="src">  <span class="keyword">private</span> SortedSet<Reference> references = <span class="keyword">new</span> TreeSet<Reference>();</pre></td></tr> <tr> <td class="numLine"> 85</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 86</td> <td class="nbHits"> </td> @@ -191,7 +191,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 91</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Set<Reference> getReferences() {</pre></td></tr> -<tr> <td class="numLineCover"> 92</td> <td class="nbHitsCovered"> 30</td> <td class="src"><pre class="src">  <span class="keyword">return</span> references;</pre></td></tr> +<tr> <td class="numLineCover"> 92</td> <td class="nbHitsCovered"> 29</td> <td class="src"><pre class="src">  <span class="keyword">return</span> references;</pre></td></tr> <tr> <td class="numLine"> 93</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 94</td> <td class="nbHits"> </td> @@ -244,19 +244,19 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 120</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> addReference(String referenceSource, String referenceName, String referenceUrl) {</pre></td></tr> -<tr> <td class="numLineCover"> 121</td> <td class="nbHitsCovered"> 301</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Reference ref = <span class="keyword">new</span> Reference();</pre></td></tr> -<tr> <td class="numLineCover"> 122</td> <td class="nbHitsCovered"> 301</td> <td class="src"><pre class="src">  ref.setSource(referenceSource);</pre></td></tr> -<tr> <td class="numLineCover"> 123</td> <td class="nbHitsCovered"> 301</td> <td class="src"><pre class="src">  ref.setName(referenceName);</pre></td></tr> -<tr> <td class="numLineCover"> 124</td> <td class="nbHitsCovered"> 301</td> <td class="src"><pre class="src">  ref.setUrl(referenceUrl);</pre></td></tr> -<tr> <td class="numLineCover"> 125</td> <td class="nbHitsCovered"> 301</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.references.add(ref);</pre></td></tr> -<tr> <td class="numLineCover"> 126</td> <td class="nbHitsCovered"> 301</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 121</td> <td class="nbHitsCovered"> 401</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Reference ref = <span class="keyword">new</span> Reference();</pre></td></tr> +<tr> <td class="numLineCover"> 122</td> <td class="nbHitsCovered"> 401</td> <td class="src"><pre class="src">  ref.setSource(referenceSource);</pre></td></tr> +<tr> <td class="numLineCover"> 123</td> <td class="nbHitsCovered"> 401</td> <td class="src"><pre class="src">  ref.setName(referenceName);</pre></td></tr> +<tr> <td class="numLineCover"> 124</td> <td class="nbHitsCovered"> 401</td> <td class="src"><pre class="src">  ref.setUrl(referenceUrl);</pre></td></tr> +<tr> <td class="numLineCover"> 125</td> <td class="nbHitsCovered"> 401</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.references.add(ref);</pre></td></tr> +<tr> <td class="numLineCover"> 126</td> <td class="nbHitsCovered"> 401</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 127</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 128</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * A set of vulnerable software.</span></pre></td></tr> <tr> <td class="numLine"> 129</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 130</td> <td class="nbHitsCovered"> 77</td> <td class="src"><pre class="src">  <span class="keyword">private</span> SortedSet<VulnerableSoftware> vulnerableSoftware = <span class="keyword">new</span> TreeSet<VulnerableSoftware>();</pre></td></tr> +<tr> <td class="numLineCover"> 130</td> <td class="nbHitsCovered"> 86</td> <td class="src"><pre class="src">  <span class="keyword">private</span> SortedSet<VulnerableSoftware> vulnerableSoftware = <span class="keyword">new</span> TreeSet<VulnerableSoftware>();</pre></td></tr> <tr> <td class="numLine"> 131</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 132</td> <td class="nbHits"> </td> @@ -271,7 +271,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 137</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Set<VulnerableSoftware> getVulnerableSoftware() {</pre></td></tr> -<tr> <td class="numLineCover"> 138</td> <td class="nbHitsCovered"> 30</td> <td class="src"><pre class="src">  <span class="keyword">return</span> vulnerableSoftware;</pre></td></tr> +<tr> <td class="numLineCover"> 138</td> <td class="nbHitsCovered"> 29</td> <td class="src"><pre class="src">  <span class="keyword">return</span> vulnerableSoftware;</pre></td></tr> <tr> <td class="numLine"> 139</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 140</td> <td class="nbHits"> </td> @@ -306,7 +306,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 156</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> addVulnerableSoftware(String cpe) {</pre></td></tr> -<tr> <td class="numLineCover"> 157</td> <td class="nbHitsCovered"> 3200</td> <td class="src"><pre class="src">  <span class="keyword">return</span> addVulnerableSoftware(cpe, <span class="keyword">null</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 157</td> <td class="nbHitsCovered"> 3186</td> <td class="src"><pre class="src">  <span class="keyword">return</span> addVulnerableSoftware(cpe, <span class="keyword">null</span>);</pre></td></tr> <tr> <td class="numLine"> 158</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 159</td> <td class="nbHits"> </td> @@ -329,13 +329,13 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 168</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> addVulnerableSoftware(String cpe, String previousVersion) {</pre></td></tr> -<tr> <td class="numLineCover"> 169</td> <td class="nbHitsCovered"> 3237</td> <td class="src"><pre class="src">  <span class="keyword">final</span> VulnerableSoftware vs = <span class="keyword">new</span> VulnerableSoftware();</pre></td></tr> -<tr> <td class="numLineCover"> 170</td> <td class="nbHitsCovered"> 3237</td> <td class="src"><pre class="src">  vs.setCpe(cpe);</pre></td></tr> -<tr> <td class="numLineCover"> 171</td> <td class="nbHitsCovered"><a title="Line 171: Conditional coverage 100% (2/2)."> 3237</a></td> <td class="src"><pre class="src"> <a title="Line 171: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (previousVersion != <span class="keyword">null</span>) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 172</td> <td class="nbHitsCovered"> 37</td> <td class="src"><pre class="src">  vs.setPreviousVersion(previousVersion);</pre></td></tr> +<tr> <td class="numLineCover"> 169</td> <td class="nbHitsCovered"> 3228</td> <td class="src"><pre class="src">  <span class="keyword">final</span> VulnerableSoftware vs = <span class="keyword">new</span> VulnerableSoftware();</pre></td></tr> +<tr> <td class="numLineCover"> 170</td> <td class="nbHitsCovered"> 3228</td> <td class="src"><pre class="src">  vs.setCpe(cpe);</pre></td></tr> +<tr> <td class="numLineCover"> 171</td> <td class="nbHitsCovered"><a title="Line 171: Conditional coverage 100% (2/2)."> 3228</a></td> <td class="src"><pre class="src"> <a title="Line 171: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (previousVersion != <span class="keyword">null</span>) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 172</td> <td class="nbHitsCovered"> 42</td> <td class="src"><pre class="src">  vs.setPreviousVersion(previousVersion);</pre></td></tr> <tr> <td class="numLine"> 173</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 174</td> <td class="nbHitsCovered"> 3237</td> <td class="src"><pre class="src">  <span class="keyword">return</span> updateVulnerableSoftware(vs);</pre></td></tr> +<tr> <td class="numLineCover"> 174</td> <td class="nbHitsCovered"> 3228</td> <td class="src"><pre class="src">  <span class="keyword">return</span> updateVulnerableSoftware(vs);</pre></td></tr> <tr> <td class="numLine"> 175</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 176</td> <td class="nbHits"> </td> @@ -354,11 +354,11 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 183</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> updateVulnerableSoftware(VulnerableSoftware vulnSoftware) {</pre></td></tr> -<tr> <td class="numLineCover"> 184</td> <td class="nbHitsUncovered"><a title="Line 184: Conditional coverage 50% (1/2)."> 3237</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 184: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (vulnerableSoftware.contains(vulnSoftware)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 184</td> <td class="nbHitsUncovered"><a title="Line 184: Conditional coverage 50% (1/2)."> 3228</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 184: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (vulnerableSoftware.contains(vulnSoftware)) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 185</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  vulnerableSoftware.remove(vulnSoftware);</span></pre></td></tr> <tr> <td class="numLine"> 186</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 187</td> <td class="nbHitsCovered"> 3237</td> <td class="src"><pre class="src">  <span class="keyword">return</span> vulnerableSoftware.add(vulnSoftware);</pre></td></tr> +<tr> <td class="numLineCover"> 187</td> <td class="nbHitsCovered"> 3228</td> <td class="src"><pre class="src">  <span class="keyword">return</span> vulnerableSoftware.add(vulnSoftware);</pre></td></tr> <tr> <td class="numLine"> 188</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 189</td> <td class="nbHits"> </td> @@ -383,7 +383,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 199</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> String getCwe() {</pre></td></tr> -<tr> <td class="numLineCover"> 200</td> <td class="nbHitsCovered"> 58</td> <td class="src"><pre class="src">  <span class="keyword">return</span> cwe;</pre></td></tr> +<tr> <td class="numLineCover"> 200</td> <td class="nbHitsCovered"> 56</td> <td class="src"><pre class="src">  <span class="keyword">return</span> cwe;</pre></td></tr> <tr> <td class="numLine"> 201</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 202</td> <td class="nbHits"> </td> @@ -400,8 +400,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 208</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> setCwe(String cwe) {</pre></td></tr> -<tr> <td class="numLineCover"> 209</td> <td class="nbHitsCovered"> 69</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.cwe = cwe;</pre></td></tr> -<tr> <td class="numLineCover"> 210</td> <td class="nbHitsCovered"> 69</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 209</td> <td class="nbHitsCovered"> 78</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.cwe = cwe;</pre></td></tr> +<tr> <td class="numLineCover"> 210</td> <td class="nbHitsCovered"> 78</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 211</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 212</td> <td class="nbHits"> </td> @@ -424,7 +424,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 221</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">float</span> getCvssScore() {</pre></td></tr> -<tr> <td class="numLineCover"> 222</td> <td class="nbHitsCovered"> 89</td> <td class="src"><pre class="src">  <span class="keyword">return</span> cvssScore;</pre></td></tr> +<tr> <td class="numLineCover"> 222</td> <td class="nbHitsCovered"> 86</td> <td class="src"><pre class="src">  <span class="keyword">return</span> cvssScore;</pre></td></tr> <tr> <td class="numLine"> 223</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 224</td> <td class="nbHits"> </td> @@ -441,8 +441,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 230</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> setCvssScore(<span class="keyword">float</span> cvssScore) {</pre></td></tr> -<tr> <td class="numLineCover"> 231</td> <td class="nbHitsCovered"> 76</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.cvssScore = cvssScore;</pre></td></tr> -<tr> <td class="numLineCover"> 232</td> <td class="nbHitsCovered"> 76</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 231</td> <td class="nbHitsCovered"> 85</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.cvssScore = cvssScore;</pre></td></tr> +<tr> <td class="numLineCover"> 232</td> <td class="nbHitsCovered"> 85</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 233</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 234</td> <td class="nbHits"> </td> @@ -482,8 +482,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 252</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> setCvssAccessVector(String cvssAccessVector) {</pre></td></tr> -<tr> <td class="numLineCover"> 253</td> <td class="nbHitsCovered"> 76</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.cvssAccessVector = cvssAccessVector;</pre></td></tr> -<tr> <td class="numLineCover"> 254</td> <td class="nbHitsCovered"> 76</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 253</td> <td class="nbHitsCovered"> 85</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.cvssAccessVector = cvssAccessVector;</pre></td></tr> +<tr> <td class="numLineCover"> 254</td> <td class="nbHitsCovered"> 85</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 255</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 256</td> <td class="nbHits"> </td> @@ -523,8 +523,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 274</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> setCvssAccessComplexity(String cvssAccessComplexity) {</pre></td></tr> -<tr> <td class="numLineCover"> 275</td> <td class="nbHitsCovered"> 76</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.cvssAccessComplexity = cvssAccessComplexity;</pre></td></tr> -<tr> <td class="numLineCover"> 276</td> <td class="nbHitsCovered"> 76</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 275</td> <td class="nbHitsCovered"> 85</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.cvssAccessComplexity = cvssAccessComplexity;</pre></td></tr> +<tr> <td class="numLineCover"> 276</td> <td class="nbHitsCovered"> 85</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 277</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 278</td> <td class="nbHits"> </td> @@ -564,8 +564,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 296</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> setCvssAuthentication(String cvssAuthentication) {</pre></td></tr> -<tr> <td class="numLineCover"> 297</td> <td class="nbHitsCovered"> 76</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.cvssAuthentication = cvssAuthentication;</pre></td></tr> -<tr> <td class="numLineCover"> 298</td> <td class="nbHitsCovered"> 76</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 297</td> <td class="nbHitsCovered"> 85</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.cvssAuthentication = cvssAuthentication;</pre></td></tr> +<tr> <td class="numLineCover"> 298</td> <td class="nbHitsCovered"> 85</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 299</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 300</td> <td class="nbHits"> </td> @@ -605,8 +605,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 318</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> setCvssConfidentialityImpact(String cvssConfidentialityImpact) {</pre></td></tr> -<tr> <td class="numLineCover"> 319</td> <td class="nbHitsCovered"> 76</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.cvssConfidentialityImpact = cvssConfidentialityImpact;</pre></td></tr> -<tr> <td class="numLineCover"> 320</td> <td class="nbHitsCovered"> 76</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 319</td> <td class="nbHitsCovered"> 85</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.cvssConfidentialityImpact = cvssConfidentialityImpact;</pre></td></tr> +<tr> <td class="numLineCover"> 320</td> <td class="nbHitsCovered"> 85</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 321</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 322</td> <td class="nbHits"> </td> @@ -646,8 +646,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 340</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> setCvssIntegrityImpact(String cvssIntegrityImpact) {</pre></td></tr> -<tr> <td class="numLineCover"> 341</td> <td class="nbHitsCovered"> 76</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.cvssIntegrityImpact = cvssIntegrityImpact;</pre></td></tr> -<tr> <td class="numLineCover"> 342</td> <td class="nbHitsCovered"> 76</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 341</td> <td class="nbHitsCovered"> 85</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.cvssIntegrityImpact = cvssIntegrityImpact;</pre></td></tr> +<tr> <td class="numLineCover"> 342</td> <td class="nbHitsCovered"> 85</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 343</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 344</td> <td class="nbHits"> </td> @@ -687,8 +687,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 362</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> setCvssAvailabilityImpact(String cvssAvailabilityImpact) {</pre></td></tr> -<tr> <td class="numLineCover"> 363</td> <td class="nbHitsCovered"> 76</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.cvssAvailabilityImpact = cvssAvailabilityImpact;</pre></td></tr> -<tr> <td class="numLineCover"> 364</td> <td class="nbHitsCovered"> 76</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 363</td> <td class="nbHitsCovered"> 85</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.cvssAvailabilityImpact = cvssAvailabilityImpact;</pre></td></tr> +<tr> <td class="numLineCover"> 364</td> <td class="nbHitsCovered"> 85</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 365</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 366</td> <td class="nbHits"> </td> @@ -747,6 +747,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.VulnerabilityComparator.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.VulnerabilityComparator.html index c617f1812..add92eb72 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.VulnerabilityComparator.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.VulnerabilityComparator.html @@ -73,7 +73,7 @@ <td class="src"><pre class="src"> <span class="comment"> * @author Jeremy Long (jeremy.long@owasp.org)</span></pre></td></tr> <tr> <td class="numLine"> 28</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 29</td> <td class="nbHitsCovered"> 126</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> VulnerabilityComparator <span class="keyword">implements</span> Comparator<Vulnerability>, Serializable {</pre></td></tr> +<tr> <td class="numLineCover"> 29</td> <td class="nbHitsCovered"> 145</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> VulnerabilityComparator <span class="keyword">implements</span> Comparator<Vulnerability>, Serializable {</pre></td></tr> <tr> <td class="numLine"> 30</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 31</td> <td class="nbHits"> </td> @@ -102,13 +102,13 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 43</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">int</span> compare(Vulnerability o1, Vulnerability o2) {</pre></td></tr> -<tr> <td class="numLineCover"> 44</td> <td class="nbHitsCovered"> 81</td> <td class="src"><pre class="src">  <span class="keyword">return</span> o2.getName().compareTo(o1.getName());</pre></td></tr> +<tr> <td class="numLineCover"> 44</td> <td class="nbHitsCovered"> 92</td> <td class="src"><pre class="src">  <span class="keyword">return</span> o2.getName().compareTo(o1.getName());</pre></td></tr> <tr> <td class="numLine"> 45</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 46</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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.VulnerableSoftware.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.VulnerableSoftware.html index 69dc34624..c3743e5e3 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.VulnerableSoftware.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.VulnerableSoftware.html @@ -83,7 +83,7 @@ <td class="src"><pre class="src"> <span class="comment"> * @author Jeremy Long (jeremy.long@owasp.org)</span></pre></td></tr> <tr> <td class="numLine"> 33</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 34</td> <td class="nbHitsCovered"> 59027</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> VulnerableSoftware <span class="keyword">extends</span> IndexEntry <span class="keyword">implements</span> Serializable, Comparable<VulnerableSoftware> {</pre></td></tr> +<tr> <td class="numLineCover"> 34</td> <td class="nbHitsCovered"> 61009</td> <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> VulnerableSoftware <span class="keyword">extends</span> IndexEntry <span class="keyword">implements</span> Serializable, Comparable<VulnerableSoftware> {</pre></td></tr> <tr> <td class="numLine"> 35</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 36</td> <td class="nbHits"> </td> @@ -110,14 +110,14 @@ <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> setCpe(String cpe) {</pre></td></tr> <tr> <td class="numLine"> 47</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 48</td> <td class="nbHitsCovered"> 6904</td> <td class="src"><pre class="src">  parseName(cpe);</pre></td></tr> +<tr> <td class="numLineCover"> 48</td> <td class="nbHitsCovered"> 7616</td> <td class="src"><pre class="src">  parseName(cpe);</pre></td></tr> <tr> <td class="numLineCover"> 49</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (UnsupportedEncodingException ex) {</span></pre></td></tr> <tr> <td class="numLineCover"> 50</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">"Character encoding is unsupported for CPE '%s'."</span>, cpe);</span></pre></td></tr> <tr> <td class="numLineCover"> 51</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(VulnerableSoftware.<span class="keyword">class</span>.getName()).log(Level.WARNING, msg);</span></pre></td></tr> <tr> <td class="numLineCover"> 52</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(VulnerableSoftware.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="keyword">null</span>, ex);</span></pre></td></tr> <tr> <td class="numLineCover"> 53</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  setName(cpe);</span></pre></td></tr> -<tr> <td class="numLineCover"> 54</td> <td class="nbHitsCovered"> 6904</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 55</td> <td class="nbHitsCovered"> 6904</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 54</td> <td class="nbHitsCovered"> 7616</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 55</td> <td class="nbHitsCovered"> 7616</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 56</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 57</td> <td class="nbHits"> </td> @@ -148,18 +148,18 @@ <td class="src"><pre class="src">  @Override</pre></td></tr> <tr> <td class="numLine"> 70</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> parseName(String cpeName) <span class="keyword">throws</span> UnsupportedEncodingException {</pre></td></tr> -<tr> <td class="numLineCover"> 71</td> <td class="nbHitsCovered"> 8917</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.name = cpeName;</pre></td></tr> -<tr> <td class="numLineCover"> 72</td> <td class="nbHitsUncovered"><a title="Line 72: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 8917</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 72: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">if</span> (cpeName != <span class="keyword">null</span> && cpeName.length() > 7) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 73</td> <td class="nbHitsCovered"> 8917</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String[] data = cpeName.substring(7).split(<span class="string">":"</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 74</td> <td class="nbHitsUncovered"><a title="Line 74: Conditional coverage 50% (1/2)."> 8917</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 74: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (data.length >= 1) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 75</td> <td class="nbHitsCovered"> 8917</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.setVendor(URLDecoder.decode(data[0].replace(<span class="string">"+"</span>, <span class="string">"%2B"</span>), <span class="string">"UTF-8"</span>)); <span class="comment">//.replaceAll("[_-]", " ")</span></pre></td></tr> -<tr> <td class="numLineCover"> 76</td> <td class="nbHitsUncovered"><a title="Line 76: Conditional coverage 50% (1/2)."> 8917</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 76: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (data.length >= 2) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 77</td> <td class="nbHitsCovered"> 8917</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.setProduct(URLDecoder.decode(data[1].replace(<span class="string">"+"</span>, <span class="string">"%2B"</span>), <span class="string">"UTF-8"</span>)); <span class="comment">//.replaceAll("[_-]", " ")</span></pre></td></tr> -<tr> <td class="numLineCover"> 78</td> <td class="nbHitsCovered"><a title="Line 78: Conditional coverage 100% (2/2)."> 8917</a></td> <td class="src"><pre class="src"> <a title="Line 78: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (data.length >= 3) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 79</td> <td class="nbHitsCovered"> 8901</td> <td class="src"><pre class="src">  version = URLDecoder.decode(data[2].replace(<span class="string">"+"</span>, <span class="string">"%2B"</span>), <span class="string">"UTF-8"</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 80</td> <td class="nbHitsCovered"><a title="Line 80: Conditional coverage 100% (2/2)."> 8901</a></td> <td class="src"><pre class="src"> <a title="Line 80: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (data.length >= 4) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 81</td> <td class="nbHitsCovered"> 2356</td> <td class="src"><pre class="src">  revision = URLDecoder.decode(data[3].replace(<span class="string">"+"</span>, <span class="string">"%2B"</span>), <span class="string">"UTF-8"</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 82</td> <td class="nbHitsCovered"><a title="Line 82: Conditional coverage 100% (2/2)."> 2356</a></td> <td class="src"><pre class="src"> <a title="Line 82: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (data.length >= 5) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 71</td> <td class="nbHitsCovered"> 11151</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.name = cpeName;</pre></td></tr> +<tr> <td class="numLineCover"> 72</td> <td class="nbHitsUncovered"><a title="Line 72: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 11151</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 72: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">if</span> (cpeName != <span class="keyword">null</span> && cpeName.length() > 7) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 73</td> <td class="nbHitsCovered"> 11151</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String[] data = cpeName.substring(7).split(<span class="string">":"</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 74</td> <td class="nbHitsUncovered"><a title="Line 74: Conditional coverage 50% (1/2)."> 11151</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 74: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (data.length >= 1) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 75</td> <td class="nbHitsCovered"> 11151</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.setVendor(URLDecoder.decode(data[0].replace(<span class="string">"+"</span>, <span class="string">"%2B"</span>), <span class="string">"UTF-8"</span>)); <span class="comment">//.replaceAll("[_-]", " ")</span></pre></td></tr> +<tr> <td class="numLineCover"> 76</td> <td class="nbHitsUncovered"><a title="Line 76: Conditional coverage 50% (1/2)."> 11151</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 76: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (data.length >= 2) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 77</td> <td class="nbHitsCovered"> 11151</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.setProduct(URLDecoder.decode(data[1].replace(<span class="string">"+"</span>, <span class="string">"%2B"</span>), <span class="string">"UTF-8"</span>)); <span class="comment">//.replaceAll("[_-]", " ")</span></pre></td></tr> +<tr> <td class="numLineCover"> 78</td> <td class="nbHitsCovered"><a title="Line 78: Conditional coverage 100% (2/2)."> 11151</a></td> <td class="src"><pre class="src"> <a title="Line 78: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (data.length >= 3) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 79</td> <td class="nbHitsCovered"> 11123</td> <td class="src"><pre class="src">  version = URLDecoder.decode(data[2].replace(<span class="string">"+"</span>, <span class="string">"%2B"</span>), <span class="string">"UTF-8"</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 80</td> <td class="nbHitsCovered"><a title="Line 80: Conditional coverage 100% (2/2)."> 11123</a></td> <td class="src"><pre class="src"> <a title="Line 80: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (data.length >= 4) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 81</td> <td class="nbHitsCovered"> 2318</td> <td class="src"><pre class="src">  revision = URLDecoder.decode(data[3].replace(<span class="string">"+"</span>, <span class="string">"%2B"</span>), <span class="string">"UTF-8"</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 82</td> <td class="nbHitsCovered"><a title="Line 82: Conditional coverage 100% (2/2)."> 2318</a></td> <td class="src"><pre class="src"> <a title="Line 82: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (data.length >= 5) {</a></pre></td></tr> <tr> <td class="numLineCover"> 83</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  edition = URLDecoder.decode(data[4].replace(<span class="string">"+"</span>, <span class="string">"%2B"</span>), <span class="string">"UTF-8"</span>);</pre></td></tr> <tr> <td class="numLine"> 84</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> @@ -173,7 +173,7 @@ <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 89</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 90</td> <td class="nbHitsCovered"> 8917</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 90</td> <td class="nbHitsCovered"> 11151</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 91</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 92</td> <td class="nbHits"> </td> @@ -196,7 +196,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 101</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> hasPreviousVersion() {</pre></td></tr> -<tr> <td class="numLineCover"> 102</td> <td class="nbHitsCovered"><a title="Line 102: Conditional coverage 100% (2/2)."> 1924</a></td> <td class="src"><pre class="src"> <a title="Line 102: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> previousVersion != <span class="keyword">null</span>;</a></pre></td></tr> +<tr> <td class="numLineCover"> 102</td> <td class="nbHitsCovered"><a title="Line 102: Conditional coverage 100% (2/2)."> 1895</a></td> <td class="src"><pre class="src"> <a title="Line 102: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> previousVersion != <span class="keyword">null</span>;</a></pre></td></tr> <tr> <td class="numLine"> 103</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 104</td> <td class="nbHits"> </td> @@ -230,8 +230,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 119</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> setPreviousVersion(String previousVersion) {</pre></td></tr> -<tr> <td class="numLineCover"> 120</td> <td class="nbHitsCovered"> 38</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.previousVersion = previousVersion;</pre></td></tr> -<tr> <td class="numLineCover"> 121</td> <td class="nbHitsCovered"> 38</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 120</td> <td class="nbHitsCovered"> 43</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.previousVersion = previousVersion;</pre></td></tr> +<tr> <td class="numLineCover"> 121</td> <td class="nbHitsCovered"> 43</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 122</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 123</td> <td class="nbHits"> </td> @@ -284,9 +284,9 @@ <td class="src"><pre class="src">  @Override</pre></td></tr> <tr> <td class="numLine"> 151</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">int</span> hashCode() {</pre></td></tr> -<tr> <td class="numLineCover"> 152</td> <td class="nbHitsCovered"> 3662</td> <td class="src"><pre class="src">  <span class="keyword">int</span> hash = 7;</pre></td></tr> -<tr> <td class="numLineCover"> 153</td> <td class="nbHitsUncovered"><a title="Line 153: Conditional coverage 50% (1/2)."> 3662</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 153: Conditional coverage 50% (1/2)."> hash = 83 * hash + (<span class="keyword">this</span>.getName() != <span class="keyword">null</span> ? <span class="keyword">this</span>.getName().hashCode() : 0);</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 154</td> <td class="nbHitsCovered"> 3662</td> <td class="src"><pre class="src">  <span class="keyword">return</span> hash;</pre></td></tr> +<tr> <td class="numLineCover"> 152</td> <td class="nbHitsCovered"> 4383</td> <td class="src"><pre class="src">  <span class="keyword">int</span> hash = 7;</pre></td></tr> +<tr> <td class="numLineCover"> 153</td> <td class="nbHitsUncovered"><a title="Line 153: Conditional coverage 50% (1/2)."> 4383</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 153: Conditional coverage 50% (1/2)."> hash = 83 * hash + (<span class="keyword">this</span>.getName() != <span class="keyword">null</span> ? <span class="keyword">this</span>.getName().hashCode() : 0);</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 154</td> <td class="nbHitsCovered"> 4383</td> <td class="src"><pre class="src">  <span class="keyword">return</span> hash;</pre></td></tr> <tr> <td class="numLine"> 155</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 156</td> <td class="nbHits"> </td> @@ -328,23 +328,23 @@ <td class="src"><pre class="src">  @Override</pre></td></tr> <tr> <td class="numLine"> 175</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">int</span> compareTo(VulnerableSoftware vs) {</pre></td></tr> -<tr> <td class="numLineCover"> 176</td> <td class="nbHitsCovered"> 50111</td> <td class="src"><pre class="src">  <span class="keyword">int</span> result = 0;</pre></td></tr> -<tr> <td class="numLineCover"> 177</td> <td class="nbHitsCovered"> 50111</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String[] left = <span class="keyword">this</span>.getName().split(<span class="string">":"</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 178</td> <td class="nbHitsCovered"> 50111</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String[] right = vs.getName().split(<span class="string">":"</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 179</td> <td class="nbHitsCovered"><a title="Line 179: Conditional coverage 100% (2/2)."> 50111</a></td> <td class="src"><pre class="src"> <a title="Line 179: Conditional coverage 100% (2/2)."> <span class="keyword">final</span> <span class="keyword">int</span> max = (left.length <= right.length) ? left.length : right.length;</a></pre></td></tr> -<tr> <td class="numLineCover"> 180</td> <td class="nbHitsUncovered"><a title="Line 180: Conditional coverage 50% (1/2)."> 50111</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 180: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (max > 0) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 181</td> <td class="nbHitsCovered"><a title="Line 181: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 302866</a></td> <td class="src"><pre class="src"> <a title="Line 181: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">for</span> (<span class="keyword">int</span> i = 0; result == 0 && i < max; i++) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 182</td> <td class="nbHitsCovered"> 252755</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String[] subLeft = left[i].split(<span class="string">"\\."</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 183</td> <td class="nbHitsCovered"> 252755</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String[] subRight = right[i].split(<span class="string">"\\."</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 184</td> <td class="nbHitsCovered"><a title="Line 184: Conditional coverage 100% (2/2)."> 252755</a></td> <td class="src"><pre class="src"> <a title="Line 184: Conditional coverage 100% (2/2)."> <span class="keyword">final</span> <span class="keyword">int</span> subMax = (subLeft.length <= subRight.length) ? subLeft.length : subRight.length;</a></pre></td></tr> -<tr> <td class="numLineCover"> 185</td> <td class="nbHitsUncovered"><a title="Line 185: Conditional coverage 50% (1/2)."> 252755</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 185: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (subMax > 0) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 186</td> <td class="nbHitsCovered"><a title="Line 186: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 567549</a></td> <td class="src"><pre class="src"> <a title="Line 186: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">for</span> (<span class="keyword">int</span> x = 0; result == 0 && x < subMax; x++) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 187</td> <td class="nbHitsCovered"><a title="Line 187: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 314794</a></td> <td class="src"><pre class="src"> <a title="Line 187: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (isPositiveInteger(subLeft[x]) && isPositiveInteger(subRight[x])) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 188</td> <td class="nbHitsCovered"> 109094</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">int</span> iLeft = Integer.parseInt(subLeft[x]);</pre></td></tr> -<tr> <td class="numLineCover"> 189</td> <td class="nbHitsCovered"> 109094</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">int</span> iRight = Integer.parseInt(subRight[x]);</pre></td></tr> -<tr> <td class="numLineCover"> 190</td> <td class="nbHitsCovered"><a title="Line 190: Conditional coverage 100% (2/2)."> 109094</a></td> <td class="src"><pre class="src"> <a title="Line 190: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (iLeft != iRight) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 191</td> <td class="nbHitsCovered"><a title="Line 191: Conditional coverage 100% (2/2)."> 42544</a></td> <td class="src"><pre class="src"> <a title="Line 191: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (iLeft > iRight) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 192</td> <td class="nbHitsCovered"> 39084</td> <td class="src"><pre class="src">  result = 2;</pre></td></tr> +<tr> <td class="numLineCover"> 176</td> <td class="nbHitsCovered"> 49859</td> <td class="src"><pre class="src">  <span class="keyword">int</span> result = 0;</pre></td></tr> +<tr> <td class="numLineCover"> 177</td> <td class="nbHitsCovered"> 49859</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String[] left = <span class="keyword">this</span>.getName().split(<span class="string">":"</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 178</td> <td class="nbHitsCovered"> 49859</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String[] right = vs.getName().split(<span class="string">":"</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 179</td> <td class="nbHitsCovered"><a title="Line 179: Conditional coverage 100% (2/2)."> 49859</a></td> <td class="src"><pre class="src"> <a title="Line 179: Conditional coverage 100% (2/2)."> <span class="keyword">final</span> <span class="keyword">int</span> max = (left.length <= right.length) ? left.length : right.length;</a></pre></td></tr> +<tr> <td class="numLineCover"> 180</td> <td class="nbHitsUncovered"><a title="Line 180: Conditional coverage 50% (1/2)."> 49859</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 180: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (max > 0) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 181</td> <td class="nbHitsCovered"><a title="Line 181: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 301368</a></td> <td class="src"><pre class="src"> <a title="Line 181: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">for</span> (<span class="keyword">int</span> i = 0; result == 0 && i < max; i++) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 182</td> <td class="nbHitsCovered"> 251509</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String[] subLeft = left[i].split(<span class="string">"\\."</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 183</td> <td class="nbHitsCovered"> 251509</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String[] subRight = right[i].split(<span class="string">"\\."</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 184</td> <td class="nbHitsCovered"><a title="Line 184: Conditional coverage 100% (2/2)."> 251509</a></td> <td class="src"><pre class="src"> <a title="Line 184: Conditional coverage 100% (2/2)."> <span class="keyword">final</span> <span class="keyword">int</span> subMax = (subLeft.length <= subRight.length) ? subLeft.length : subRight.length;</a></pre></td></tr> +<tr> <td class="numLineCover"> 185</td> <td class="nbHitsUncovered"><a title="Line 185: Conditional coverage 50% (1/2)."> 251509</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 185: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (subMax > 0) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 186</td> <td class="nbHitsCovered"><a title="Line 186: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 564931</a></td> <td class="src"><pre class="src"> <a title="Line 186: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">for</span> (<span class="keyword">int</span> x = 0; result == 0 && x < subMax; x++) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 187</td> <td class="nbHitsCovered"><a title="Line 187: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 313422</a></td> <td class="src"><pre class="src"> <a title="Line 187: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (isPositiveInteger(subLeft[x]) && isPositiveInteger(subRight[x])) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 188</td> <td class="nbHitsCovered"> 108826</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">int</span> iLeft = Integer.parseInt(subLeft[x]);</pre></td></tr> +<tr> <td class="numLineCover"> 189</td> <td class="nbHitsCovered"> 108826</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">int</span> iRight = Integer.parseInt(subRight[x]);</pre></td></tr> +<tr> <td class="numLineCover"> 190</td> <td class="nbHitsCovered"><a title="Line 190: Conditional coverage 100% (2/2)."> 108826</a></td> <td class="src"><pre class="src"> <a title="Line 190: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (iLeft != iRight) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 191</td> <td class="nbHitsCovered"><a title="Line 191: Conditional coverage 100% (2/2)."> 42480</a></td> <td class="src"><pre class="src"> <a title="Line 191: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (iLeft > iRight) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 192</td> <td class="nbHitsCovered"> 39020</td> <td class="src"><pre class="src">  result = 2;</pre></td></tr> <tr> <td class="numLine"> 193</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> <tr> <td class="numLineCover"> 194</td> <td class="nbHitsCovered"> 3460</td> <td class="src"><pre class="src">  result = -2;</pre></td></tr> @@ -352,18 +352,18 @@ <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 196</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 197</td> <td class="nbHitsCovered"> 109094</td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 198</td> <td class="nbHitsCovered"> 205700</td> <td class="src"><pre class="src">  result = subLeft[x].compareToIgnoreCase(subRight[x]);</pre></td></tr> +<tr> <td class="numLineCover"> 197</td> <td class="nbHitsCovered"> 108826</td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 198</td> <td class="nbHitsCovered"> 204596</td> <td class="src"><pre class="src">  result = subLeft[x].compareToIgnoreCase(subRight[x]);</pre></td></tr> <tr> <td class="numLine"> 199</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 200</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 201</td> <td class="nbHitsCovered"><a title="Line 201: Conditional coverage 100% (2/2)."> 252755</a></td> <td class="src"><pre class="src"> <a title="Line 201: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (result == 0) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 202</td> <td class="nbHitsCovered"><a title="Line 202: Conditional coverage 100% (2/2)."> 204705</a></td> <td class="src"><pre class="src"> <a title="Line 202: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (subLeft.length > subRight.length) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 203</td> <td class="nbHitsCovered"> 1440</td> <td class="src"><pre class="src">  result = 2;</pre></td></tr> +<tr> <td class="numLineCover"> 201</td> <td class="nbHitsCovered"><a title="Line 201: Conditional coverage 100% (2/2)."> 251509</a></td> <td class="src"><pre class="src"> <a title="Line 201: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (result == 0) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 202</td> <td class="nbHitsCovered"><a title="Line 202: Conditional coverage 100% (2/2)."> 203675</a></td> <td class="src"><pre class="src"> <a title="Line 202: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (subLeft.length > subRight.length) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 203</td> <td class="nbHitsCovered"> 1430</td> <td class="src"><pre class="src">  result = 2;</pre></td></tr> <tr> <td class="numLine"> 204</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 205</td> <td class="nbHitsCovered"><a title="Line 205: Conditional coverage 100% (2/2)."> 204705</a></td> <td class="src"><pre class="src"> <a title="Line 205: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (subRight.length > subLeft.length) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 205</td> <td class="nbHitsCovered"><a title="Line 205: Conditional coverage 100% (2/2)."> 203675</a></td> <td class="src"><pre class="src"> <a title="Line 205: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (subRight.length > subLeft.length) {</a></pre></td></tr> <tr> <td class="numLineCover"> 206</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  result = -2;</pre></td></tr> <tr> <td class="numLine"> 207</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> @@ -376,12 +376,12 @@ <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 212</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 213</td> <td class="nbHitsCovered"><a title="Line 213: Conditional coverage 100% (2/2)."> 50111</a></td> <td class="src"><pre class="src"> <a title="Line 213: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (result == 0) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 214</td> <td class="nbHitsCovered"><a title="Line 214: Conditional coverage 100% (2/2)."> 614</a></td> <td class="src"><pre class="src"> <a title="Line 214: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (left.length > right.length) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 215</td> <td class="nbHitsCovered"> 604</td> <td class="src"><pre class="src">  result = 2;</pre></td></tr> +<tr> <td class="numLineCover"> 213</td> <td class="nbHitsCovered"><a title="Line 213: Conditional coverage 100% (2/2)."> 49859</a></td> <td class="src"><pre class="src"> <a title="Line 213: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (result == 0) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 214</td> <td class="nbHitsCovered"><a title="Line 214: Conditional coverage 100% (2/2)."> 588</a></td> <td class="src"><pre class="src"> <a title="Line 214: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (left.length > right.length) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 215</td> <td class="nbHitsCovered"> 578</td> <td class="src"><pre class="src">  result = 2;</pre></td></tr> <tr> <td class="numLine"> 216</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 217</td> <td class="nbHitsCovered"><a title="Line 217: Conditional coverage 100% (2/2)."> 614</a></td> <td class="src"><pre class="src"> <a title="Line 217: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (right.length > left.length) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 217</td> <td class="nbHitsCovered"><a title="Line 217: Conditional coverage 100% (2/2)."> 588</a></td> <td class="src"><pre class="src"> <a title="Line 217: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (right.length > left.length) {</a></pre></td></tr> <tr> <td class="numLineCover"> 218</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  result = -2;</pre></td></tr> <tr> <td class="numLine"> 219</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> @@ -392,7 +392,7 @@ <tr> <td class="numLineCover"> 222</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  result = <span class="keyword">this</span>.getName().compareToIgnoreCase(vs.getName());</span></pre></td></tr> <tr> <td class="numLine"> 223</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 224</td> <td class="nbHitsCovered"> 50111</td> <td class="src"><pre class="src">  <span class="keyword">return</span> result;</pre></td></tr> +<tr> <td class="numLineCover"> 224</td> <td class="nbHitsCovered"> 49859</td> <td class="src"><pre class="src">  <span class="keyword">return</span> result;</pre></td></tr> <tr> <td class="numLine"> 225</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 226</td> <td class="nbHits"> </td> @@ -411,19 +411,19 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 233</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">boolean</span> isPositiveInteger(<span class="keyword">final</span> String str) {</pre></td></tr> -<tr> <td class="numLineCover"> 234</td> <td class="nbHitsUncovered"><a title="Line 234: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> 424020</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 234: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> <span class="keyword">if</span> (str == <span class="keyword">null</span> || str.isEmpty()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 234</td> <td class="nbHitsUncovered"><a title="Line 234: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> 422342</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 234: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> <span class="keyword">if</span> (str == <span class="keyword">null</span> || str.isEmpty()) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 235</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> <tr> <td class="numLine"> 236</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 237</td> <td class="nbHitsCovered"><a title="Line 237: Conditional coverage 100% (2/2)."> 659456</a></td> <td class="src"><pre class="src"> <a title="Line 237: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = 0; i < str.length(); i++) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 238</td> <td class="nbHitsCovered"> 441136</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">char</span> c = str.charAt(i);</pre></td></tr> -<tr> <td class="numLineCover"> 239</td> <td class="nbHitsCovered"><a title="Line 239: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 441136</a></td> <td class="src"><pre class="src"> <a title="Line 239: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (c < <span class="string">'0'</span> || c > <span class="string">'9'</span>) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 240</td> <td class="nbHitsCovered"> 205688</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 237</td> <td class="nbHitsCovered"><a title="Line 237: Conditional coverage 100% (2/2)."> 657204</a></td> <td class="src"><pre class="src"> <a title="Line 237: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = 0; i < str.length(); i++) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 238</td> <td class="nbHitsCovered"> 439458</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">char</span> c = str.charAt(i);</pre></td></tr> +<tr> <td class="numLineCover"> 239</td> <td class="nbHitsCovered"><a title="Line 239: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 439458</a></td> <td class="src"><pre class="src"> <a title="Line 239: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (c < <span class="string">'0'</span> || c > <span class="string">'9'</span>) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 240</td> <td class="nbHitsCovered"> 204584</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> <tr> <td class="numLine"> 241</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 242</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 243</td> <td class="nbHitsCovered"> 218320</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 243</td> <td class="nbHitsCovered"> 217746</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> <tr> <td class="numLine"> 244</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 245</td> <td class="nbHits"> </td> @@ -448,7 +448,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 255</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"> 256</td> <td class="nbHitsCovered"> 109747</td> <td class="src"><pre class="src">  <span class="keyword">return</span> name;</pre></td></tr> +<tr> <td class="numLineCover"> 256</td> <td class="nbHitsCovered"> 110720</td> <td class="src"><pre class="src">  <span class="keyword">return</span> name;</pre></td></tr> <tr> <td class="numLine"> 257</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 258</td> <td class="nbHits"> </td> @@ -489,7 +489,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 277</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> String getVersion() {</pre></td></tr> -<tr> <td class="numLineCover"> 278</td> <td class="nbHitsCovered"> 14153</td> <td class="src"><pre class="src">  <span class="keyword">return</span> version;</pre></td></tr> +<tr> <td class="numLineCover"> 278</td> <td class="nbHitsCovered"> 19587</td> <td class="src"><pre class="src">  <span class="keyword">return</span> version;</pre></td></tr> <tr> <td class="numLine"> 279</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 280</td> <td class="nbHits"> </td> @@ -530,7 +530,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 299</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> String getRevision() {</pre></td></tr> -<tr> <td class="numLineCover"> 300</td> <td class="nbHitsCovered"> 16805</td> <td class="src"><pre class="src">  <span class="keyword">return</span> revision;</pre></td></tr> +<tr> <td class="numLineCover"> 300</td> <td class="nbHitsCovered"> 19171</td> <td class="src"><pre class="src">  <span class="keyword">return</span> revision;</pre></td></tr> <tr> <td class="numLine"> 301</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 302</td> <td class="nbHits"> </td> @@ -594,6 +594,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter.html index 1a59d35f6..720a9214b 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter.html @@ -198,6 +198,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Activation.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Activation.html index 5024ac748..f32c33c8b 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Activation.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Activation.html @@ -393,6 +393,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile.html index 71584e09f..3f42df27c 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile.html @@ -226,6 +226,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS.html index 9f30389f6..46f6ed79e 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS.html @@ -334,6 +334,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty.html index f5543d752..c0903cd28 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty.html @@ -226,6 +226,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Build.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Build.html index 69604ea0a..0963ab698 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Build.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Build.html @@ -1586,6 +1586,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.html index 683234a96..fcc331bc4 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.html @@ -1115,6 +1115,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.CiManagement.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.CiManagement.html index ac9535756..e22bea85b 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.CiManagement.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.CiManagement.html @@ -417,6 +417,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Contributor.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Contributor.html index 396da1640..2a885ef91 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Contributor.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Contributor.html @@ -847,6 +847,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Dependency.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Dependency.html index 05d4c4c82..5851539fc 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Dependency.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Dependency.html @@ -753,6 +753,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement.html index bceed6b38..77174b8af 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement.html @@ -311,6 +311,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository.html index 008b2b37e..38abac946 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository.html @@ -393,6 +393,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Developer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Developer.html index 446c54336..83141a378 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Developer.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Developer.html @@ -898,6 +898,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement.html index 752d6bfd9..380f841a4 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement.html @@ -446,6 +446,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Exclusion.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Exclusion.html index a5d77c084..8111cdfe1 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Exclusion.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Exclusion.html @@ -218,6 +218,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Extension.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Extension.html index 8c8819de3..74f363f01 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Extension.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Extension.html @@ -273,6 +273,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement.html index 22f1f3e94..a6a67a9a1 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement.html @@ -222,6 +222,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.License.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.License.html index 1b791b705..3d4a27afe 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.License.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.License.html @@ -336,6 +336,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.MailingList.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.MailingList.html index 25b9cd242..1625b5435 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.MailingList.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.MailingList.html @@ -588,6 +588,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Model.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Model.html index 7a149cc2f..b3e2b0397 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Model.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Model.html @@ -3330,6 +3330,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Notifier.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Notifier.html index 1b161cb73..5db6569b0 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Notifier.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Notifier.html @@ -659,6 +659,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory.html index 8d6893eed..f74b22506 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory.html @@ -1394,6 +1394,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Organization.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Organization.html index e480b7045..e1aa3d2a0 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Organization.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Organization.html @@ -218,6 +218,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Parent.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Parent.html index f2f2edb4a..ec8952d2e 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Parent.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Parent.html @@ -332,6 +332,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Plugin.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Plugin.html index fbbffa07b..24bd1adb5 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Plugin.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Plugin.html @@ -1184,6 +1184,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.html index 6789fb47c..8274cbcb3 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.html @@ -678,6 +678,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement.html index d1490d596..0dae3f09f 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement.html @@ -311,6 +311,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites.html index 625d77cbb..914074b30 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites.html @@ -167,6 +167,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Profile.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Profile.html index 241c15276..8de0457c6 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Profile.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Profile.html @@ -1629,6 +1629,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Relocation.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Relocation.html index 0ca7dc489..e286ec354 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Relocation.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Relocation.html @@ -330,6 +330,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.html index aea7de1f4..57bb32623 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.html @@ -733,6 +733,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.html index c32108cd8..28aba3a82 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.html @@ -623,6 +623,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Reporting.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Reporting.html index 0bf1df314..408b239a9 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Reporting.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Reporting.html @@ -421,6 +421,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Repository.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Repository.html index 133c24f2f..0cd57a88a 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Repository.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Repository.html @@ -446,6 +446,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy.html index afbb10da7..706955dbd 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy.html @@ -277,6 +277,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Resource.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Resource.html index 01ded28c3..f4abaae10 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Resource.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Resource.html @@ -678,6 +678,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Scm.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Scm.html index c19173b3d..f816b8bb1 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Scm.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Scm.html @@ -332,6 +332,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Site.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Site.html index 29e2f8e25..e9c672d11 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Site.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Site.html @@ -277,6 +277,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.package-info.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.package-info.html index 01b8b1acb..dc250beb3 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.package-info.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.package-info.html @@ -37,6 +37,6 @@ <td class="src"><pre class="src"> <span class="keyword">package</span> org.owasp.dependencycheck.jaxb.pom.generated;</pre></td></tr> </table> -<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.reporting.ReportGenerator.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.reporting.ReportGenerator.html index 5b8a329a5..b8914ea50 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.reporting.ReportGenerator.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.reporting.ReportGenerator.html @@ -437,6 +437,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.reporting.VelocityLoggerRedirect.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.reporting.VelocityLoggerRedirect.html index 522cc2bd8..1a5242892 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.reporting.VelocityLoggerRedirect.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.reporting.VelocityLoggerRedirect.html @@ -221,6 +221,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Checksum.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Checksum.html index 7bc7a24da..83b220801 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Checksum.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Checksum.html @@ -88,36 +88,36 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 36</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">byte</span>[] getChecksum(String algorithm, File file) <span class="keyword">throws</span> NoSuchAlgorithmException, IOException {</pre></td></tr> -<tr> <td class="numLineCover"> 37</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  InputStream fis = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 38</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  <span class="keyword">byte</span>[] buffer = <span class="keyword">new</span> <span class="keyword">byte</span>[1024];</pre></td></tr> -<tr> <td class="numLineCover"> 39</td> <td class="nbHitsCovered"> 59</td> <td class="src"><pre class="src">  MessageDigest complete = MessageDigest.getInstance(algorithm);</pre></td></tr> +<tr> <td class="numLineCover"> 37</td> <td class="nbHitsCovered"> 75</td> <td class="src"><pre class="src">  InputStream fis = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 38</td> <td class="nbHitsCovered"> 75</td> <td class="src"><pre class="src">  <span class="keyword">byte</span>[] buffer = <span class="keyword">new</span> <span class="keyword">byte</span>[1024];</pre></td></tr> +<tr> <td class="numLineCover"> 39</td> <td class="nbHitsCovered"> 75</td> <td class="src"><pre class="src">  MessageDigest complete = MessageDigest.getInstance(algorithm);</pre></td></tr> <tr> <td class="numLine"> 40</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">int</span> numRead;</pre></td></tr> <tr> <td class="numLine"> 41</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 42</td> <td class="nbHitsCovered"> 58</td> <td class="src"><pre class="src">  fis = <span class="keyword">new</span> FileInputStream(file);</pre></td></tr> +<tr> <td class="numLineCover"> 42</td> <td class="nbHitsCovered"> 74</td> <td class="src"><pre class="src">  fis = <span class="keyword">new</span> FileInputStream(file);</pre></td></tr> <tr> <td class="numLine"> 43</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">do</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 44</td> <td class="nbHitsCovered"> 30964</td> <td class="src"><pre class="src">  numRead = fis.read(buffer);</pre></td></tr> -<tr> <td class="numLineCover"> 45</td> <td class="nbHitsCovered"><a title="Line 45: Conditional coverage 100% (2/2)."> 30964</a></td> <td class="src"><pre class="src"> <a title="Line 45: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (numRead > 0) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 46</td> <td class="nbHitsCovered"> 30907</td> <td class="src"><pre class="src">  complete.update(buffer, 0, numRead);</pre></td></tr> +<tr> <td class="numLineCover"> 44</td> <td class="nbHitsCovered"> 39350</td> <td class="src"><pre class="src">  numRead = fis.read(buffer);</pre></td></tr> +<tr> <td class="numLineCover"> 45</td> <td class="nbHitsCovered"><a title="Line 45: Conditional coverage 100% (2/2)."> 39350</a></td> <td class="src"><pre class="src"> <a title="Line 45: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (numRead > 0) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 46</td> <td class="nbHitsCovered"> 39277</td> <td class="src"><pre class="src">  complete.update(buffer, 0, numRead);</pre></td></tr> <tr> <td class="numLine"> 47</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 48</td> <td class="nbHitsCovered"><a title="Line 48: Conditional coverage 100% (2/2)."> 30964</a></td> <td class="src"><pre class="src"> <a title="Line 48: Conditional coverage 100% (2/2)."> } <span class="keyword">while</span> (numRead != -1);</a></pre></td></tr> +<tr> <td class="numLineCover"> 48</td> <td class="nbHitsCovered"><a title="Line 48: Conditional coverage 100% (2/2)."> 39350</a></td> <td class="src"><pre class="src"> <a title="Line 48: Conditional coverage 100% (2/2)."> } <span class="keyword">while</span> (numRead != -1);</a></pre></td></tr> <tr> <td class="numLine"> 49</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 50</td> <td class="nbHitsCovered"><a title="Line 50: Conditional coverage 100% (2/2)."> 58</a></td> <td class="src"><pre class="src"> <a title="Line 50: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (fis != <span class="keyword">null</span>) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 50</td> <td class="nbHitsCovered"><a title="Line 50: Conditional coverage 100% (2/2)."> 74</a></td> <td class="src"><pre class="src"> <a title="Line 50: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (fis != <span class="keyword">null</span>) {</a></pre></td></tr> <tr> <td class="numLine"> 51</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 52</td> <td class="nbHitsCovered"> 57</td> <td class="src"><pre class="src">  fis.close();</pre></td></tr> +<tr> <td class="numLineCover"> 52</td> <td class="nbHitsCovered"> 73</td> <td class="src"><pre class="src">  fis.close();</pre></td></tr> <tr> <td class="numLineCover"> 53</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"> 54</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Checksum.<span class="keyword">class</span>.getName()).log(Level.FINEST, <span class="string">"Error closing file '"</span> + file.getName() + <span class="string">"'."</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 55</td> <td class="nbHitsCovered"> 58</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 55</td> <td class="nbHitsCovered"> 74</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 56</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 57</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 58</td> <td class="nbHitsCovered"> 57</td> <td class="src"><pre class="src">  <span class="keyword">return</span> complete.digest();</pre></td></tr> +<tr> <td class="numLineCover"> 58</td> <td class="nbHitsCovered"> 73</td> <td class="src"><pre class="src">  <span class="keyword">return</span> complete.digest();</pre></td></tr> <tr> <td class="numLine"> 59</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 60</td> <td class="nbHits"> </td> @@ -140,8 +140,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 69</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> String getMD5Checksum(File file) <span class="keyword">throws</span> IOException, NoSuchAlgorithmException {</pre></td></tr> -<tr> <td class="numLineCover"> 70</td> <td class="nbHitsCovered"> 28</td> <td class="src"><pre class="src">  <span class="keyword">byte</span>[] b = getChecksum(<span class="string">"MD5"</span>, file);</pre></td></tr> -<tr> <td class="numLineCover"> 71</td> <td class="nbHitsCovered"> 28</td> <td class="src"><pre class="src">  <span class="keyword">return</span> getHex(b);</pre></td></tr> +<tr> <td class="numLineCover"> 70</td> <td class="nbHitsCovered"> 36</td> <td class="src"><pre class="src">  <span class="keyword">byte</span>[] b = getChecksum(<span class="string">"MD5"</span>, file);</pre></td></tr> +<tr> <td class="numLineCover"> 71</td> <td class="nbHitsCovered"> 36</td> <td class="src"><pre class="src">  <span class="keyword">return</span> getHex(b);</pre></td></tr> <tr> <td class="numLine"> 72</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 73</td> <td class="nbHits"> </td> @@ -164,8 +164,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 82</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> String getSHA1Checksum(File file) <span class="keyword">throws</span> IOException, NoSuchAlgorithmException {</pre></td></tr> -<tr> <td class="numLineCover"> 83</td> <td class="nbHitsCovered"> 28</td> <td class="src"><pre class="src">  <span class="keyword">byte</span>[] b = getChecksum(<span class="string">"SHA1"</span>, file);</pre></td></tr> -<tr> <td class="numLineCover"> 84</td> <td class="nbHitsCovered"> 28</td> <td class="src"><pre class="src">  <span class="keyword">return</span> getHex(b);</pre></td></tr> +<tr> <td class="numLineCover"> 83</td> <td class="nbHitsCovered"> 36</td> <td class="src"><pre class="src">  <span class="keyword">byte</span>[] b = getChecksum(<span class="string">"SHA1"</span>, file);</pre></td></tr> +<tr> <td class="numLineCover"> 84</td> <td class="nbHitsCovered"> 36</td> <td class="src"><pre class="src">  <span class="keyword">return</span> getHex(b);</pre></td></tr> <tr> <td class="numLine"> 85</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 86</td> <td class="nbHits"> </td> @@ -192,22 +192,22 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 97</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> String getHex(<span class="keyword">byte</span>[] raw) {</pre></td></tr> -<tr> <td class="numLineCover"> 98</td> <td class="nbHitsUncovered"><a title="Line 98: Conditional coverage 50% (1/2)."> 57</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 98: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (raw == <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 98</td> <td class="nbHitsUncovered"><a title="Line 98: Conditional coverage 50% (1/2)."> 73</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 98: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (raw == <span class="keyword">null</span>) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 99</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">null</span>;</span></pre></td></tr> <tr> <td class="numLine"> 100</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 101</td> <td class="nbHitsCovered"> 57</td> <td class="src"><pre class="src">  <span class="keyword">final</span> StringBuilder hex = <span class="keyword">new</span> StringBuilder(2 * raw.length);</pre></td></tr> -<tr> <td class="numLineCover"> 102</td> <td class="nbHitsCovered"><a title="Line 102: Conditional coverage 100% (2/2)."> 1082</a></td> <td class="src"><pre class="src"> <a title="Line 102: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">final</span> <span class="keyword">byte</span> b : raw) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 103</td> <td class="nbHitsCovered"> 1025</td> <td class="src"><pre class="src">  hex.append(HEXES.charAt((b & 0xF0) >> 4)).append(HEXES.charAt((b & 0x0F)));</pre></td></tr> +<tr> <td class="numLineCover"> 101</td> <td class="nbHitsCovered"> 73</td> <td class="src"><pre class="src">  <span class="keyword">final</span> StringBuilder hex = <span class="keyword">new</span> StringBuilder(2 * raw.length);</pre></td></tr> +<tr> <td class="numLineCover"> 102</td> <td class="nbHitsCovered"><a title="Line 102: Conditional coverage 100% (2/2)."> 1386</a></td> <td class="src"><pre class="src"> <a title="Line 102: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">final</span> <span class="keyword">byte</span> b : raw) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 103</td> <td class="nbHitsCovered"> 1313</td> <td class="src"><pre class="src">  hex.append(HEXES.charAt((b & 0xF0) >> 4)).append(HEXES.charAt((b & 0x0F)));</pre></td></tr> <tr> <td class="numLine"> 104</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 105</td> <td class="nbHitsCovered"> 57</td> <td class="src"><pre class="src">  <span class="keyword">return</span> hex.toString();</pre></td></tr> +<tr> <td class="numLineCover"> 105</td> <td class="nbHitsCovered"> 73</td> <td class="src"><pre class="src">  <span class="keyword">return</span> hex.toString();</pre></td></tr> <tr> <td class="numLine"> 106</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 107</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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DependencyVersion.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DependencyVersion.html index 523a08446..8b624b683 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DependencyVersion.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DependencyVersion.html @@ -106,8 +106,8 @@ <td class="src"><pre class="src"> <span class="comment"> * Constructor for a empty DependencyVersion.</span></pre></td></tr> <tr> <td class="numLine"> 45</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 46</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  <span class="keyword">public</span> DependencyVersion() {</pre></td></tr> -<tr> <td class="numLineCover"> 47</td> <td class="nbHitsCovered"> 16</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 46</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src">  <span class="keyword">public</span> DependencyVersion() {</pre></td></tr> +<tr> <td class="numLineCover"> 47</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 48</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 49</td> <td class="nbHits"> </td> @@ -126,9 +126,9 @@ <td class="src"><pre class="src"> <span class="comment"> * @param version the well formated version number to parse</span></pre></td></tr> <tr> <td class="numLine"> 56</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 57</td> <td class="nbHitsCovered"> 10386</td> <td class="src"><pre class="src">  <span class="keyword">public</span> DependencyVersion(String version) {</pre></td></tr> -<tr> <td class="numLineCover"> 58</td> <td class="nbHitsCovered"> 10386</td> <td class="src"><pre class="src">  parseVersion(version);</pre></td></tr> -<tr> <td class="numLineCover"> 59</td> <td class="nbHitsCovered"> 10386</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 57</td> <td class="nbHitsCovered"> 12808</td> <td class="src"><pre class="src">  <span class="keyword">public</span> DependencyVersion(String version) {</pre></td></tr> +<tr> <td class="numLineCover"> 58</td> <td class="nbHitsCovered"> 12808</td> <td class="src"><pre class="src">  parseVersion(version);</pre></td></tr> +<tr> <td class="numLineCover"> 59</td> <td class="nbHitsCovered"> 12808</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 60</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 61</td> <td class="nbHits"> </td> @@ -147,21 +147,21 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 68</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">final</span> <span class="keyword">void</span> parseVersion(String version) {</pre></td></tr> -<tr> <td class="numLineCover"> 69</td> <td class="nbHitsCovered"> 10388</td> <td class="src"><pre class="src">  versionParts = <span class="keyword">new</span> ArrayList<String>();</pre></td></tr> -<tr> <td class="numLineCover"> 70</td> <td class="nbHitsUncovered"><a title="Line 70: Conditional coverage 50% (1/2)."> 10388</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 70: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (version != <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 71</td> <td class="nbHitsCovered"> 10388</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Pattern rx = Pattern.compile(<span class="string">"(\\d+|[a-z]+\\d+|(release|beta|alpha)$)"</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 72</td> <td class="nbHitsCovered"> 10388</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Matcher matcher = rx.matcher(version.toLowerCase());</pre></td></tr> -<tr> <td class="numLineCover"> 73</td> <td class="nbHitsCovered"><a title="Line 73: Conditional coverage 100% (2/2)."> 42686</a></td> <td class="src"><pre class="src"> <a title="Line 73: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (matcher.find()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 74</td> <td class="nbHitsCovered"> 32298</td> <td class="src"><pre class="src">  versionParts.add(matcher.group());</pre></td></tr> +<tr> <td class="numLineCover"> 69</td> <td class="nbHitsCovered"> 12810</td> <td class="src"><pre class="src">  versionParts = <span class="keyword">new</span> ArrayList<String>();</pre></td></tr> +<tr> <td class="numLineCover"> 70</td> <td class="nbHitsUncovered"><a title="Line 70: Conditional coverage 50% (1/2)."> 12810</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 70: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (version != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 71</td> <td class="nbHitsCovered"> 12810</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Pattern rx = Pattern.compile(<span class="string">"(\\d+|[a-z]+\\d+|(release|beta|alpha)$)"</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 72</td> <td class="nbHitsCovered"> 12810</td> <td class="src"><pre class="src">  <span class="keyword">final</span> Matcher matcher = rx.matcher(version.toLowerCase());</pre></td></tr> +<tr> <td class="numLineCover"> 73</td> <td class="nbHitsCovered"><a title="Line 73: Conditional coverage 100% (2/2)."> 52728</a></td> <td class="src"><pre class="src"> <a title="Line 73: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (matcher.find()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 74</td> <td class="nbHitsCovered"> 39918</td> <td class="src"><pre class="src">  versionParts.add(matcher.group());</pre></td></tr> <tr> <td class="numLine"> 75</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 76</td> <td class="nbHitsCovered"><a title="Line 76: Conditional coverage 100% (2/2)."> 10388</a></td> <td class="src"><pre class="src"> <a title="Line 76: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (versionParts.isEmpty()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 77</td> <td class="nbHitsCovered"> 55</td> <td class="src"><pre class="src">  versionParts.add(version);</pre></td></tr> +<tr> <td class="numLineCover"> 76</td> <td class="nbHitsCovered"><a title="Line 76: Conditional coverage 100% (2/2)."> 12810</a></td> <td class="src"><pre class="src"> <a title="Line 76: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (versionParts.isEmpty()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 77</td> <td class="nbHitsCovered"> 77</td> <td class="src"><pre class="src">  versionParts.add(version);</pre></td></tr> <tr> <td class="numLine"> 78</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 79</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 80</td> <td class="nbHitsCovered"> 10388</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 80</td> <td class="nbHitsCovered"> 12810</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 81</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 82</td> <td class="nbHits"> </td> @@ -184,7 +184,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 91</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> List<String> getVersionParts() {</pre></td></tr> -<tr> <td class="numLineCover"> 92</td> <td class="nbHitsCovered"> 16338</td> <td class="src"><pre class="src">  <span class="keyword">return</span> versionParts;</pre></td></tr> +<tr> <td class="numLineCover"> 92</td> <td class="nbHitsCovered"> 18190</td> <td class="src"><pre class="src">  <span class="keyword">return</span> versionParts;</pre></td></tr> <tr> <td class="numLine"> 93</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 94</td> <td class="nbHits"> </td> @@ -201,8 +201,8 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 100</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">void</span> setVersionParts(List<String> versionParts) {</pre></td></tr> -<tr> <td class="numLineCover"> 101</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.versionParts = versionParts;</pre></td></tr> -<tr> <td class="numLineCover"> 102</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 101</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.versionParts = versionParts;</pre></td></tr> +<tr> <td class="numLineCover"> 102</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 103</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 104</td> <td class="nbHits"> </td> @@ -236,7 +236,7 @@ <td class="src"><pre class="src">  @Override</pre></td></tr> <tr> <td class="numLine"> 119</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> String toString() {</pre></td></tr> -<tr> <td class="numLineCover"> 120</td> <td class="nbHitsCovered"> 2056</td> <td class="src"><pre class="src">  <span class="keyword">return</span> StringUtils.join(versionParts.toArray(), <span class="string">"."</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 120</td> <td class="nbHitsCovered"> 3681</td> <td class="src"><pre class="src">  <span class="keyword">return</span> StringUtils.join(versionParts.toArray(), <span class="string">"."</span>);</pre></td></tr> <tr> <td class="numLine"> 121</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 122</td> <td class="nbHits"> </td> @@ -257,33 +257,33 @@ <td class="src"><pre class="src">  @Override</pre></td></tr> <tr> <td class="numLine"> 130</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> equals(Object obj) {</pre></td></tr> -<tr> <td class="numLineCover"> 131</td> <td class="nbHitsUncovered"><a title="Line 131: Conditional coverage 50% (1/2)."> 10155</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 131: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (obj == <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 131</td> <td class="nbHitsUncovered"><a title="Line 131: Conditional coverage 50% (1/2)."> 12444</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 131: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (obj == <span class="keyword">null</span>) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 132</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> <tr> <td class="numLine"> 133</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 134</td> <td class="nbHitsUncovered"><a title="Line 134: Conditional coverage 50% (1/2)."> 10155</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 134: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (getClass() != obj.getClass()) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 134</td> <td class="nbHitsUncovered"><a title="Line 134: Conditional coverage 50% (1/2)."> 12444</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 134: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (getClass() != obj.getClass()) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 135</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> <tr> <td class="numLine"> 136</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 137</td> <td class="nbHitsCovered"> 10155</td> <td class="src"><pre class="src">  <span class="keyword">final</span> DependencyVersion other = (DependencyVersion) obj;</pre></td></tr> -<tr> <td class="numLineCover"> 138</td> <td class="nbHitsCovered"><a title="Line 138: Conditional coverage 100% (2/2)."> 10155</a></td> <td class="src"><pre class="src"> <a title="Line 138: Conditional coverage 100% (2/2)."> <span class="keyword">final</span> <span class="keyword">int</span> max = (<span class="keyword">this</span>.versionParts.size() < other.versionParts.size())</a></pre></td></tr> +<tr> <td class="numLineCover"> 137</td> <td class="nbHitsCovered"> 12444</td> <td class="src"><pre class="src">  <span class="keyword">final</span> DependencyVersion other = (DependencyVersion) obj;</pre></td></tr> +<tr> <td class="numLineCover"> 138</td> <td class="nbHitsCovered"><a title="Line 138: Conditional coverage 100% (2/2)."> 12444</a></td> <td class="src"><pre class="src"> <a title="Line 138: Conditional coverage 100% (2/2)."> <span class="keyword">final</span> <span class="keyword">int</span> max = (<span class="keyword">this</span>.versionParts.size() < other.versionParts.size())</a></pre></td></tr> <tr> <td class="numLine"> 139</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  ? <span class="keyword">this</span>.versionParts.size() : other.versionParts.size();</pre></td></tr> <tr> <td class="numLine"> 140</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//TODO steal better version of code from compareTo</span></pre></td></tr> -<tr> <td class="numLineCover"> 141</td> <td class="nbHitsCovered"><a title="Line 141: Conditional coverage 100% (2/2)."> 16396</a></td> <td class="src"><pre class="src"> <a title="Line 141: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = 0; i < max; i++) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 142</td> <td class="nbHitsCovered"> 15726</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String thisPart = <span class="keyword">this</span>.versionParts.get(i);</pre></td></tr> -<tr> <td class="numLineCover"> 143</td> <td class="nbHitsCovered"> 15726</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String otherPart = other.versionParts.get(i);</pre></td></tr> -<tr> <td class="numLineCover"> 144</td> <td class="nbHitsCovered"><a title="Line 144: Conditional coverage 100% (2/2)."> 15726</a></td> <td class="src"><pre class="src"> <a title="Line 144: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (!thisPart.equals(otherPart)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 145</td> <td class="nbHitsCovered"> 9485</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 141</td> <td class="nbHitsCovered"><a title="Line 141: Conditional coverage 100% (2/2)."> 18863</a></td> <td class="src"><pre class="src"> <a title="Line 141: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = 0; i < max; i++) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 142</td> <td class="nbHitsCovered"> 18174</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String thisPart = <span class="keyword">this</span>.versionParts.get(i);</pre></td></tr> +<tr> <td class="numLineCover"> 143</td> <td class="nbHitsCovered"> 18174</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String otherPart = other.versionParts.get(i);</pre></td></tr> +<tr> <td class="numLineCover"> 144</td> <td class="nbHitsCovered"><a title="Line 144: Conditional coverage 100% (2/2)."> 18174</a></td> <td class="src"><pre class="src"> <a title="Line 144: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (!thisPart.equals(otherPart)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 145</td> <td class="nbHitsCovered"> 11755</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> <tr> <td class="numLine"> 146</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 147</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 148</td> <td class="nbHitsCovered"><a title="Line 148: Conditional coverage 100% (2/2)."> 670</a></td> <td class="src"><pre class="src"> <a title="Line 148: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (<span class="keyword">this</span>.versionParts.size() > max) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 149</td> <td class="nbHitsUncovered"><a title="Line 149: Conditional coverage 50% (1/2)."> 88</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 149: Conditional coverage 50% (1/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = max; i < <span class="keyword">this</span>.versionParts.size(); i++) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 150</td> <td class="nbHitsUncovered"><a title="Line 150: Conditional coverage 50% (1/2)."> 88</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 150: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!<span class="string">"0"</span>.equals(<span class="keyword">this</span>.versionParts.get(i))) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 151</td> <td class="nbHitsCovered"> 88</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 148</td> <td class="nbHitsCovered"><a title="Line 148: Conditional coverage 100% (2/2)."> 689</a></td> <td class="src"><pre class="src"> <a title="Line 148: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (<span class="keyword">this</span>.versionParts.size() > max) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 149</td> <td class="nbHitsUncovered"><a title="Line 149: Conditional coverage 50% (1/2)."> 86</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 149: Conditional coverage 50% (1/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = max; i < <span class="keyword">this</span>.versionParts.size(); i++) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 150</td> <td class="nbHitsUncovered"><a title="Line 150: Conditional coverage 50% (1/2)."> 86</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 150: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!<span class="string">"0"</span>.equals(<span class="keyword">this</span>.versionParts.get(i))) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 151</td> <td class="nbHitsCovered"> 86</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> <tr> <td class="numLine"> 152</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 153</td> <td class="nbHits"> </td> @@ -292,7 +292,7 @@ <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 155</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 156</td> <td class="nbHitsCovered"><a title="Line 156: Conditional coverage 100% (2/2)."> 582</a></td> <td class="src"><pre class="src"> <a title="Line 156: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (other.versionParts.size() > max) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 156</td> <td class="nbHitsCovered"><a title="Line 156: Conditional coverage 100% (2/2)."> 603</a></td> <td class="src"><pre class="src"> <a title="Line 156: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (other.versionParts.size() > max) {</a></pre></td></tr> <tr> <td class="numLineCover"> 157</td> <td class="nbHitsCovered"><a title="Line 157: Conditional coverage 100% (2/2)."> 463</a></td> <td class="src"><pre class="src"> <a title="Line 157: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = max; i < other.versionParts.size(); i++) {</a></pre></td></tr> <tr> <td class="numLineCover"> 158</td> <td class="nbHitsCovered"><a title="Line 158: Conditional coverage 100% (2/2)."> 447</a></td> <td class="src"><pre class="src"> <a title="Line 158: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (!<span class="string">"0"</span>.equals(other.versionParts.get(i))) {</a></pre></td></tr> <tr> <td class="numLineCover"> 159</td> <td class="nbHitsCovered"> 415</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">false</span>;</pre></td></tr> @@ -314,7 +314,7 @@ <td class="src"><pre class="src"> <span class="comment"> * }</span></pre></td></tr> <tr> <td class="numLine"> 168</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 169</td> <td class="nbHitsCovered"> 167</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 169</td> <td class="nbHitsCovered"> 188</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr> <tr> <td class="numLine"> 170</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 171</td> <td class="nbHits"> </td> @@ -358,35 +358,35 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 192</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> matchesAtLeastThreeLevels(DependencyVersion version) {</pre></td></tr> -<tr> <td class="numLineCover"> 193</td> <td class="nbHitsUncovered"><a title="Line 193: Conditional coverage 50% (1/2)."> 7507</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 193: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (version == <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 193</td> <td class="nbHitsUncovered"><a title="Line 193: Conditional coverage 50% (1/2)."> 8335</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 193: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (version == <span class="keyword">null</span>) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 194</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr> <tr> <td class="numLine"> 195</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 196</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 197</td> <td class="nbHitsCovered"> 7507</td> <td class="src"><pre class="src">  <span class="keyword">boolean</span> ret = <span class="keyword">true</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 198</td> <td class="nbHitsCovered"><a title="Line 198: Conditional coverage 100% (2/2)."> 7507</a></td> <td class="src"><pre class="src"> <a title="Line 198: Conditional coverage 100% (2/2)."> <span class="keyword">int</span> max = (<span class="keyword">this</span>.versionParts.size() < version.versionParts.size())</a></pre></td></tr> +<tr> <td class="numLineCover"> 197</td> <td class="nbHitsCovered"> 8335</td> <td class="src"><pre class="src">  <span class="keyword">boolean</span> ret = <span class="keyword">true</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 198</td> <td class="nbHitsCovered"><a title="Line 198: Conditional coverage 100% (2/2)."> 8335</a></td> <td class="src"><pre class="src"> <a title="Line 198: Conditional coverage 100% (2/2)."> <span class="keyword">int</span> max = (<span class="keyword">this</span>.versionParts.size() < version.versionParts.size())</a></pre></td></tr> <tr> <td class="numLine"> 199</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  ? <span class="keyword">this</span>.versionParts.size() : version.versionParts.size();</pre></td></tr> <tr> <td class="numLine"> 200</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 201</td> <td class="nbHitsCovered"><a title="Line 201: Conditional coverage 100% (2/2)."> 7507</a></td> <td class="src"><pre class="src"> <a title="Line 201: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (max > 3) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 201</td> <td class="nbHitsCovered"><a title="Line 201: Conditional coverage 100% (2/2)."> 8335</a></td> <td class="src"><pre class="src"> <a title="Line 201: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (max > 3) {</a></pre></td></tr> <tr> <td class="numLineCover"> 202</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  max = 3;</pre></td></tr> <tr> <td class="numLine"> 203</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 204</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 205</td> <td class="nbHitsCovered"><a title="Line 205: Conditional coverage 100% (2/2)."> 11690</a></td> <td class="src"><pre class="src"> <a title="Line 205: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = 0; i < max; i++) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 206</td> <td class="nbHitsUncovered"><a title="Line 206: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> 11276</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 206: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> <span class="keyword">if</span> (<span class="keyword">this</span>.versionParts.get(i) == <span class="keyword">null</span> || !<span class="keyword">this</span>.versionParts.get(i).equals(version.versionParts.get(i))) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 207</td> <td class="nbHitsCovered"> 7093</td> <td class="src"><pre class="src">  ret = <span class="keyword">false</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 208</td> <td class="nbHitsCovered"> 7093</td> <td class="src"><pre class="src">  <span class="keyword">break</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 205</td> <td class="nbHitsCovered"><a title="Line 205: Conditional coverage 100% (2/2)."> 12626</a></td> <td class="src"><pre class="src"> <a title="Line 205: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = 0; i < max; i++) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 206</td> <td class="nbHitsUncovered"><a title="Line 206: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> 12212</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 206: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> <span class="keyword">if</span> (<span class="keyword">this</span>.versionParts.get(i) == <span class="keyword">null</span> || !<span class="keyword">this</span>.versionParts.get(i).equals(version.versionParts.get(i))) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 207</td> <td class="nbHitsCovered"> 7921</td> <td class="src"><pre class="src">  ret = <span class="keyword">false</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 208</td> <td class="nbHitsCovered"> 7921</td> <td class="src"><pre class="src">  <span class="keyword">break</span>;</pre></td></tr> <tr> <td class="numLine"> 209</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 210</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 211</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 212</td> <td class="nbHitsCovered"> 7507</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ret;</pre></td></tr> +<tr> <td class="numLineCover"> 212</td> <td class="nbHitsCovered"> 8335</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ret;</pre></td></tr> <tr> <td class="numLine"> 213</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 214</td> <td class="nbHits"> </td> @@ -395,28 +395,28 @@ <td class="src"><pre class="src">  @Override</pre></td></tr> <tr> <td class="numLine"> 216</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">int</span> compareTo(DependencyVersion version) {</pre></td></tr> -<tr> <td class="numLineCover"> 217</td> <td class="nbHitsUncovered"><a title="Line 217: Conditional coverage 50% (1/2)."> 28</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 217: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (version == <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 217</td> <td class="nbHitsUncovered"><a title="Line 217: Conditional coverage 50% (1/2)."> 54</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 217: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (version == <span class="keyword">null</span>) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 218</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> 1;</span></pre></td></tr> <tr> <td class="numLine"> 219</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 220</td> <td class="nbHitsCovered"> 28</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<String> left = <span class="keyword">this</span>.getVersionParts();</pre></td></tr> -<tr> <td class="numLineCover"> 221</td> <td class="nbHitsCovered"> 28</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<String> right = version.getVersionParts();</pre></td></tr> -<tr> <td class="numLineCover"> 222</td> <td class="nbHitsCovered"><a title="Line 222: Conditional coverage 100% (2/2)."> 28</a></td> <td class="src"><pre class="src"> <a title="Line 222: Conditional coverage 100% (2/2)."> <span class="keyword">final</span> <span class="keyword">int</span> max = left.size() < right.size() ? left.size() : right.size();</a></pre></td></tr> +<tr> <td class="numLineCover"> 220</td> <td class="nbHitsCovered"> 54</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<String> left = <span class="keyword">this</span>.getVersionParts();</pre></td></tr> +<tr> <td class="numLineCover"> 221</td> <td class="nbHitsCovered"> 54</td> <td class="src"><pre class="src">  <span class="keyword">final</span> List<String> right = version.getVersionParts();</pre></td></tr> +<tr> <td class="numLineCover"> 222</td> <td class="nbHitsCovered"><a title="Line 222: Conditional coverage 100% (2/2)."> 54</a></td> <td class="src"><pre class="src"> <a title="Line 222: Conditional coverage 100% (2/2)."> <span class="keyword">final</span> <span class="keyword">int</span> max = left.size() < right.size() ? left.size() : right.size();</a></pre></td></tr> <tr> <td class="numLine"> 223</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 224</td> <td class="nbHitsCovered"><a title="Line 224: Conditional coverage 100% (2/2)."> 54</a></td> <td class="src"><pre class="src"> <a title="Line 224: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = 0; i < max; i++) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 225</td> <td class="nbHitsCovered"> 47</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String lStr = left.get(i);</pre></td></tr> -<tr> <td class="numLineCover"> 226</td> <td class="nbHitsCovered"> 47</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String rStr = right.get(i);</pre></td></tr> -<tr> <td class="numLineCover"> 227</td> <td class="nbHitsCovered"><a title="Line 227: Conditional coverage 100% (2/2)."> 47</a></td> <td class="src"><pre class="src"> <a title="Line 227: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (lStr.equals(rStr)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 228</td> <td class="nbHitsCovered"> 26</td> <td class="src"><pre class="src">  <span class="keyword">continue</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 224</td> <td class="nbHitsCovered"><a title="Line 224: Conditional coverage 100% (2/2)."> 88</a></td> <td class="src"><pre class="src"> <a title="Line 224: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = 0; i < max; i++) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 225</td> <td class="nbHitsCovered"> 81</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String lStr = left.get(i);</pre></td></tr> +<tr> <td class="numLineCover"> 226</td> <td class="nbHitsCovered"> 81</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String rStr = right.get(i);</pre></td></tr> +<tr> <td class="numLineCover"> 227</td> <td class="nbHitsCovered"><a title="Line 227: Conditional coverage 100% (2/2)."> 81</a></td> <td class="src"><pre class="src"> <a title="Line 227: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (lStr.equals(rStr)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 228</td> <td class="nbHitsCovered"> 34</td> <td class="src"><pre class="src">  <span class="keyword">continue</span>;</pre></td></tr> <tr> <td class="numLine"> 229</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 230</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 231</td> <td class="nbHitsCovered"> 21</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">int</span> l = Integer.parseInt(lStr);</pre></td></tr> -<tr> <td class="numLineCover"> 232</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">int</span> r = Integer.parseInt(rStr);</pre></td></tr> -<tr> <td class="numLineCover"> 233</td> <td class="nbHitsCovered"><a title="Line 233: Conditional coverage 100% (2/2)."> 15</a></td> <td class="src"><pre class="src"> <a title="Line 233: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (l < r) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 234</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  <span class="keyword">return</span> -1;</pre></td></tr> +<tr> <td class="numLineCover"> 231</td> <td class="nbHitsCovered"> 47</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">int</span> l = Integer.parseInt(lStr);</pre></td></tr> +<tr> <td class="numLineCover"> 232</td> <td class="nbHitsCovered"> 46</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">int</span> r = Integer.parseInt(rStr);</pre></td></tr> +<tr> <td class="numLineCover"> 233</td> <td class="nbHitsCovered"><a title="Line 233: Conditional coverage 100% (2/2)."> 41</a></td> <td class="src"><pre class="src"> <a title="Line 233: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (l < r) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 234</td> <td class="nbHitsCovered"> 32</td> <td class="src"><pre class="src">  <span class="keyword">return</span> -1;</pre></td></tr> <tr> <td class="numLineCover"> 235</td> <td class="nbHitsUncovered"><a title="Line 235: Conditional coverage 50% (1/2)."> 9</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 235: Conditional coverage 50% (1/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (l > r) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 236</td> <td class="nbHitsCovered"> 9</td> <td class="src"><pre class="src">  <span class="keyword">return</span> 1;</pre></td></tr> <tr> <td class="numLine"> 237</td> <td class="nbHits"> </td> @@ -447,6 +447,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DependencyVersionUtil.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DependencyVersionUtil.html index 2315c6875..d9f142fd0 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DependencyVersionUtil.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DependencyVersionUtil.html @@ -133,56 +133,56 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 60</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> DependencyVersion parseVersion(String text) {</pre></td></tr> -<tr> <td class="numLineCover"> 61</td> <td class="nbHitsCovered"><a title="Line 61: Conditional coverage 100% (2/2)."> 10348</a></td> <td class="src"><pre class="src"> <a title="Line 61: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (text == <span class="keyword">null</span>) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 62</td> <td class="nbHitsCovered"> 24</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 61</td> <td class="nbHitsCovered"><a title="Line 61: Conditional coverage 100% (2/2)."> 12774</a></td> <td class="src"><pre class="src"> <a title="Line 61: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (text == <span class="keyword">null</span>) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 62</td> <td class="nbHitsCovered"> 40</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">null</span>;</pre></td></tr> <tr> <td class="numLine"> 63</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 64</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//'-' is a special case used within the CVE entries, just include it as the version.</span></pre></td></tr> -<tr> <td class="numLineCover"> 65</td> <td class="nbHitsCovered"><a title="Line 65: Conditional coverage 100% (2/2)."> 10324</a></td> <td class="src"><pre class="src"> <a title="Line 65: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (<span class="string">"-"</span>.equals(text)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 66</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> DependencyVersion dv = <span class="keyword">new</span> DependencyVersion();</pre></td></tr> -<tr> <td class="numLineCover"> 67</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">final</span> ArrayList<String> list = <span class="keyword">new</span> ArrayList<String>();</pre></td></tr> -<tr> <td class="numLineCover"> 68</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  list.add(text);</pre></td></tr> -<tr> <td class="numLineCover"> 69</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  dv.setVersionParts(list);</pre></td></tr> -<tr> <td class="numLineCover"> 70</td> <td class="nbHitsCovered"> 15</td> <td class="src"><pre class="src">  <span class="keyword">return</span> dv;</pre></td></tr> +<tr> <td class="numLineCover"> 65</td> <td class="nbHitsCovered"><a title="Line 65: Conditional coverage 100% (2/2)."> 12734</a></td> <td class="src"><pre class="src"> <a title="Line 65: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (<span class="string">"-"</span>.equals(text)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 66</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  <span class="keyword">final</span> DependencyVersion dv = <span class="keyword">new</span> DependencyVersion();</pre></td></tr> +<tr> <td class="numLineCover"> 67</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  <span class="keyword">final</span> ArrayList<String> list = <span class="keyword">new</span> ArrayList<String>();</pre></td></tr> +<tr> <td class="numLineCover"> 68</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  list.add(text);</pre></td></tr> +<tr> <td class="numLineCover"> 69</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  dv.setVersionParts(list);</pre></td></tr> +<tr> <td class="numLineCover"> 70</td> <td class="nbHitsCovered"> 19</td> <td class="src"><pre class="src">  <span class="keyword">return</span> dv;</pre></td></tr> <tr> <td class="numLine"> 71</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 72</td> <td class="nbHitsCovered"> 10309</td> <td class="src"><pre class="src">  String version = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 73</td> <td class="nbHitsCovered"> 10309</td> <td class="src"><pre class="src">  Matcher matcher = RX_VERSION.matcher(text);</pre></td></tr> -<tr> <td class="numLineCover"> 74</td> <td class="nbHitsCovered"><a title="Line 74: Conditional coverage 100% (2/2)."> 10309</a></td> <td class="src"><pre class="src"> <a title="Line 74: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (matcher.find()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 75</td> <td class="nbHitsCovered"> 10193</td> <td class="src"><pre class="src">  version = matcher.group();</pre></td></tr> +<tr> <td class="numLineCover"> 72</td> <td class="nbHitsCovered"> 12715</td> <td class="src"><pre class="src">  String version = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 73</td> <td class="nbHitsCovered"> 12715</td> <td class="src"><pre class="src">  Matcher matcher = RX_VERSION.matcher(text);</pre></td></tr> +<tr> <td class="numLineCover"> 74</td> <td class="nbHitsCovered"><a title="Line 74: Conditional coverage 100% (2/2)."> 12715</a></td> <td class="src"><pre class="src"> <a title="Line 74: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (matcher.find()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 75</td> <td class="nbHitsCovered"> 12599</td> <td class="src"><pre class="src">  version = matcher.group();</pre></td></tr> <tr> <td class="numLine"> 76</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 77</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//throw away the results if there are two things that look like version numbers</span></pre></td></tr> -<tr> <td class="numLineCover"> 78</td> <td class="nbHitsCovered"><a title="Line 78: Conditional coverage 100% (2/2)."> 10309</a></td> <td class="src"><pre class="src"> <a title="Line 78: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (matcher.find()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 78</td> <td class="nbHitsCovered"><a title="Line 78: Conditional coverage 100% (2/2)."> 12715</a></td> <td class="src"><pre class="src"> <a title="Line 78: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (matcher.find()) {</a></pre></td></tr> <tr> <td class="numLineCover"> 79</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">null</span>;</pre></td></tr> <tr> <td class="numLine"> 80</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 81</td> <td class="nbHitsCovered"><a title="Line 81: Conditional coverage 100% (2/2)."> 10307</a></td> <td class="src"><pre class="src"> <a title="Line 81: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (version == <span class="keyword">null</span>) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 81</td> <td class="nbHitsCovered"><a title="Line 81: Conditional coverage 100% (2/2)."> 12713</a></td> <td class="src"><pre class="src"> <a title="Line 81: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (version == <span class="keyword">null</span>) {</a></pre></td></tr> <tr> <td class="numLineCover"> 82</td> <td class="nbHitsCovered"> 116</td> <td class="src"><pre class="src">  matcher = RX_SINGLE_VERSION.matcher(text);</pre></td></tr> <tr> <td class="numLineCover"> 83</td> <td class="nbHitsCovered"><a title="Line 83: Conditional coverage 100% (2/2)."> 116</a></td> <td class="src"><pre class="src"> <a title="Line 83: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (matcher.find()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 84</td> <td class="nbHitsCovered"> 112</td> <td class="src"><pre class="src">  version = matcher.group();</pre></td></tr> +<tr> <td class="numLineCover"> 84</td> <td class="nbHitsCovered"> 106</td> <td class="src"><pre class="src">  version = matcher.group();</pre></td></tr> <tr> <td class="numLine"> 85</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 86</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 86</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">null</span>;</pre></td></tr> <tr> <td class="numLine"> 87</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 88</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">//throw away the results if there are two things that look like version numbers</span></pre></td></tr> -<tr> <td class="numLineCover"> 89</td> <td class="nbHitsCovered"><a title="Line 89: Conditional coverage 100% (2/2)."> 112</a></td> <td class="src"><pre class="src"> <a title="Line 89: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (matcher.find()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 89</td> <td class="nbHitsCovered"><a title="Line 89: Conditional coverage 100% (2/2)."> 106</a></td> <td class="src"><pre class="src"> <a title="Line 89: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (matcher.find()) {</a></pre></td></tr> <tr> <td class="numLineCover"> 90</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">null</span>;</pre></td></tr> <tr> <td class="numLine"> 91</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 92</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 93</td> <td class="nbHitsCovered"> 10302</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">new</span> DependencyVersion(version);</pre></td></tr> +<tr> <td class="numLineCover"> 93</td> <td class="nbHitsCovered"> 12702</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">new</span> DependencyVersion(version);</pre></td></tr> <tr> <td class="numLine"> 94</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 95</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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DownloadFailedException.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DownloadFailedException.html index daf93da57..c39674a6a 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DownloadFailedException.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DownloadFailedException.html @@ -149,6 +149,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Downloader.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Downloader.html index 8a7bf2671..6564742c0 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Downloader.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Downloader.html @@ -12,7 +12,8 @@ <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.utils.Downloader.html">Downloader</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">8%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:8px"><span class="text">7/83</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">4%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:4px"><span class="text">1/24</span></div></div></td></tr></table></td><td class="value"><span class="hidden">7.0;</span>7</td></tr> + <tr><td><a href="org.owasp.dependencycheck.utils.Downloader.html">Downloader</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">7%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:7px"><span class="text">7/88</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">3%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:3px"><span class="text">1/28</span></div></div></td></tr></table></td><td class="value"><span class="hidden">6.6;</span>6.6</td></tr> + <tr><td><a href="org.owasp.dependencycheck.utils.Downloader.html">Downloader$1</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/4</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">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/2</span></div></div></td></tr></table></td><td class="value"><span class="hidden">6.6;</span>6.6</td></tr> </table> <div class="separator"> </div> @@ -68,292 +69,320 @@ <tr> <td class="numLine"> 25</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="keyword">import</span> java.io.InputStream;</pre></td></tr> <tr> <td class="numLine"> 26</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> java.net.HttpURLConnection;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.net.Authenticator;</pre></td></tr> <tr> <td class="numLine"> 27</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> java.net.InetSocketAddress;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.net.HttpURLConnection;</pre></td></tr> <tr> <td class="numLine"> 28</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> java.net.Proxy;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.net.InetSocketAddress;</pre></td></tr> <tr> <td class="numLine"> 29</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> java.net.SocketAddress;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.net.PasswordAuthentication;</pre></td></tr> <tr> <td class="numLine"> 30</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> java.net.URISyntaxException;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.net.Proxy;</pre></td></tr> <tr> <td class="numLine"> 31</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> java.net.URL;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.net.SocketAddress;</pre></td></tr> <tr> <td class="numLine"> 32</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.logging.Level;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.net.URISyntaxException;</pre></td></tr> <tr> <td class="numLine"> 33</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.logging.Logger;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.net.URL;</pre></td></tr> <tr> <td class="numLine"> 34</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.zip.GZIPInputStream;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.logging.Level;</pre></td></tr> <tr> <td class="numLine"> 35</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.zip.InflaterInputStream;</pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.logging.Logger;</pre></td></tr> <tr> <td class="numLine"> 36</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.zip.GZIPInputStream;</pre></td></tr> <tr> <td class="numLine"> 37</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.zip.InflaterInputStream;</pre></td></tr> <tr> <td class="numLine"> 38</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * A utility to download files from the Internet.</span></pre></td></tr> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 39</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 40</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @author Jeremy Long (jeremy.long@owasp.org)</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * A utility to download files from the Internet.</span></pre></td></tr> <tr> <td class="numLine"> 41</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> <tr> <td class="numLine"> 42</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">final</span> <span class="keyword">class</span> Downloader {</pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * @author Jeremy Long (jeremy.long@owasp.org)</span></pre></td></tr> <tr> <td class="numLine"> 43</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 44</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">final</span> <span class="keyword">class</span> Downloader {</pre></td></tr> <tr> <td class="numLine"> 45</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Private constructor for utility class.</span></pre></td></tr> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 46</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 47</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">private</span> Downloader() {</span></pre></td></tr> -<tr> <td class="numLineCover"> 48</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> -<tr> <td class="numLine"> 49</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 50</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 47</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Private constructor for utility class.</span></pre></td></tr> +<tr> <td class="numLine"> 48</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLineCover"> 49</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">private</span> Downloader() {</span></pre></td></tr> +<tr> <td class="numLineCover"> 50</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> <tr> <td class="numLine"> 51</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Retrieves a file from a given URL and saves it to the outputPath.</span></pre></td></tr> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 52</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 53</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param url the URL of the file to download.</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * Retrieves a file from a given URL and saves it to the outputPath.</span></pre></td></tr> <tr> <td class="numLine"> 54</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param outputPath the path to the save the file to.</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> <tr> <td class="numLine"> 55</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @throws DownloadFailedException is thrown if there is an error</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * @param url the URL of the file to download.</span></pre></td></tr> <tr> <td class="numLine"> 56</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * downloading the file.</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * @param outputPath the path to the save the file to.</span></pre></td></tr> <tr> <td class="numLine"> 57</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * @throws DownloadFailedException is thrown if there is an error</span></pre></td></tr> <tr> <td class="numLine"> 58</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> fetchFile(URL url, File outputPath) <span class="keyword">throws</span> DownloadFailedException {</pre></td></tr> -<tr> <td class="numLineCover"> 59</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  HttpURLConnection conn = <span class="keyword">null</span>;</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * downloading the file.</span></pre></td></tr> +<tr> <td class="numLine"> 59</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 60</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> fetchFile(URL url, File outputPath) <span class="keyword">throws</span> DownloadFailedException {</pre></td></tr> +<tr> <td class="numLineCover"> 61</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  HttpURLConnection conn = <span class="keyword">null</span>;</span></pre></td></tr> +<tr> <td class="numLine"> 62</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 61</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn = Downloader.getConnection(url);</span></pre></td></tr> -<tr> <td class="numLineCover"> 62</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn.setRequestProperty(<span class="string">"Accept-Encoding"</span>, <span class="string">"gzip, deflate"</span>);</span></pre></td></tr> -<tr> <td class="numLineCover"> 63</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn.connect();</span></pre></td></tr> -<tr> <td class="numLineCover"> 64</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="numLine"> 65</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 63</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn = Downloader.getConnection(url);</span></pre></td></tr> +<tr> <td class="numLineCover"> 64</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn.setRequestProperty(<span class="string">"Accept-Encoding"</span>, <span class="string">"gzip, deflate"</span>);</span></pre></td></tr> +<tr> <td class="numLineCover"> 65</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn.connect();</span></pre></td></tr> +<tr> <td class="numLineCover"> 66</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="numLine"> 67</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 66</td> <td class="nbHitsUncovered"><a title="Line 66: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 66: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (conn != <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 67</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn.disconnect();</span></pre></td></tr> -<tr> <td class="numLine"> 68</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 68</td> <td class="nbHitsUncovered"><a title="Line 68: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 68: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (conn != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 69</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn.disconnect();</span></pre></td></tr> +<tr> <td class="numLine"> 70</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 69</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 71</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 70</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn = <span class="keyword">null</span>;</span></pre></td></tr> -<tr> <td class="numLineCover"> 71</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> -<tr> <td class="numLineCover"> 72</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> DownloadFailedException(<span class="string">"Error downloading file."</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 73</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> -<tr> <td class="numLineCover"> 74</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String encoding = conn.getContentEncoding();</span></pre></td></tr> -<tr> <td class="numLine"> 75</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 72</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn = <span class="keyword">null</span>;</span></pre></td></tr> +<tr> <td class="numLineCover"> 73</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLineCover"> 74</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> DownloadFailedException(<span class="string">"Error downloading file."</span>, ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 75</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLineCover"> 76</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String encoding = conn.getContentEncoding();</span></pre></td></tr> +<tr> <td class="numLine"> 77</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 76</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  BufferedOutputStream writer = <span class="keyword">null</span>;</span></pre></td></tr> -<tr> <td class="numLineCover"> 77</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  InputStream reader = <span class="keyword">null</span>;</span></pre></td></tr> -<tr> <td class="numLine"> 78</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 78</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  BufferedOutputStream writer = <span class="keyword">null</span>;</span></pre></td></tr> +<tr> <td class="numLineCover"> 79</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  InputStream reader = <span class="keyword">null</span>;</span></pre></td></tr> +<tr> <td class="numLine"> 80</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 79</td> <td class="nbHitsUncovered"><a title="Line 79: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 79: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> <span class="keyword">if</span> (encoding != <span class="keyword">null</span> && <span class="string">"gzip"</span>.equalsIgnoreCase(encoding)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 80</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  reader = <span class="keyword">new</span> GZIPInputStream(conn.getInputStream());</span></pre></td></tr> -<tr> <td class="numLineCover"> 81</td> <td class="nbHitsUncovered"><a title="Line 81: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 81: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> } <span class="keyword">else</span> <span class="keyword">if</span> (encoding != <span class="keyword">null</span> && <span class="string">"deflate"</span>.equalsIgnoreCase(encoding)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 82</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  reader = <span class="keyword">new</span> InflaterInputStream(conn.getInputStream());</span></pre></td></tr> -<tr> <td class="numLine"> 83</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 84</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  reader = conn.getInputStream();</span></pre></td></tr> +<tr> <td class="numLineCover"> 81</td> <td class="nbHitsUncovered"><a title="Line 81: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 81: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> <span class="keyword">if</span> (encoding != <span class="keyword">null</span> && <span class="string">"gzip"</span>.equalsIgnoreCase(encoding)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 82</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  reader = <span class="keyword">new</span> GZIPInputStream(conn.getInputStream());</span></pre></td></tr> +<tr> <td class="numLineCover"> 83</td> <td class="nbHitsUncovered"><a title="Line 83: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 83: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> } <span class="keyword">else</span> <span class="keyword">if</span> (encoding != <span class="keyword">null</span> && <span class="string">"deflate"</span>.equalsIgnoreCase(encoding)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 84</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  reader = <span class="keyword">new</span> InflaterInputStream(conn.getInputStream());</span></pre></td></tr> <tr> <td class="numLine"> 85</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 86</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  reader = conn.getInputStream();</span></pre></td></tr> +<tr> <td class="numLine"> 87</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 86</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 88</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 87</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  writer = <span class="keyword">new</span> BufferedOutputStream(<span class="keyword">new</span> FileOutputStream(outputPath));</span></pre></td></tr> -<tr> <td class="numLineCover"> 88</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> <span class="keyword">byte</span>[] buffer = <span class="keyword">new</span> <span class="keyword">byte</span>[4096];</span></pre></td></tr> -<tr> <td class="numLine"> 89</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 89</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  writer = <span class="keyword">new</span> BufferedOutputStream(<span class="keyword">new</span> FileOutputStream(outputPath));</span></pre></td></tr> +<tr> <td class="numLineCover"> 90</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> <span class="keyword">byte</span>[] buffer = <span class="keyword">new</span> <span class="keyword">byte</span>[4096];</span></pre></td></tr> +<tr> <td class="numLine"> 91</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">int</span> bytesRead;</pre></td></tr> -<tr> <td class="numLineCover"> 90</td> <td class="nbHitsUncovered"><a title="Line 90: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 90: Conditional coverage 0% (0/2)."> <span class="keyword">while</span> ((bytesRead = reader.read(buffer)) > 0) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 91</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  writer.write(buffer, 0, bytesRead);</span></pre></td></tr> -<tr> <td class="numLine"> 92</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 92</td> <td class="nbHitsUncovered"><a title="Line 92: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 92: Conditional coverage 0% (0/2)."> <span class="keyword">while</span> ((bytesRead = reader.read(buffer)) > 0) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 93</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  writer.write(buffer, 0, bytesRead);</span></pre></td></tr> +<tr> <td class="numLine"> 94</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 93</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (Exception ex) {</span></pre></td></tr> -<tr> <td class="numLineCover"> 94</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> DownloadFailedException(<span class="string">"Error saving downloaded file."</span>, ex);</span></pre></td></tr> -<tr> <td class="numLine"> 95</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 96</td> <td class="nbHitsUncovered"><a title="Line 96: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 96: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (writer != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 95</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (Exception ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 96</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> DownloadFailedException(<span class="string">"Error saving downloaded file."</span>, ex);</span></pre></td></tr> <tr> <td class="numLine"> 97</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 98</td> <td class="nbHitsUncovered"><a title="Line 98: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 98: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (writer != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLine"> 99</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 98</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  writer.close();</span></pre></td></tr> -<tr> <td class="numLineCover"> 99</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (Exception ex) {</span></pre></td></tr> -<tr> <td class="numLineCover"> 100</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Downloader.<span class="keyword">class</span>.getName()).log(Level.FINEST,</span></pre></td></tr> -<tr> <td class="numLine"> 101</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="string">"Error closing the writer in Downloader."</span>, ex);</pre></td></tr> -<tr> <td class="numLineCover"> 102</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLineCover"> 100</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  writer.close();</span></pre></td></tr> +<tr> <td class="numLineCover"> 101</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (Exception ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 102</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Downloader.<span class="keyword">class</span>.getName()).log(Level.FINEST,</span></pre></td></tr> <tr> <td class="numLine"> 103</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 104</td> <td class="nbHitsUncovered"><a title="Line 104: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 104: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (reader != <span class="keyword">null</span>) {</a></span></pre></td></tr> + <td class="src"><pre class="src">  <span class="string">"Error closing the writer in Downloader."</span>, ex);</pre></td></tr> +<tr> <td class="numLineCover"> 104</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> <tr> <td class="numLine"> 105</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 106</td> <td class="nbHitsUncovered"><a title="Line 106: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 106: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (reader != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLine"> 107</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 106</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  reader.close();</span></pre></td></tr> -<tr> <td class="numLineCover"> 107</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (Exception ex) {</span></pre></td></tr> -<tr> <td class="numLineCover"> 108</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Downloader.<span class="keyword">class</span>.getName()).log(Level.FINEST,</span></pre></td></tr> -<tr> <td class="numLine"> 109</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="string">"Error closing the reader in Downloader."</span>, ex);</pre></td></tr> -<tr> <td class="numLineCover"> 110</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLineCover"> 108</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  reader.close();</span></pre></td></tr> +<tr> <td class="numLineCover"> 109</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (Exception ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 110</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Downloader.<span class="keyword">class</span>.getName()).log(Level.FINEST,</span></pre></td></tr> <tr> <td class="numLine"> 111</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="string">"Error closing the reader in Downloader."</span>, ex);</pre></td></tr> +<tr> <td class="numLineCover"> 112</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLine"> 113</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 112</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 113</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn.disconnect();</span></pre></td></tr> <tr> <td class="numLine"> 114</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 115</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn.disconnect();</span></pre></td></tr> +<tr> <td class="numLine"> 116</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 115</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn = <span class="keyword">null</span>;</span></pre></td></tr> -<tr> <td class="numLineCover"> 116</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> -<tr> <td class="numLineCover"> 117</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> -<tr> <td class="numLineCover"> 118</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> -<tr> <td class="numLine"> 119</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 120</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLineCover"> 117</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn = <span class="keyword">null</span>;</span></pre></td></tr> +<tr> <td class="numLineCover"> 118</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLineCover"> 119</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLineCover"> 120</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> <tr> <td class="numLine"> 121</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Makes an HTTP Head request to retrieve the last modified date of the</span></pre></td></tr> -<tr> <td class="numLine"> 122</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * given URL. If the file:// protocol is specified, then the lastTimestamp</span></pre></td></tr> -<tr> <td class="numLine"> 123</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * of the file is returned.</span></pre></td></tr> -<tr> <td class="numLine"> 124</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 125</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param url the URL to retrieve the timestamp from</span></pre></td></tr> -<tr> <td class="numLine"> 126</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @return an epoch timestamp</span></pre></td></tr> -<tr> <td class="numLine"> 127</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @throws DownloadFailedException is thrown if an exception occurs making</span></pre></td></tr> -<tr> <td class="numLine"> 128</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * the HTTP request</span></pre></td></tr> -<tr> <td class="numLine"> 129</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 130</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">long</span> getLastModified(URL url) <span class="keyword">throws</span> DownloadFailedException {</pre></td></tr> -<tr> <td class="numLineCover"> 131</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src">  <span class="keyword">long</span> timestamp = 0;</pre></td></tr> -<tr> <td class="numLine"> 132</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">//TODO add the FPR protocol?</span></pre></td></tr> -<tr> <td class="numLineCover"> 133</td> <td class="nbHitsUncovered"><a title="Line 133: Conditional coverage 50% (1/2)."> 14</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 133: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (<span class="string">"file"</span>.equalsIgnoreCase(url.getProtocol())) {</a></span></pre></td></tr> -<tr> <td class="numLine"> 134</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  File lastModifiedFile;</pre></td></tr> -<tr> <td class="numLine"> 135</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLine"> 136</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment">// if (System.getProperty("os.name").toLowerCase().startsWith("windows")) {</span></pre></td></tr> -<tr> <td class="numLine"> 137</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment">// String filePath = url.toString();</span></pre></td></tr> -<tr> <td class="numLine"> 138</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment">// if (filePath.matches("file://[a-zA-Z]:.*")) {</span></pre></td></tr> -<tr> <td class="numLine"> 139</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment">// f = new File(filePath.substring(7));</span></pre></td></tr> -<tr> <td class="numLine"> 140</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment">// } else {</span></pre></td></tr> -<tr> <td class="numLine"> 141</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment">// f = new File(url.toURI());</span></pre></td></tr> -<tr> <td class="numLine"> 142</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment">// }</span></pre></td></tr> -<tr> <td class="numLine"> 143</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment">// } else {</span></pre></td></tr> -<tr> <td class="numLineCover"> 144</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src">  lastModifiedFile = <span class="keyword">new</span> File(url.toURI());</pre></td></tr> -<tr> <td class="numLine"> 145</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment">// }</span></pre></td></tr> -<tr> <td class="numLineCover"> 146</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (URISyntaxException ex) {</span></pre></td></tr> -<tr> <td class="numLineCover"> 147</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 locate '%s'; is the cve.url-2.0.modified property set correctly?"</span>, url.toString());</span></pre></td></tr> -<tr> <td class="numLineCover"> 148</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> DownloadFailedException(msg);</span></pre></td></tr> -<tr> <td class="numLineCover"> 149</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 150</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src">  timestamp = lastModifiedFile.lastModified();</pre></td></tr> -<tr> <td class="numLineCover"> 151</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 152</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  HttpURLConnection conn = <span class="keyword">null</span>;</span></pre></td></tr> -<tr> <td class="numLine"> 153</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 154</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn = Downloader.getConnection(url);</span></pre></td></tr> -<tr> <td class="numLineCover"> 155</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn.setRequestMethod(<span class="string">"HEAD"</span>);</span></pre></td></tr> -<tr> <td class="numLineCover"> 156</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn.connect();</span></pre></td></tr> -<tr> <td class="numLineCover"> 157</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  timestamp = conn.getLastModified();</span></pre></td></tr> -<tr> <td class="numLineCover"> 158</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (Exception ex) {</span></pre></td></tr> -<tr> <td class="numLineCover"> 159</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> DownloadFailedException(<span class="string">"Error making HTTP HEAD request."</span>, ex);</span></pre></td></tr> -<tr> <td class="numLine"> 160</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 161</td> <td class="nbHitsUncovered"><a title="Line 161: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 161: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (conn != <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLine"> 162</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 163</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn.disconnect();</span></pre></td></tr> -<tr> <td class="numLine"> 164</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 165</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn = <span class="keyword">null</span>;</span></pre></td></tr> -<tr> <td class="numLineCover"> 166</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> -<tr> <td class="numLine"> 167</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 168</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 169</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 170</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src">  <span class="keyword">return</span> timestamp;</pre></td></tr> -<tr> <td class="numLine"> 171</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 172</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 173</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 122</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 174</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Utility method to get an HttpURLConnection. If the app is configured to</span></pre></td></tr> -<tr> <td class="numLine"> 175</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * use a proxy this method will retrieve the proxy settings and use them</span></pre></td></tr> -<tr> <td class="numLine"> 176</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * when setting up the connection.</span></pre></td></tr> -<tr> <td class="numLine"> 177</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 123</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Makes an HTTP Head request to retrieve the last modified date of the</span></pre></td></tr> +<tr> <td class="numLine"> 124</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * given URL. If the file:// protocol is specified, then the lastTimestamp</span></pre></td></tr> +<tr> <td class="numLine"> 125</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * of the file is returned.</span></pre></td></tr> +<tr> <td class="numLine"> 126</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 178</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param url the url to connect to</span></pre></td></tr> -<tr> <td class="numLine"> 179</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @return an HttpURLConnection</span></pre></td></tr> -<tr> <td class="numLine"> 180</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @throws DownloadFailedException thrown if there is an exception</span></pre></td></tr> -<tr> <td class="numLine"> 181</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 127</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param url the URL to retrieve the timestamp from</span></pre></td></tr> +<tr> <td class="numLine"> 128</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @return an epoch timestamp</span></pre></td></tr> +<tr> <td class="numLine"> 129</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @throws DownloadFailedException is thrown if an exception occurs making</span></pre></td></tr> +<tr> <td class="numLine"> 130</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * the HTTP request</span></pre></td></tr> +<tr> <td class="numLine"> 131</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 182</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> HttpURLConnection getConnection(URL url) <span class="keyword">throws</span> DownloadFailedException {</pre></td></tr> -<tr> <td class="numLineCover"> 183</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  HttpURLConnection conn = <span class="keyword">null</span>;</span></pre></td></tr> -<tr> <td class="numLineCover"> 184</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Proxy proxy = <span class="keyword">null</span>;</span></pre></td></tr> -<tr> <td class="numLineCover"> 185</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String proxyUrl = Settings.getString(Settings.KEYS.PROXY_URL);</span></pre></td></tr> -<tr> <td class="numLine"> 186</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 187</td> <td class="nbHitsUncovered"><a title="Line 187: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 187: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (proxyUrl != <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 188</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> <span class="keyword">int</span> proxyPort = Settings.getInt(Settings.KEYS.PROXY_PORT);</span></pre></td></tr> -<tr> <td class="numLineCover"> 189</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> SocketAddress addr = <span class="keyword">new</span> InetSocketAddress(proxyUrl, proxyPort);</span></pre></td></tr> -<tr> <td class="numLineCover"> 190</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  proxy = <span class="keyword">new</span> Proxy(Proxy.Type.HTTP, addr);</span></pre></td></tr> -<tr> <td class="numLineCover"> 191</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn = (HttpURLConnection) url.openConnection(proxy);</span></pre></td></tr> -<tr> <td class="numLineCover"> 192</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"> 193</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn = (HttpURLConnection) url.openConnection();</span></pre></td></tr> -<tr> <td class="numLine"> 194</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 132</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">long</span> getLastModified(URL url) <span class="keyword">throws</span> DownloadFailedException {</pre></td></tr> +<tr> <td class="numLineCover"> 133</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src">  <span class="keyword">long</span> timestamp = 0;</pre></td></tr> +<tr> <td class="numLine"> 134</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">//TODO add the FPR protocol?</span></pre></td></tr> +<tr> <td class="numLineCover"> 135</td> <td class="nbHitsUncovered"><a title="Line 135: Conditional coverage 50% (1/2)."> 14</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 135: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (<span class="string">"file"</span>.equalsIgnoreCase(url.getProtocol())) {</a></span></pre></td></tr> +<tr> <td class="numLine"> 136</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  File lastModifiedFile;</pre></td></tr> +<tr> <td class="numLine"> 137</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLine"> 138</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment">// if (System.getProperty("os.name").toLowerCase().startsWith("windows")) {</span></pre></td></tr> +<tr> <td class="numLine"> 139</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment">// String filePath = url.toString();</span></pre></td></tr> +<tr> <td class="numLine"> 140</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment">// if (filePath.matches("file://[a-zA-Z]:.*")) {</span></pre></td></tr> +<tr> <td class="numLine"> 141</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment">// f = new File(filePath.substring(7));</span></pre></td></tr> +<tr> <td class="numLine"> 142</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment">// } else {</span></pre></td></tr> +<tr> <td class="numLine"> 143</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment">// f = new File(url.toURI());</span></pre></td></tr> +<tr> <td class="numLine"> 144</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment">// }</span></pre></td></tr> +<tr> <td class="numLine"> 145</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment">// } else {</span></pre></td></tr> +<tr> <td class="numLineCover"> 146</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src">  lastModifiedFile = <span class="keyword">new</span> File(url.toURI());</pre></td></tr> +<tr> <td class="numLine"> 147</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment">// }</span></pre></td></tr> +<tr> <td class="numLineCover"> 148</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (URISyntaxException ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 149</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 locate '%s'; is the cve.url-2.0.modified property set correctly?"</span>, url.toString());</span></pre></td></tr> +<tr> <td class="numLineCover"> 150</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> DownloadFailedException(msg);</span></pre></td></tr> +<tr> <td class="numLineCover"> 151</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 152</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src">  timestamp = lastModifiedFile.lastModified();</pre></td></tr> +<tr> <td class="numLineCover"> 153</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 154</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  HttpURLConnection conn = <span class="keyword">null</span>;</span></pre></td></tr> +<tr> <td class="numLine"> 155</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 156</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn = Downloader.getConnection(url);</span></pre></td></tr> +<tr> <td class="numLineCover"> 157</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn.setRequestMethod(<span class="string">"HEAD"</span>);</span></pre></td></tr> +<tr> <td class="numLineCover"> 158</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn.connect();</span></pre></td></tr> +<tr> <td class="numLineCover"> 159</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  timestamp = conn.getLastModified();</span></pre></td></tr> +<tr> <td class="numLineCover"> 160</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (Exception ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 161</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> DownloadFailedException(<span class="string">"Error making HTTP HEAD request."</span>, ex);</span></pre></td></tr> +<tr> <td class="numLine"> 162</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 163</td> <td class="nbHitsUncovered"><a title="Line 163: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 163: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (conn != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLine"> 164</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 165</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn.disconnect();</span></pre></td></tr> +<tr> <td class="numLine"> 166</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 167</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn = <span class="keyword">null</span>;</span></pre></td></tr> +<tr> <td class="numLineCover"> 168</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLine"> 169</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 170</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 195</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> <span class="keyword">int</span> timeout = Settings.getInt(Settings.KEYS.CONNECTION_TIMEOUT, 60000);</span></pre></td></tr> -<tr> <td class="numLineCover"> 196</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn.setConnectTimeout(timeout);</span></pre></td></tr> -<tr> <td class="numLineCover"> 197</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"> 198</td> <td class="nbHitsUncovered"><a title="Line 198: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 198: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (conn != <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLine"> 199</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 200</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn.disconnect();</span></pre></td></tr> -<tr> <td class="numLine"> 201</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 202</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn = <span class="keyword">null</span>;</span></pre></td></tr> -<tr> <td class="numLineCover"> 203</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> -<tr> <td class="numLine"> 204</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 205</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> DownloadFailedException(<span class="string">"Error getting connection."</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 206</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> -<tr> <td class="numLineCover"> 207</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> conn;</span></pre></td></tr> -<tr> <td class="numLine"> 208</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 171</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 172</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src">  <span class="keyword">return</span> timestamp;</pre></td></tr> +<tr> <td class="numLine"> 173</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 209</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 174</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 175</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 176</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Utility method to get an HttpURLConnection. If the app is configured to</span></pre></td></tr> +<tr> <td class="numLine"> 177</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * use a proxy this method will retrieve the proxy settings and use them</span></pre></td></tr> +<tr> <td class="numLine"> 178</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * when setting up the connection.</span></pre></td></tr> +<tr> <td class="numLine"> 179</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 180</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param url the url to connect to</span></pre></td></tr> +<tr> <td class="numLine"> 181</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @return an HttpURLConnection</span></pre></td></tr> +<tr> <td class="numLine"> 182</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @throws DownloadFailedException thrown if there is an exception</span></pre></td></tr> +<tr> <td class="numLine"> 183</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 184</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> HttpURLConnection getConnection(URL url) <span class="keyword">throws</span> DownloadFailedException {</pre></td></tr> +<tr> <td class="numLineCover"> 185</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  HttpURLConnection conn = <span class="keyword">null</span>;</span></pre></td></tr> +<tr> <td class="numLineCover"> 186</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Proxy proxy = <span class="keyword">null</span>;</span></pre></td></tr> +<tr> <td class="numLineCover"> 187</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String proxyUrl = Settings.getString(Settings.KEYS.PROXY_URL);</span></pre></td></tr> +<tr> <td class="numLine"> 188</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 189</td> <td class="nbHitsUncovered"><a title="Line 189: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 189: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (proxyUrl != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 190</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> <span class="keyword">int</span> proxyPort = Settings.getInt(Settings.KEYS.PROXY_PORT);</span></pre></td></tr> +<tr> <td class="numLineCover"> 191</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> SocketAddress addr = <span class="keyword">new</span> InetSocketAddress(proxyUrl, proxyPort);</span></pre></td></tr> +<tr> <td class="numLine"> 192</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLineCover"> 193</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String username = Settings.getString(Settings.KEYS.PROXY_USERNAME);</span></pre></td></tr> +<tr> <td class="numLineCover"> 194</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String password = Settings.getString(Settings.KEYS.PROXY_PASSWORD);</span></pre></td></tr> +<tr> <td class="numLineCover"> 195</td> <td class="nbHitsUncovered"><a title="Line 195: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 195: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> <span class="keyword">if</span> (username != <span class="keyword">null</span> && password != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 196</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> Authenticator auth = <span class="keyword">new</span> Authenticator() {</span></pre></td></tr> +<tr> <td class="numLine"> 197</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  @Override</pre></td></tr> +<tr> <td class="numLine"> 198</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">public</span> PasswordAuthentication getPasswordAuthentication() {</pre></td></tr> +<tr> <td class="numLineCover"> 199</td> <td class="nbHitsUncovered"><a title="Line 199: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 199: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (getRequestorType().equals(RequestorType.PROXY)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 200</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">new</span> PasswordAuthentication(username, password.toCharArray());</span></pre></td></tr> +<tr> <td class="numLine"> 201</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 202</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">super</span>.getPasswordAuthentication();</span></pre></td></tr> +<tr> <td class="numLine"> 203</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 204</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  };</pre></td></tr> +<tr> <td class="numLineCover"> 205</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Authenticator.setDefault(auth);</span></pre></td></tr> +<tr> <td class="numLine"> 206</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 207</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLineCover"> 208</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  proxy = <span class="keyword">new</span> Proxy(Proxy.Type.HTTP, addr);</span></pre></td></tr> +<tr> <td class="numLineCover"> 209</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn = (HttpURLConnection) url.openConnection(proxy);</span></pre></td></tr> +<tr> <td class="numLineCover"> 210</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"> 211</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn = (HttpURLConnection) url.openConnection();</span></pre></td></tr> +<tr> <td class="numLine"> 212</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 213</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> <span class="keyword">int</span> timeout = Settings.getInt(Settings.KEYS.CONNECTION_TIMEOUT, 60000);</span></pre></td></tr> +<tr> <td class="numLineCover"> 214</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn.setConnectTimeout(timeout);</span></pre></td></tr> +<tr> <td class="numLineCover"> 215</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"> 216</td> <td class="nbHitsUncovered"><a title="Line 216: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 216: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (conn != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLine"> 217</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 218</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn.disconnect();</span></pre></td></tr> +<tr> <td class="numLine"> 219</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 220</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  conn = <span class="keyword">null</span>;</span></pre></td></tr> +<tr> <td class="numLineCover"> 221</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLine"> 222</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 223</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> DownloadFailedException(<span class="string">"Error getting connection."</span>, ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 224</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLineCover"> 225</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> conn;</span></pre></td></tr> +<tr> <td class="numLine"> 226</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 227</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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.ExtractionException.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.ExtractionException.html index 5f871ee03..71a031fea 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.ExtractionException.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.ExtractionException.html @@ -149,6 +149,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.FileUtils.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.FileUtils.html index 0b66eb542..a1b6dd2ce 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.FileUtils.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.FileUtils.html @@ -135,13 +135,13 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 60</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> String getFileExtension(String fileName) {</pre></td></tr> -<tr> <td class="numLineCover"> 61</td> <td class="nbHitsCovered"> 190</td> <td class="src"><pre class="src">  String ret = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 62</td> <td class="nbHitsCovered"> 190</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">int</span> pos = fileName.lastIndexOf(<span class="string">"."</span>);</pre></td></tr> -<tr> <td class="numLineCover"> 63</td> <td class="nbHitsCovered"><a title="Line 63: Conditional coverage 100% (2/2)."> 190</a></td> <td class="src"><pre class="src"> <a title="Line 63: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (pos >= 0) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 64</td> <td class="nbHitsCovered"> 181</td> <td class="src"><pre class="src">  ret = fileName.substring(pos + 1, fileName.length()).toLowerCase();</pre></td></tr> +<tr> <td class="numLineCover"> 61</td> <td class="nbHitsCovered"> 218</td> <td class="src"><pre class="src">  String ret = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 62</td> <td class="nbHitsCovered"> 218</td> <td class="src"><pre class="src">  <span class="keyword">final</span> <span class="keyword">int</span> pos = fileName.lastIndexOf(<span class="string">"."</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 63</td> <td class="nbHitsCovered"><a title="Line 63: Conditional coverage 100% (2/2)."> 218</a></td> <td class="src"><pre class="src"> <a title="Line 63: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (pos >= 0) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 64</td> <td class="nbHitsCovered"> 209</td> <td class="src"><pre class="src">  ret = fileName.substring(pos + 1, fileName.length()).toLowerCase();</pre></td></tr> <tr> <td class="numLine"> 65</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 66</td> <td class="nbHitsCovered"> 190</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ret;</pre></td></tr> +<tr> <td class="numLineCover"> 66</td> <td class="nbHitsCovered"> 218</td> <td class="src"><pre class="src">  <span class="keyword">return</span> ret;</pre></td></tr> <tr> <td class="numLine"> 67</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 68</td> <td class="nbHits"> </td> @@ -409,6 +409,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Filter.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Filter.html index ed1116c11..515fd131a 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Filter.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Filter.html @@ -56,19 +56,19 @@ <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 19</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Iterator<T> filter(Iterator<T> iterator) {</pre></td></tr> -<tr> <td class="numLineCover"> 20</td> <td class="nbHitsCovered"> 1460</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">new</span> FilterIterator(iterator);</pre></td></tr> +<tr> <td class="numLineCover"> 20</td> <td class="nbHitsCovered"> 1884</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">new</span> FilterIterator(iterator);</pre></td></tr> <tr> <td class="numLine"> 21</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 22</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 23</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Iterable<T> filter(<span class="keyword">final</span> Iterable<T> iterable) {</pre></td></tr> -<tr> <td class="numLineCover"> 24</td> <td class="nbHitsCovered"> 1460</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">new</span> Iterable<T>() {</pre></td></tr> +<tr> <td class="numLineCover"> 24</td> <td class="nbHitsCovered"> 1884</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">new</span> Iterable<T>() {</pre></td></tr> <tr> <td class="numLine"> 25</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 26</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> Iterator<T> iterator() {</pre></td></tr> -<tr> <td class="numLineCover"> 27</td> <td class="nbHitsCovered"> 1460</td> <td class="src"><pre class="src">  <span class="keyword">return</span> filter(iterable.iterator());</pre></td></tr> +<tr> <td class="numLineCover"> 27</td> <td class="nbHitsCovered"> 1884</td> <td class="src"><pre class="src">  <span class="keyword">return</span> filter(iterable.iterator());</pre></td></tr> <tr> <td class="numLine"> 28</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 29</td> <td class="nbHits"> </td> @@ -86,28 +86,28 @@ <td class="src"><pre class="src">  <span class="keyword">private</span> T next;</pre></td></tr> <tr> <td class="numLine"> 36</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 37</td> <td class="nbHitsCovered"> 1460</td> <td class="src"><pre class="src">  <span class="keyword">private</span> FilterIterator(Iterator<T> iterator) {</pre></td></tr> -<tr> <td class="numLineCover"> 38</td> <td class="nbHitsCovered"> 1460</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.iterator = iterator;</pre></td></tr> -<tr> <td class="numLineCover"> 39</td> <td class="nbHitsCovered"> 1460</td> <td class="src"><pre class="src">  toNext();</pre></td></tr> -<tr> <td class="numLineCover"> 40</td> <td class="nbHitsCovered"> 1460</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 37</td> <td class="nbHitsCovered"> 1884</td> <td class="src"><pre class="src">  <span class="keyword">private</span> FilterIterator(Iterator<T> iterator) {</pre></td></tr> +<tr> <td class="numLineCover"> 38</td> <td class="nbHitsCovered"> 1884</td> <td class="src"><pre class="src">  <span class="keyword">this</span>.iterator = iterator;</pre></td></tr> +<tr> <td class="numLineCover"> 39</td> <td class="nbHitsCovered"> 1884</td> <td class="src"><pre class="src">  toNext();</pre></td></tr> +<tr> <td class="numLineCover"> 40</td> <td class="nbHitsCovered"> 1884</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 41</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 42</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">boolean</span> hasNext() {</pre></td></tr> -<tr> <td class="numLineCover"> 43</td> <td class="nbHitsCovered"><a title="Line 43: Conditional coverage 100% (2/2)."> 7321</a></td> <td class="src"><pre class="src"> <a title="Line 43: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> next != <span class="keyword">null</span>;</a></pre></td></tr> +<tr> <td class="numLineCover"> 43</td> <td class="nbHitsCovered"><a title="Line 43: Conditional coverage 100% (2/2)."> 8053</a></td> <td class="src"><pre class="src"> <a title="Line 43: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> next != <span class="keyword">null</span>;</a></pre></td></tr> <tr> <td class="numLine"> 44</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 45</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 46</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> T next() {</pre></td></tr> -<tr> <td class="numLineCover"> 47</td> <td class="nbHitsUncovered"><a title="Line 47: Conditional coverage 50% (1/2)."> 6254</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 47: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (next == <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 47</td> <td class="nbHitsUncovered"><a title="Line 47: Conditional coverage 50% (1/2)."> 6674</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 47: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (next == <span class="keyword">null</span>) {</a></span></pre></td></tr> <tr> <td class="numLineCover"> 48</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> NoSuchElementException();</span></pre></td></tr> <tr> <td class="numLine"> 49</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 50</td> <td class="nbHitsCovered"> 6254</td> <td class="src"><pre class="src">  T returnValue = next;</pre></td></tr> -<tr> <td class="numLineCover"> 51</td> <td class="nbHitsCovered"> 6254</td> <td class="src"><pre class="src">  toNext();</pre></td></tr> -<tr> <td class="numLineCover"> 52</td> <td class="nbHitsCovered"> 6254</td> <td class="src"><pre class="src">  <span class="keyword">return</span> returnValue;</pre></td></tr> +<tr> <td class="numLineCover"> 50</td> <td class="nbHitsCovered"> 6674</td> <td class="src"><pre class="src">  T returnValue = next;</pre></td></tr> +<tr> <td class="numLineCover"> 51</td> <td class="nbHitsCovered"> 6674</td> <td class="src"><pre class="src">  toNext();</pre></td></tr> +<tr> <td class="numLineCover"> 52</td> <td class="nbHitsCovered"> 6674</td> <td class="src"><pre class="src">  <span class="keyword">return</span> returnValue;</pre></td></tr> <tr> <td class="numLine"> 53</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 54</td> <td class="nbHits"> </td> @@ -121,22 +121,22 @@ <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 59</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">void</span> toNext() {</pre></td></tr> -<tr> <td class="numLineCover"> 60</td> <td class="nbHitsCovered"> 7714</td> <td class="src"><pre class="src">  next = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 61</td> <td class="nbHitsCovered"><a title="Line 61: Conditional coverage 100% (2/2)."> 11638</a></td> <td class="src"><pre class="src"> <a title="Line 61: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (iterator.hasNext()) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 62</td> <td class="nbHitsCovered"> 10555</td> <td class="src"><pre class="src">  T item = iterator.next();</pre></td></tr> -<tr> <td class="numLineCover"> 63</td> <td class="nbHitsUncovered"><a title="Line 63: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> 10555</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 63: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> <span class="keyword">if</span> (item != <span class="keyword">null</span> && passes(item)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 64</td> <td class="nbHitsCovered"> 6631</td> <td class="src"><pre class="src">  next = item;</pre></td></tr> -<tr> <td class="numLineCover"> 65</td> <td class="nbHitsCovered"> 6631</td> <td class="src"><pre class="src">  <span class="keyword">break</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 60</td> <td class="nbHitsCovered"> 8558</td> <td class="src"><pre class="src">  next = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 61</td> <td class="nbHitsCovered"><a title="Line 61: Conditional coverage 100% (2/2)."> 12714</a></td> <td class="src"><pre class="src"> <a title="Line 61: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (iterator.hasNext()) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 62</td> <td class="nbHitsCovered"> 11221</td> <td class="src"><pre class="src">  T item = iterator.next();</pre></td></tr> +<tr> <td class="numLineCover"> 63</td> <td class="nbHitsUncovered"><a title="Line 63: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> 11221</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 63: Conditional coverage 75% (3/4) [each condition: 50%, 100%]."> <span class="keyword">if</span> (item != <span class="keyword">null</span> && passes(item)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 64</td> <td class="nbHitsCovered"> 7065</td> <td class="src"><pre class="src">  next = item;</pre></td></tr> +<tr> <td class="numLineCover"> 65</td> <td class="nbHitsCovered"> 7065</td> <td class="src"><pre class="src">  <span class="keyword">break</span>;</pre></td></tr> <tr> <td class="numLine"> 66</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 67</td> <td class="nbHitsCovered"> 3924</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 68</td> <td class="nbHitsCovered"> 7714</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 67</td> <td class="nbHitsCovered"> 4156</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 68</td> <td class="nbHitsCovered"> 8558</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 69</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 70</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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.InvalidSettingException.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.InvalidSettingException.html index 5ea499850..fcc6552b6 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.InvalidSettingException.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.InvalidSettingException.html @@ -149,6 +149,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.LogFilter.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.LogFilter.html index 006eb60ea..e850e375c 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.LogFilter.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.LogFilter.html @@ -104,6 +104,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.LogUtils.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.LogUtils.html index 19c5b6dff..c620fe247 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.LogUtils.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.LogUtils.html @@ -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.utils.LogUtils.html">LogUtils</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/22</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">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/6</span></div></div></td></tr></table></td><td class="value"><span class="hidden">4.0;</span>4</td></tr> + <tr><td><a href="org.owasp.dependencycheck.utils.LogUtils.html">LogUtils</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">8%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:8px"><span class="text">2/25</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">0%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:0px"><span class="text">0/6</span></div></div></td></tr></table></td><td class="value"><span class="hidden">3.0;</span>3</td></tr> </table> <div class="separator"> </div> @@ -116,37 +116,62 @@ <tr> <td class="numLineCover"> 50</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  LogManager.getLogManager().reset();</span></pre></td></tr> <tr> <td class="numLineCover"> 51</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  LogManager.getLogManager().readConfiguration(in);</span></pre></td></tr> <tr> <td class="numLineCover"> 52</td> <td class="nbHitsUncovered"><a title="Line 52: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 52: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> <span class="keyword">if</span> (verboseLogFile != <span class="keyword">null</span> && !verboseLogFile.isEmpty()) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 53</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> Logger logger = Logger.getLogger(<span class="string">""</span>);</span></pre></td></tr> -<tr> <td class="numLineCover"> 54</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> FileHandler handler = <span class="keyword">new</span> FileHandler(verboseLogFile, <span class="keyword">true</span>);</span></pre></td></tr> -<tr> <td class="numLineCover"> 55</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  handler.setFormatter(<span class="keyword">new</span> SimpleFormatter());</span></pre></td></tr> -<tr> <td class="numLineCover"> 56</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  handler.setLevel(Level.FINE);</span></pre></td></tr> -<tr> <td class="numLineCover"> 57</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  handler.setFilter(<span class="keyword">new</span> LogFilter());</span></pre></td></tr> -<tr> <td class="numLineCover"> 58</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  logger.addHandler(handler);</span></pre></td></tr> -<tr> <td class="numLineCover"> 59</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  logger.setLevel(Level.FINE);</span></pre></td></tr> -<tr> <td class="numLine"> 60</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 53</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  verboseLoggingEnabled = <span class="keyword">true</span>;</span></pre></td></tr> +<tr> <td class="numLineCover"> 54</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> Logger logger = Logger.getLogger(<span class="string">""</span>);</span></pre></td></tr> +<tr> <td class="numLineCover"> 55</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> FileHandler handler = <span class="keyword">new</span> FileHandler(verboseLogFile, <span class="keyword">true</span>);</span></pre></td></tr> +<tr> <td class="numLineCover"> 56</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  handler.setFormatter(<span class="keyword">new</span> SimpleFormatter());</span></pre></td></tr> +<tr> <td class="numLineCover"> 57</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  handler.setLevel(Level.FINE);</span></pre></td></tr> +<tr> <td class="numLineCover"> 58</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  handler.setFilter(<span class="keyword">new</span> LogFilter());</span></pre></td></tr> +<tr> <td class="numLineCover"> 59</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  logger.addHandler(handler);</span></pre></td></tr> +<tr> <td class="numLineCover"> 60</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  logger.setLevel(Level.FINE);</span></pre></td></tr> +<tr> <td class="numLine"> 61</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 61</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"> 62</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(LogUtils.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="string">"IO Error preparing the logger"</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 63</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (SecurityException ex) {</span></pre></td></tr> -<tr> <td class="numLineCover"> 64</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(LogUtils.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="string">"Error preparing the logger"</span>, ex);</span></pre></td></tr> -<tr> <td class="numLine"> 65</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 62</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"> 63</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(LogUtils.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="string">"IO Error preparing the logger"</span>, ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 64</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (SecurityException ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 65</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(LogUtils.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="string">"Error preparing the logger"</span>, ex);</span></pre></td></tr> +<tr> <td class="numLine"> 66</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 66</td> <td class="nbHitsUncovered"><a title="Line 66: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 66: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (in != <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLine"> 67</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 67</td> <td class="nbHitsUncovered"><a title="Line 67: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 67: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (in != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLine"> 68</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 68</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  in.close();</span></pre></td></tr> -<tr> <td class="numLineCover"> 69</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (Exception ex) {</span></pre></td></tr> -<tr> <td class="numLineCover"> 70</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(LogUtils.<span class="keyword">class</span>.getName()).log(Level.FINEST, <span class="string">"Error closing resource stream"</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 71</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> -<tr> <td class="numLine"> 72</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 69</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  in.close();</span></pre></td></tr> +<tr> <td class="numLineCover"> 70</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (Exception ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 71</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(LogUtils.<span class="keyword">class</span>.getName()).log(Level.FINEST, <span class="string">"Error closing resource stream"</span>, ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 72</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> <tr> <td class="numLine"> 73</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 74</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 74</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> -<tr> <td class="numLine"> 75</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 75</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLine"> 76</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 77</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Whether or not verbose logging is enabled.</span></pre></td></tr> +<tr> <td class="numLine"> 78</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLineCover"> 79</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">boolean</span> verboseLoggingEnabled = <span class="keyword">false</span>;</pre></td></tr> +<tr> <td class="numLine"> 80</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 81</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 82</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Get the value of verboseLoggingEnabled.</span></pre></td></tr> +<tr> <td class="numLine"> 83</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 84</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @return the value of verboseLoggingEnabled</span></pre></td></tr> +<tr> <td class="numLine"> 85</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 86</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">boolean</span> isVerboseLoggingEnabled() {</pre></td></tr> +<tr> <td class="numLineCover"> 87</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src">  <span class="keyword">return</span> verboseLoggingEnabled;</pre></td></tr> +<tr> <td class="numLine"> 88</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 89</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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.NonClosingStream.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.NonClosingStream.html index f5781460e..b29a6e57e 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.NonClosingStream.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.NonClosingStream.html @@ -114,6 +114,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Settings.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Settings.html index 49c0e79b5..e1674efe9 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Settings.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Settings.html @@ -273,538 +273,554 @@ <tr> <td class="numLine"> 128</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 129</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * The properties key for the connection timeout.</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * The properties key for the proxy username.</span></pre></td></tr> <tr> <td class="numLine"> 130</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 131</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">final</span> String CONNECTION_TIMEOUT = <span class="string">"connection.timeout"</span>;</pre></td></tr> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">final</span> String PROXY_USERNAME = <span class="string">"proxy.username"</span>;</pre></td></tr> <tr> <td class="numLine"> 132</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 133</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * The location of the temporary directory.</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * The properties key for the proxy password.</span></pre></td></tr> <tr> <td class="numLine"> 134</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 135</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">final</span> String TEMP_DIRECTORY = <span class="string">"temp.directory"</span>;</pre></td></tr> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">final</span> String PROXY_PASSWORD = <span class="string">"proxy.password"</span>;</pre></td></tr> <tr> <td class="numLine"> 136</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 137</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * The properties key for the connection timeout.</span></pre></td></tr> <tr> <td class="numLine"> 138</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * The properties file location.</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 139</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">final</span> String CONNECTION_TIMEOUT = <span class="string">"connection.timeout"</span>;</pre></td></tr> <tr> <td class="numLine"> 140</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> String PROPERTIES_FILE = <span class="string">"dependencycheck.properties"</span>;</pre></td></tr> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 141</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * The location of the temporary directory.</span></pre></td></tr> <tr> <td class="numLine"> 142</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * The singleton instance variable.</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 143</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 144</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Settings INSTANCE = <span class="keyword">new</span> Settings();</pre></td></tr> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">final</span> String TEMP_DIRECTORY = <span class="string">"temp.directory"</span>;</pre></td></tr> +<tr> <td class="numLine"> 144</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 145</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 146</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * The properties.</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * The properties file location.</span></pre></td></tr> <tr> <td class="numLine"> 147</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 148</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> Properties props = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLine"> 148</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> String PROPERTIES_FILE = <span class="string">"dependencycheck.properties"</span>;</pre></td></tr> <tr> <td class="numLine"> 149</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 150</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * The singleton instance variable.</span></pre></td></tr> <tr> <td class="numLine"> 151</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Private constructor for the Settings class. This class loads the</span></pre></td></tr> -<tr> <td class="numLine"> 152</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * properties files.</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLineCover"> 152</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Settings INSTANCE = <span class="keyword">new</span> Settings();</pre></td></tr> <tr> <td class="numLine"> 153</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 154</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * The properties.</span></pre></td></tr> +<tr> <td class="numLine"> 155</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 154</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> Settings() {</pre></td></tr> -<tr> <td class="numLineCover"> 155</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  InputStream in = <span class="keyword">null</span>;</pre></td></tr> -<tr> <td class="numLineCover"> 156</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  props = <span class="keyword">new</span> Properties();</pre></td></tr> +<tr> <td class="numLineCover"> 156</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> Properties props = <span class="keyword">null</span>;</pre></td></tr> <tr> <td class="numLine"> 157</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 158</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  in = <span class="keyword">this</span>.getClass().getClassLoader().getResourceAsStream(PROPERTIES_FILE);</pre></td></tr> -<tr> <td class="numLineCover"> 159</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  props.load(in);</pre></td></tr> -<tr> <td class="numLineCover"> 160</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"> 161</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Settings.<span class="keyword">class</span>.getName()).log(Level.SEVERE, <span class="string">"Unable to load default settings."</span>);</span></pre></td></tr> -<tr> <td class="numLineCover"> 162</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Settings.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="keyword">null</span>, ex);</span></pre></td></tr> -<tr> <td class="numLine"> 163</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 164</td> <td class="nbHitsUncovered"><a title="Line 164: Conditional coverage 50% (1/2)."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 164: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (in != <span class="keyword">null</span>) {</a></span></pre></td></tr> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 158</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 159</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Private constructor for the Settings class. This class loads the</span></pre></td></tr> +<tr> <td class="numLine"> 160</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * properties files.</span></pre></td></tr> +<tr> <td class="numLine"> 161</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLineCover"> 162</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">private</span> Settings() {</pre></td></tr> +<tr> <td class="numLineCover"> 163</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  InputStream in = <span class="keyword">null</span>;</pre></td></tr> +<tr> <td class="numLineCover"> 164</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  props = <span class="keyword">new</span> Properties();</pre></td></tr> <tr> <td class="numLine"> 165</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 166</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  in.close();</pre></td></tr> -<tr> <td class="numLineCover"> 167</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"> 168</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Settings.<span class="keyword">class</span>.getName()).log(Level.FINEST, <span class="keyword">null</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 169</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 170</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 171</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 172</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 173</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 174</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 175</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Sets a property value.</span></pre></td></tr> -<tr> <td class="numLine"> 176</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 177</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param key the key for the property</span></pre></td></tr> -<tr> <td class="numLine"> 178</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param value the value for the property</span></pre></td></tr> -<tr> <td class="numLine"> 179</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 180</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> setString(String key, String value) {</pre></td></tr> -<tr> <td class="numLineCover"> 181</td> <td class="nbHitsCovered"> 17</td> <td class="src"><pre class="src">  INSTANCE.props.setProperty(key, value);</pre></td></tr> -<tr> <td class="numLineCover"> 182</td> <td class="nbHitsCovered"> 17</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 183</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 184</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 185</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Sets a property value.</span></pre></td></tr> -<tr> <td class="numLine"> 186</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 187</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param key the key for the property</span></pre></td></tr> -<tr> <td class="numLine"> 188</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param value the value for the property</span></pre></td></tr> -<tr> <td class="numLine"> 189</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 190</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> setBoolean(String key, <span class="keyword">boolean</span> value) {</pre></td></tr> -<tr> <td class="numLineCover"> 191</td> <td class="nbHitsUncovered"><a title="Line 191: Conditional coverage 50% (1/2)."> 2</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 191: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (value) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 192</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  INSTANCE.props.setProperty(key, Boolean.TRUE.toString());</span></pre></td></tr> -<tr> <td class="numLine"> 193</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 194</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  INSTANCE.props.setProperty(key, Boolean.FALSE.toString());</pre></td></tr> -<tr> <td class="numLine"> 195</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 196</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 197</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 198</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 199</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Merges a new properties file into the current properties. This method</span></pre></td></tr> -<tr> <td class="numLine"> 200</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * allows for the loading of a user provided properties file.<br/><br/></span></pre></td></tr> -<tr> <td class="numLine"> 201</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Note: even if using this method - system properties will be loaded before</span></pre></td></tr> -<tr> <td class="numLine"> 202</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * properties loaded from files.</span></pre></td></tr> -<tr> <td class="numLine"> 203</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 204</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param filePath the path to the properties file to merge.</span></pre></td></tr> -<tr> <td class="numLine"> 205</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @throws FileNotFoundException is thrown when the filePath points to a</span></pre></td></tr> -<tr> <td class="numLine"> 206</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * non-existent file</span></pre></td></tr> -<tr> <td class="numLine"> 207</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @throws IOException is thrown when there is an exception loading/merging</span></pre></td></tr> -<tr> <td class="numLine"> 208</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * the properties</span></pre></td></tr> -<tr> <td class="numLine"> 209</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 210</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> mergeProperties(File filePath) <span class="keyword">throws</span> FileNotFoundException, IOException {</pre></td></tr> -<tr> <td class="numLineCover"> 211</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> FileInputStream fis = <span class="keyword">new</span> FileInputStream(filePath);</span></pre></td></tr> -<tr> <td class="numLineCover"> 212</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  mergeProperties(fis);</span></pre></td></tr> -<tr> <td class="numLineCover"> 213</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> -<tr> <td class="numLine"> 214</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 215</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 216</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Merges a new properties file into the current properties. This method</span></pre></td></tr> -<tr> <td class="numLine"> 217</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * allows for the loading of a user provided properties file.<br/><br/></span></pre></td></tr> -<tr> <td class="numLine"> 218</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Note: even if using this method - system properties will be loaded before</span></pre></td></tr> -<tr> <td class="numLine"> 219</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * properties loaded from files.</span></pre></td></tr> -<tr> <td class="numLine"> 220</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 221</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param filePath the path to the properties file to merge.</span></pre></td></tr> -<tr> <td class="numLine"> 222</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @throws FileNotFoundException is thrown when the filePath points to a</span></pre></td></tr> -<tr> <td class="numLine"> 223</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * non-existent file</span></pre></td></tr> -<tr> <td class="numLine"> 224</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @throws IOException is thrown when there is an exception loading/merging</span></pre></td></tr> -<tr> <td class="numLine"> 225</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * the properties</span></pre></td></tr> -<tr> <td class="numLine"> 226</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 227</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> mergeProperties(String filePath) <span class="keyword">throws</span> FileNotFoundException, IOException {</pre></td></tr> -<tr> <td class="numLineCover"> 228</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">final</span> FileInputStream fis = <span class="keyword">new</span> FileInputStream(filePath);</pre></td></tr> -<tr> <td class="numLineCover"> 229</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  mergeProperties(fis);</pre></td></tr> -<tr> <td class="numLineCover"> 230</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 231</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 232</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 233</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Merges a new properties file into the current properties. This method</span></pre></td></tr> -<tr> <td class="numLine"> 234</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * allows for the loading of a user provided properties file.<br/><br/></span></pre></td></tr> -<tr> <td class="numLine"> 235</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Note: even if using this method - system properties will be loaded before</span></pre></td></tr> -<tr> <td class="numLine"> 236</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * properties loaded from files.</span></pre></td></tr> -<tr> <td class="numLine"> 237</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 238</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param stream an Input Stream pointing at a properties file to merge</span></pre></td></tr> -<tr> <td class="numLine"> 239</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @throws IOException is thrown when there is an exception loading/merging</span></pre></td></tr> -<tr> <td class="numLine"> 240</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * the properties</span></pre></td></tr> -<tr> <td class="numLine"> 241</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 242</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> mergeProperties(InputStream stream) <span class="keyword">throws</span> IOException {</pre></td></tr> -<tr> <td class="numLineCover"> 243</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  INSTANCE.props.load(stream);</pre></td></tr> -<tr> <td class="numLineCover"> 244</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 245</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 246</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 247</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Returns a value from the properties file as a File object. If the value</span></pre></td></tr> -<tr> <td class="numLine"> 248</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * was specified as a system property or passed in via the -Dprop=value</span></pre></td></tr> -<tr> <td class="numLine"> 249</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * argument - this method will return the value from the system properties</span></pre></td></tr> -<tr> <td class="numLine"> 250</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * before the values in the contained configuration file.</span></pre></td></tr> -<tr> <td class="numLine"> 251</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 252</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * This method will also replace a leading "[JAR]\" sequence with the path</span></pre></td></tr> -<tr> <td class="numLine"> 253</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * to the folder containing the JAR file containing this class.</span></pre></td></tr> -<tr> <td class="numLine"> 254</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 255</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param key the key to lookup within the properties file</span></pre></td></tr> -<tr> <td class="numLine"> 256</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @return the property from the properties file converted to a File object</span></pre></td></tr> -<tr> <td class="numLine"> 257</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 258</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> File getFile(String key) {</pre></td></tr> -<tr> <td class="numLineCover"> 259</td> <td class="nbHitsCovered"> 60</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String file = getString(key);</pre></td></tr> -<tr> <td class="numLineCover"> 260</td> <td class="nbHitsCovered"> 60</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String baseDir = getString(Settings.KEYS.DATA_DIRECTORY);</pre></td></tr> -<tr> <td class="numLineCover"> 261</td> <td class="nbHitsUncovered"><a title="Line 261: Conditional coverage 50% (1/2)."> 60</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 261: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (baseDir != <span class="keyword">null</span>) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 262</td> <td class="nbHitsUncovered"><a title="Line 262: Conditional coverage 50% (1/2)."> 60</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 262: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (baseDir.startsWith(<span class="string">"[JAR]/"</span>)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 263</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> File jarPath = getJarPath();</span></pre></td></tr> -<tr> <td class="numLineCover"> 264</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> File newBase = <span class="keyword">new</span> File(jarPath, baseDir.substring(6));</span></pre></td></tr> -<tr> <td class="numLineCover"> 265</td> <td class="nbHitsUncovered"><a title="Line 265: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 265: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (Settings.KEYS.DATA_DIRECTORY.equals(key)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 266</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> newBase;</span></pre></td></tr> -<tr> <td class="numLine"> 267</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 268</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">new</span> File(newBase, file);</span></pre></td></tr> -<tr> <td class="numLine"> 269</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 270</td> <td class="nbHitsCovered"><a title="Line 270: Conditional coverage 100% (2/2)."> 60</a></td> <td class="src"><pre class="src"> <a title="Line 270: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (Settings.KEYS.DATA_DIRECTORY.equals(key)) {</a></pre></td></tr> -<tr> <td class="numLineCover"> 271</td> <td class="nbHitsCovered"> 25</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">new</span> File(baseDir);</pre></td></tr> -<tr> <td class="numLine"> 272</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 273</td> <td class="nbHitsCovered"> 35</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">new</span> File(baseDir, file);</pre></td></tr> -<tr> <td class="numLine"> 274</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 275</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">new</span> File(file);</span></pre></td></tr> -<tr> <td class="numLine"> 276</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 277</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 278</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 279</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Attempts to retrieve the folder containing the Jar file containing the</span></pre></td></tr> -<tr> <td class="numLine"> 280</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Settings class.</span></pre></td></tr> -<tr> <td class="numLine"> 281</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 282</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @return a File object</span></pre></td></tr> -<tr> <td class="numLine"> 283</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 284</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> File getJarPath() {</pre></td></tr> -<tr> <td class="numLineCover"> 285</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String jarPath = Settings.<span class="keyword">class</span>.getProtectionDomain().getCodeSource().getLocation().getPath();</span></pre></td></tr> -<tr> <td class="numLineCover"> 286</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  String decodedPath = <span class="string">"."</span>;</span></pre></td></tr> -<tr> <td class="numLine"> 287</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 288</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  decodedPath = URLDecoder.decode(jarPath, <span class="string">"UTF-8"</span>);</span></pre></td></tr> -<tr> <td class="numLineCover"> 289</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (UnsupportedEncodingException ex) {</span></pre></td></tr> -<tr> <td class="numLineCover"> 290</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Settings.<span class="keyword">class</span>.getName()).log(Level.FINEST, <span class="keyword">null</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 291</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> -<tr> <td class="numLine"> 292</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 293</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> File path = <span class="keyword">new</span> File(decodedPath);</span></pre></td></tr> -<tr> <td class="numLineCover"> 294</td> <td class="nbHitsUncovered"><a title="Line 294: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 294: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (path.getName().toLowerCase().endsWith(<span class="string">".jar"</span>)) {</a></span></pre></td></tr> -<tr> <td class="numLineCover"> 295</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> path.getParentFile();</span></pre></td></tr> -<tr> <td class="numLine"> 296</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 297</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">new</span> File(<span class="string">"."</span>);</span></pre></td></tr> -<tr> <td class="numLine"> 298</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 166</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  in = <span class="keyword">this</span>.getClass().getClassLoader().getResourceAsStream(PROPERTIES_FILE);</pre></td></tr> +<tr> <td class="numLineCover"> 167</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  props.load(in);</pre></td></tr> +<tr> <td class="numLineCover"> 168</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"> 169</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Settings.<span class="keyword">class</span>.getName()).log(Level.SEVERE, <span class="string">"Unable to load default settings."</span>);</span></pre></td></tr> +<tr> <td class="numLineCover"> 170</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Settings.<span class="keyword">class</span>.getName()).log(Level.FINE, <span class="keyword">null</span>, ex);</span></pre></td></tr> +<tr> <td class="numLine"> 171</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  } <span class="keyword">finally</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 172</td> <td class="nbHitsUncovered"><a title="Line 172: Conditional coverage 50% (1/2)."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 172: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (in != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLine"> 173</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 174</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  in.close();</pre></td></tr> +<tr> <td class="numLineCover"> 175</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"> 176</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Settings.<span class="keyword">class</span>.getName()).log(Level.FINEST, <span class="keyword">null</span>, ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 177</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 178</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 179</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 299</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 180</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 181</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 182</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 183</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Sets a property value.</span></pre></td></tr> +<tr> <td class="numLine"> 184</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 185</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param key the key for the property</span></pre></td></tr> +<tr> <td class="numLine"> 186</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param value the value for the property</span></pre></td></tr> +<tr> <td class="numLine"> 187</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 188</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> setString(String key, String value) {</pre></td></tr> +<tr> <td class="numLineCover"> 189</td> <td class="nbHitsCovered"> 17</td> <td class="src"><pre class="src">  INSTANCE.props.setProperty(key, value);</pre></td></tr> +<tr> <td class="numLineCover"> 190</td> <td class="nbHitsCovered"> 17</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 191</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 192</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 193</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Sets a property value.</span></pre></td></tr> +<tr> <td class="numLine"> 194</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 195</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param key the key for the property</span></pre></td></tr> +<tr> <td class="numLine"> 196</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param value the value for the property</span></pre></td></tr> +<tr> <td class="numLine"> 197</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 198</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> setBoolean(String key, <span class="keyword">boolean</span> value) {</pre></td></tr> +<tr> <td class="numLineCover"> 199</td> <td class="nbHitsUncovered"><a title="Line 199: Conditional coverage 50% (1/2)."> 5</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 199: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (value) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 200</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  INSTANCE.props.setProperty(key, Boolean.TRUE.toString());</span></pre></td></tr> +<tr> <td class="numLine"> 201</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 202</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  INSTANCE.props.setProperty(key, Boolean.FALSE.toString());</pre></td></tr> +<tr> <td class="numLine"> 203</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 204</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 205</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 206</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 207</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Merges a new properties file into the current properties. This method</span></pre></td></tr> +<tr> <td class="numLine"> 208</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * allows for the loading of a user provided properties file.<br/><br/></span></pre></td></tr> +<tr> <td class="numLine"> 209</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Note: even if using this method - system properties will be loaded before</span></pre></td></tr> +<tr> <td class="numLine"> 210</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * properties loaded from files.</span></pre></td></tr> +<tr> <td class="numLine"> 211</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 212</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param filePath the path to the properties file to merge.</span></pre></td></tr> +<tr> <td class="numLine"> 213</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @throws FileNotFoundException is thrown when the filePath points to a</span></pre></td></tr> +<tr> <td class="numLine"> 214</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * non-existent file</span></pre></td></tr> +<tr> <td class="numLine"> 215</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @throws IOException is thrown when there is an exception loading/merging</span></pre></td></tr> +<tr> <td class="numLine"> 216</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * the properties</span></pre></td></tr> +<tr> <td class="numLine"> 217</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 218</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> mergeProperties(File filePath) <span class="keyword">throws</span> FileNotFoundException, IOException {</pre></td></tr> +<tr> <td class="numLineCover"> 219</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> FileInputStream fis = <span class="keyword">new</span> FileInputStream(filePath);</span></pre></td></tr> +<tr> <td class="numLineCover"> 220</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  mergeProperties(fis);</span></pre></td></tr> +<tr> <td class="numLineCover"> 221</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLine"> 222</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 223</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 224</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Merges a new properties file into the current properties. This method</span></pre></td></tr> +<tr> <td class="numLine"> 225</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * allows for the loading of a user provided properties file.<br/><br/></span></pre></td></tr> +<tr> <td class="numLine"> 226</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Note: even if using this method - system properties will be loaded before</span></pre></td></tr> +<tr> <td class="numLine"> 227</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * properties loaded from files.</span></pre></td></tr> +<tr> <td class="numLine"> 228</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 229</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param filePath the path to the properties file to merge.</span></pre></td></tr> +<tr> <td class="numLine"> 230</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @throws FileNotFoundException is thrown when the filePath points to a</span></pre></td></tr> +<tr> <td class="numLine"> 231</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * non-existent file</span></pre></td></tr> +<tr> <td class="numLine"> 232</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @throws IOException is thrown when there is an exception loading/merging</span></pre></td></tr> +<tr> <td class="numLine"> 233</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * the properties</span></pre></td></tr> +<tr> <td class="numLine"> 234</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 235</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> mergeProperties(String filePath) <span class="keyword">throws</span> FileNotFoundException, IOException {</pre></td></tr> +<tr> <td class="numLineCover"> 236</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">final</span> FileInputStream fis = <span class="keyword">new</span> FileInputStream(filePath);</pre></td></tr> +<tr> <td class="numLineCover"> 237</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  mergeProperties(fis);</pre></td></tr> +<tr> <td class="numLineCover"> 238</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 239</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 240</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 241</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Merges a new properties file into the current properties. This method</span></pre></td></tr> +<tr> <td class="numLine"> 242</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * allows for the loading of a user provided properties file.<br/><br/></span></pre></td></tr> +<tr> <td class="numLine"> 243</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Note: even if using this method - system properties will be loaded before</span></pre></td></tr> +<tr> <td class="numLine"> 244</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * properties loaded from files.</span></pre></td></tr> +<tr> <td class="numLine"> 245</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 246</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param stream an Input Stream pointing at a properties file to merge</span></pre></td></tr> +<tr> <td class="numLine"> 247</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @throws IOException is thrown when there is an exception loading/merging</span></pre></td></tr> +<tr> <td class="numLine"> 248</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * the properties</span></pre></td></tr> +<tr> <td class="numLine"> 249</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 250</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> mergeProperties(InputStream stream) <span class="keyword">throws</span> IOException {</pre></td></tr> +<tr> <td class="numLineCover"> 251</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  INSTANCE.props.load(stream);</pre></td></tr> +<tr> <td class="numLineCover"> 252</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 253</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 254</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 255</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Returns a value from the properties file as a File object. If the value</span></pre></td></tr> +<tr> <td class="numLine"> 256</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * was specified as a system property or passed in via the -Dprop=value</span></pre></td></tr> +<tr> <td class="numLine"> 257</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * argument - this method will return the value from the system properties</span></pre></td></tr> +<tr> <td class="numLine"> 258</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * before the values in the contained configuration file.</span></pre></td></tr> +<tr> <td class="numLine"> 259</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 260</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * This method will also replace a leading "[JAR]\" sequence with the path</span></pre></td></tr> +<tr> <td class="numLine"> 261</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * to the folder containing the JAR file containing this class.</span></pre></td></tr> +<tr> <td class="numLine"> 262</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 263</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param key the key to lookup within the properties file</span></pre></td></tr> +<tr> <td class="numLine"> 264</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @return the property from the properties file converted to a File object</span></pre></td></tr> +<tr> <td class="numLine"> 265</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 266</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> File getFile(String key) {</pre></td></tr> +<tr> <td class="numLineCover"> 267</td> <td class="nbHitsCovered"> 79</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String file = getString(key);</pre></td></tr> +<tr> <td class="numLineCover"> 268</td> <td class="nbHitsCovered"> 79</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String baseDir = getString(Settings.KEYS.DATA_DIRECTORY);</pre></td></tr> +<tr> <td class="numLineCover"> 269</td> <td class="nbHitsUncovered"><a title="Line 269: Conditional coverage 50% (1/2)."> 79</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 269: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (baseDir != <span class="keyword">null</span>) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 270</td> <td class="nbHitsUncovered"><a title="Line 270: Conditional coverage 50% (1/2)."> 79</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 270: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (baseDir.startsWith(<span class="string">"[JAR]/"</span>)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 271</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> File jarPath = getJarPath();</span></pre></td></tr> +<tr> <td class="numLineCover"> 272</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> File newBase = <span class="keyword">new</span> File(jarPath, baseDir.substring(6));</span></pre></td></tr> +<tr> <td class="numLineCover"> 273</td> <td class="nbHitsUncovered"><a title="Line 273: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 273: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (Settings.KEYS.DATA_DIRECTORY.equals(key)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 274</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> newBase;</span></pre></td></tr> +<tr> <td class="numLine"> 275</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 276</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">new</span> File(newBase, file);</span></pre></td></tr> +<tr> <td class="numLine"> 277</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 278</td> <td class="nbHitsCovered"><a title="Line 278: Conditional coverage 100% (2/2)."> 79</a></td> <td class="src"><pre class="src"> <a title="Line 278: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (Settings.KEYS.DATA_DIRECTORY.equals(key)) {</a></pre></td></tr> +<tr> <td class="numLineCover"> 279</td> <td class="nbHitsCovered"> 35</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">new</span> File(baseDir);</pre></td></tr> +<tr> <td class="numLine"> 280</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 281</td> <td class="nbHitsCovered"> 44</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">new</span> File(baseDir, file);</pre></td></tr> +<tr> <td class="numLine"> 282</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 283</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">new</span> File(file);</span></pre></td></tr> +<tr> <td class="numLine"> 284</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 285</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 286</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 287</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Attempts to retrieve the folder containing the Jar file containing the</span></pre></td></tr> +<tr> <td class="numLine"> 288</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Settings class.</span></pre></td></tr> +<tr> <td class="numLine"> 289</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 290</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @return a File object</span></pre></td></tr> +<tr> <td class="numLine"> 291</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 292</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">private</span> <span class="keyword">static</span> File getJarPath() {</pre></td></tr> +<tr> <td class="numLineCover"> 293</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> String jarPath = Settings.<span class="keyword">class</span>.getProtectionDomain().getCodeSource().getLocation().getPath();</span></pre></td></tr> +<tr> <td class="numLineCover"> 294</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  String decodedPath = <span class="string">"."</span>;</span></pre></td></tr> +<tr> <td class="numLine"> 295</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 296</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  decodedPath = URLDecoder.decode(jarPath, <span class="string">"UTF-8"</span>);</span></pre></td></tr> +<tr> <td class="numLineCover"> 297</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (UnsupportedEncodingException ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 298</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  Logger.getLogger(Settings.<span class="keyword">class</span>.getName()).log(Level.FINEST, <span class="keyword">null</span>, ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 299</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> <tr> <td class="numLine"> 300</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 301</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 302</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Returns a value from the properties file. If the value was specified as a</span></pre></td></tr> -<tr> <td class="numLine"> 303</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * system property or passed in via the -Dprop=value argument - this method</span></pre></td></tr> +<tr> <td class="numLineCover"> 301</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">final</span> File path = <span class="keyword">new</span> File(decodedPath);</span></pre></td></tr> +<tr> <td class="numLineCover"> 302</td> <td class="nbHitsUncovered"><a title="Line 302: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 302: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (path.getName().toLowerCase().endsWith(<span class="string">".jar"</span>)) {</a></span></pre></td></tr> +<tr> <td class="numLineCover"> 303</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> path.getParentFile();</span></pre></td></tr> <tr> <td class="numLine"> 304</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * will return the value from the system properties before the values in the</span></pre></td></tr> -<tr> <td class="numLine"> 305</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * contained configuration file.</span></pre></td></tr> + <td class="src"><pre class="src">  } <span class="keyword">else</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 305</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  <span class="keyword">return</span> <span class="keyword">new</span> File(<span class="string">"."</span>);</span></pre></td></tr> <tr> <td class="numLine"> 306</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> + <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 307</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param key the key to lookup within the properties file</span></pre></td></tr> + <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 308</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param defaultValue the default value for the requested property</span></pre></td></tr> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 309</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @return the property from the properties file</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 310</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 311</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> String getString(String key, String defaultValue) {</pre></td></tr> -<tr> <td class="numLineCover"> 312</td> <td class="nbHitsCovered"> 21</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String str = System.getProperty(key, INSTANCE.props.getProperty(key, defaultValue));</pre></td></tr> -<tr> <td class="numLineCover"> 313</td> <td class="nbHitsCovered"> 21</td> <td class="src"><pre class="src">  <span class="keyword">return</span> str;</pre></td></tr> -<tr> <td class="numLine"> 314</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 315</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 316</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 317</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Returns the temporary directory.</span></pre></td></tr> -<tr> <td class="numLine"> 318</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 319</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @return the temporary directory</span></pre></td></tr> -<tr> <td class="numLine"> 320</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 321</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> File getTempDirectory() {</pre></td></tr> -<tr> <td class="numLineCover"> 322</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">new</span> File(Settings.getString(Settings.KEYS.TEMP_DIRECTORY, System.getProperty(<span class="string">"java.io.tmpdir"</span>)));</pre></td></tr> -<tr> <td class="numLine"> 323</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 324</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 325</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 326</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * Returns a value from the properties file. If the value was specified as a</span></pre></td></tr> -<tr> <td class="numLine"> 327</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 311</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * system property or passed in via the -Dprop=value argument - this method</span></pre></td></tr> -<tr> <td class="numLine"> 328</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 312</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * will return the value from the system properties before the values in the</span></pre></td></tr> -<tr> <td class="numLine"> 329</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 313</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * contained configuration file.</span></pre></td></tr> -<tr> <td class="numLine"> 330</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 314</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 315</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param key the key to lookup within the properties file</span></pre></td></tr> +<tr> <td class="numLine"> 316</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param defaultValue the default value for the requested property</span></pre></td></tr> +<tr> <td class="numLine"> 317</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @return the property from the properties file</span></pre></td></tr> +<tr> <td class="numLine"> 318</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 319</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> String getString(String key, String defaultValue) {</pre></td></tr> +<tr> <td class="numLineCover"> 320</td> <td class="nbHitsCovered"> 26</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String str = System.getProperty(key, INSTANCE.props.getProperty(key, defaultValue));</pre></td></tr> +<tr> <td class="numLineCover"> 321</td> <td class="nbHitsCovered"> 26</td> <td class="src"><pre class="src">  <span class="keyword">return</span> str;</pre></td></tr> +<tr> <td class="numLine"> 322</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 323</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 324</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 325</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Returns the temporary directory.</span></pre></td></tr> +<tr> <td class="numLine"> 326</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 327</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @return the temporary directory</span></pre></td></tr> +<tr> <td class="numLine"> 328</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 329</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> File getTempDirectory() {</pre></td></tr> +<tr> <td class="numLineCover"> 330</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src">  <span class="keyword">return</span> <span class="keyword">new</span> File(Settings.getString(Settings.KEYS.TEMP_DIRECTORY, System.getProperty(<span class="string">"java.io.tmpdir"</span>)));</pre></td></tr> <tr> <td class="numLine"> 331</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param key the key to lookup within the properties file</span></pre></td></tr> + <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 332</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @return the property from the properties file</span></pre></td></tr> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 333</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 334</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> String getString(String key) {</pre></td></tr> -<tr> <td class="numLineCover"> 335</td> <td class="nbHitsCovered"> 143</td> <td class="src"><pre class="src">  <span class="keyword">return</span> System.getProperty(key, INSTANCE.props.getProperty(key));</pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * Returns a value from the properties file. If the value was specified as a</span></pre></td></tr> +<tr> <td class="numLine"> 335</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * system property or passed in via the -Dprop=value argument - this method</span></pre></td></tr> <tr> <td class="numLine"> 336</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * will return the value from the system properties before the values in the</span></pre></td></tr> <tr> <td class="numLine"> 337</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * contained configuration file.</span></pre></td></tr> <tr> <td class="numLine"> 338</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> <tr> <td class="numLine"> 339</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Removes a property from the local properties collection. This is mainly</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * @param key the key to lookup within the properties file</span></pre></td></tr> <tr> <td class="numLine"> 340</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * used in test cases.</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * @return the property from the properties file</span></pre></td></tr> <tr> <td class="numLine"> 341</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 342</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param key the property key to remove</span></pre></td></tr> -<tr> <td class="numLine"> 343</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> String getString(String key) {</pre></td></tr> +<tr> <td class="numLineCover"> 343</td> <td class="nbHitsCovered"> 184</td> <td class="src"><pre class="src">  <span class="keyword">return</span> System.getProperty(key, INSTANCE.props.getProperty(key));</pre></td></tr> <tr> <td class="numLine"> 344</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> removeProperty(String key) {</pre></td></tr> -<tr> <td class="numLineCover"> 345</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  INSTANCE.props.remove(key);</pre></td></tr> -<tr> <td class="numLineCover"> 346</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  }</pre></td></tr> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 345</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 346</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 347</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * Removes a property from the local properties collection. This is mainly</span></pre></td></tr> <tr> <td class="numLine"> 348</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * used in test cases.</span></pre></td></tr> <tr> <td class="numLine"> 349</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Returns an int value from the properties file. If the value was specified</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> <tr> <td class="numLine"> 350</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * as a system property or passed in via the -Dprop=value argument - this</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> * @param key the property key to remove</span></pre></td></tr> <tr> <td class="numLine"> 351</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * method will return the value from the system properties before the values</span></pre></td></tr> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 352</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * in the contained configuration file.</span></pre></td></tr> -<tr> <td class="numLine"> 353</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 354</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param key the key to lookup within the properties file</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">void</span> removeProperty(String key) {</pre></td></tr> +<tr> <td class="numLineCover"> 353</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  INSTANCE.props.remove(key);</pre></td></tr> +<tr> <td class="numLineCover"> 354</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 355</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @return the property from the properties file</span></pre></td></tr> + <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 356</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @throws InvalidSettingException is thrown if there is an error retrieving</span></pre></td></tr> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> <tr> <td class="numLine"> 357</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * the setting</span></pre></td></tr> -<tr> <td class="numLine"> 358</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 359</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">int</span> getInt(String key) <span class="keyword">throws</span> InvalidSettingException {</pre></td></tr> -<tr> <td class="numLine"> 360</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">int</span> value;</pre></td></tr> -<tr> <td class="numLine"> 361</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 362</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  value = Integer.parseInt(Settings.getString(key));</pre></td></tr> -<tr> <td class="numLineCover"> 363</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (NumberFormatException ex) {</span></pre></td></tr> -<tr> <td class="numLineCover"> 364</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> InvalidSettingException(<span class="string">"Could not convert property '"</span> + key + <span class="string">"' to an int."</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 365</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 366</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">return</span> value;</pre></td></tr> -<tr> <td class="numLine"> 367</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 368</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 369</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 370</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * Returns an int value from the properties file. If the value was specified</span></pre></td></tr> -<tr> <td class="numLine"> 371</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 358</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * as a system property or passed in via the -Dprop=value argument - this</span></pre></td></tr> -<tr> <td class="numLine"> 372</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 359</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * method will return the value from the system properties before the values</span></pre></td></tr> -<tr> <td class="numLine"> 373</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 360</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * in the contained configuration file.</span></pre></td></tr> -<tr> <td class="numLine"> 374</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 361</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 375</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 362</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * @param key the key to lookup within the properties file</span></pre></td></tr> -<tr> <td class="numLine"> 376</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param defaultValue the default value to return</span></pre></td></tr> -<tr> <td class="numLine"> 377</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @return the property from the properties file or the defaultValue if the</span></pre></td></tr> -<tr> <td class="numLine"> 378</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * property does not exist or cannot be converted to an integer</span></pre></td></tr> -<tr> <td class="numLine"> 379</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 363</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @return the property from the properties file</span></pre></td></tr> +<tr> <td class="numLine"> 364</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @throws InvalidSettingException is thrown if there is an error retrieving</span></pre></td></tr> +<tr> <td class="numLine"> 365</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * the setting</span></pre></td></tr> +<tr> <td class="numLine"> 366</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 380</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">int</span> getInt(String key, <span class="keyword">int</span> defaultValue) {</pre></td></tr> -<tr> <td class="numLine"> 381</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 367</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">int</span> getInt(String key) <span class="keyword">throws</span> InvalidSettingException {</pre></td></tr> +<tr> <td class="numLine"> 368</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">int</span> value;</pre></td></tr> -<tr> <td class="numLine"> 382</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 369</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 383</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  value = Integer.parseInt(Settings.getString(key));</pre></td></tr> -<tr> <td class="numLineCover"> 384</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  } <span class="keyword">catch</span> (NumberFormatException ex) {</pre></td></tr> -<tr> <td class="numLineCover"> 385</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String msg = String.format(<span class="string">"Could not convert property '%s' to an int."</span>, key);</pre></td></tr> -<tr> <td class="numLineCover"> 386</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  Logger.getLogger(Settings.<span class="keyword">class</span>.getName()).log(Level.FINEST, msg, ex);</pre></td></tr> -<tr> <td class="numLineCover"> 387</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  value = defaultValue;</pre></td></tr> -<tr> <td class="numLineCover"> 388</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> -<tr> <td class="numLineCover"> 389</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">return</span> value;</pre></td></tr> -<tr> <td class="numLine"> 390</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 370</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  value = Integer.parseInt(Settings.getString(key));</pre></td></tr> +<tr> <td class="numLineCover"> 371</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (NumberFormatException ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 372</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> InvalidSettingException(<span class="string">"Could not convert property '"</span> + key + <span class="string">"' to an int."</span>, ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 373</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 374</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">return</span> value;</pre></td></tr> +<tr> <td class="numLine"> 375</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 391</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 376</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 392</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 377</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 393</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Returns a long value from the properties file. If the value was specified</span></pre></td></tr> -<tr> <td class="numLine"> 394</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 378</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Returns an int value from the properties file. If the value was specified</span></pre></td></tr> +<tr> <td class="numLine"> 379</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * as a system property or passed in via the -Dprop=value argument - this</span></pre></td></tr> -<tr> <td class="numLine"> 395</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 380</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * method will return the value from the system properties before the values</span></pre></td></tr> -<tr> <td class="numLine"> 396</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 381</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * in the contained configuration file.</span></pre></td></tr> -<tr> <td class="numLine"> 397</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 382</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 383</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param key the key to lookup within the properties file</span></pre></td></tr> +<tr> <td class="numLine"> 384</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param defaultValue the default value to return</span></pre></td></tr> +<tr> <td class="numLine"> 385</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @return the property from the properties file or the defaultValue if the</span></pre></td></tr> +<tr> <td class="numLine"> 386</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * property does not exist or cannot be converted to an integer</span></pre></td></tr> +<tr> <td class="numLine"> 387</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 388</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">int</span> getInt(String key, <span class="keyword">int</span> defaultValue) {</pre></td></tr> +<tr> <td class="numLine"> 389</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">int</span> value;</pre></td></tr> +<tr> <td class="numLine"> 390</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 391</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  value = Integer.parseInt(Settings.getString(key));</pre></td></tr> +<tr> <td class="numLineCover"> 392</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  } <span class="keyword">catch</span> (NumberFormatException ex) {</pre></td></tr> +<tr> <td class="numLineCover"> 393</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">final</span> String msg = String.format(<span class="string">"Could not convert property '%s' to an int."</span>, key);</pre></td></tr> +<tr> <td class="numLineCover"> 394</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  Logger.getLogger(Settings.<span class="keyword">class</span>.getName()).log(Level.FINEST, msg, ex);</pre></td></tr> +<tr> <td class="numLineCover"> 395</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  value = defaultValue;</pre></td></tr> +<tr> <td class="numLineCover"> 396</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  }</span></pre></td></tr> +<tr> <td class="numLineCover"> 397</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">return</span> value;</pre></td></tr> <tr> <td class="numLine"> 398</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @param key the key to lookup within the properties file</span></pre></td></tr> + <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 399</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @return the property from the properties file</span></pre></td></tr> -<tr> <td class="numLine"> 400</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * @throws InvalidSettingException is thrown if there is an error retrieving</span></pre></td></tr> -<tr> <td class="numLine"> 401</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * the setting</span></pre></td></tr> -<tr> <td class="numLine"> 402</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 403</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">long</span> getLong(String key) <span class="keyword">throws</span> InvalidSettingException {</pre></td></tr> -<tr> <td class="numLine"> 404</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">long</span> value;</pre></td></tr> -<tr> <td class="numLine"> 405</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 406</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  value = Long.parseLong(Settings.getString(key));</pre></td></tr> -<tr> <td class="numLineCover"> 407</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (NumberFormatException ex) {</span></pre></td></tr> -<tr> <td class="numLineCover"> 408</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> InvalidSettingException(<span class="string">"Could not convert property '"</span> + key + <span class="string">"' to an int."</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 409</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 410</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">return</span> value;</pre></td></tr> -<tr> <td class="numLine"> 411</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLine"> 412</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLine"> 413</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 400</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> -<tr> <td class="numLine"> 414</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * Returns a boolean value from the properties file. If the value was</span></pre></td></tr> -<tr> <td class="numLine"> 415</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * specified as a system property or passed in via the</span></pre></td></tr> -<tr> <td class="numLine"> 416</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * <code>-Dprop=value</code> argument this method will return the value from</span></pre></td></tr> -<tr> <td class="numLine"> 417</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * the system properties before the values in the contained configuration</span></pre></td></tr> -<tr> <td class="numLine"> 418</td> <td class="nbHits"> </td> - <td class="src"><pre class="src"> <span class="comment"> * file.</span></pre></td></tr> -<tr> <td class="numLine"> 419</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 401</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Returns a long value from the properties file. If the value was specified</span></pre></td></tr> +<tr> <td class="numLine"> 402</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * as a system property or passed in via the -Dprop=value argument - this</span></pre></td></tr> +<tr> <td class="numLine"> 403</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * method will return the value from the system properties before the values</span></pre></td></tr> +<tr> <td class="numLine"> 404</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * in the contained configuration file.</span></pre></td></tr> +<tr> <td class="numLine"> 405</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> -<tr> <td class="numLine"> 420</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 406</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * @param key the key to lookup within the properties file</span></pre></td></tr> -<tr> <td class="numLine"> 421</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 407</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * @return the property from the properties file</span></pre></td></tr> -<tr> <td class="numLine"> 422</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 408</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * @throws InvalidSettingException is thrown if there is an error retrieving</span></pre></td></tr> -<tr> <td class="numLine"> 423</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 409</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> * the setting</span></pre></td></tr> -<tr> <td class="numLine"> 424</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 410</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLine"> 425</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">boolean</span> getBoolean(String key) <span class="keyword">throws</span> InvalidSettingException {</pre></td></tr> -<tr> <td class="numLine"> 426</td> <td class="nbHits"> </td> - <td class="src"><pre class="src">  <span class="keyword">boolean</span> value;</pre></td></tr> -<tr> <td class="numLine"> 427</td> <td class="nbHits"> </td> +<tr> <td class="numLine"> 411</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">long</span> getLong(String key) <span class="keyword">throws</span> InvalidSettingException {</pre></td></tr> +<tr> <td class="numLine"> 412</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">long</span> value;</pre></td></tr> +<tr> <td class="numLine"> 413</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> -<tr> <td class="numLineCover"> 428</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src">  value = Boolean.parseBoolean(Settings.getString(key));</pre></td></tr> -<tr> <td class="numLineCover"> 429</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (NumberFormatException ex) {</span></pre></td></tr> -<tr> <td class="numLineCover"> 430</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> InvalidSettingException(<span class="string">"Could not convert property '"</span> + key + <span class="string">"' to an int."</span>, ex);</span></pre></td></tr> -<tr> <td class="numLineCover"> 431</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src">  }</pre></td></tr> -<tr> <td class="numLineCover"> 432</td> <td class="nbHitsCovered"> 4</td> <td class="src"><pre class="src">  <span class="keyword">return</span> value;</pre></td></tr> -<tr> <td class="numLine"> 433</td> <td class="nbHits"> </td> +<tr> <td class="numLineCover"> 414</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  value = Long.parseLong(Settings.getString(key));</pre></td></tr> +<tr> <td class="numLineCover"> 415</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (NumberFormatException ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 416</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> InvalidSettingException(<span class="string">"Could not convert property '"</span> + key + <span class="string">"' to an int."</span>, ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 417</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 418</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src">  <span class="keyword">return</span> value;</pre></td></tr> +<tr> <td class="numLine"> 419</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 420</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> </pre></td></tr> +<tr> <td class="numLine"> 421</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="comment">/**</span></pre></td></tr> +<tr> <td class="numLine"> 422</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * Returns a boolean value from the properties file. If the value was</span></pre></td></tr> +<tr> <td class="numLine"> 423</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * specified as a system property or passed in via the</span></pre></td></tr> +<tr> <td class="numLine"> 424</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * <code>-Dprop=value</code> argument this method will return the value from</span></pre></td></tr> +<tr> <td class="numLine"> 425</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * the system properties before the values in the contained configuration</span></pre></td></tr> +<tr> <td class="numLine"> 426</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * file.</span></pre></td></tr> +<tr> <td class="numLine"> 427</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr> +<tr> <td class="numLine"> 428</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @param key the key to lookup within the properties file</span></pre></td></tr> +<tr> <td class="numLine"> 429</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @return the property from the properties file</span></pre></td></tr> +<tr> <td class="numLine"> 430</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * @throws InvalidSettingException is thrown if there is an error retrieving</span></pre></td></tr> +<tr> <td class="numLine"> 431</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> * the setting</span></pre></td></tr> +<tr> <td class="numLine"> 432</td> <td class="nbHits"> </td> + <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> +<tr> <td class="numLine"> 433</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">boolean</span> getBoolean(String key) <span class="keyword">throws</span> InvalidSettingException {</pre></td></tr> <tr> <td class="numLine"> 434</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">boolean</span> value;</pre></td></tr> +<tr> <td class="numLine"> 435</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  <span class="keyword">try</span> {</pre></td></tr> +<tr> <td class="numLineCover"> 436</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  value = Boolean.parseBoolean(Settings.getString(key));</pre></td></tr> +<tr> <td class="numLineCover"> 437</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered">  } <span class="keyword">catch</span> (NumberFormatException ex) {</span></pre></td></tr> +<tr> <td class="numLineCover"> 438</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> InvalidSettingException(<span class="string">"Could not convert property '"</span> + key + <span class="string">"' to an int."</span>, ex);</span></pre></td></tr> +<tr> <td class="numLineCover"> 439</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLineCover"> 440</td> <td class="nbHitsCovered"> 7</td> <td class="src"><pre class="src">  <span class="keyword">return</span> value;</pre></td></tr> +<tr> <td class="numLine"> 441</td> <td class="nbHits"> </td> + <td class="src"><pre class="src">  }</pre></td></tr> +<tr> <td class="numLine"> 442</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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.UrlStringUtils.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.UrlStringUtils.html index a071a8975..f1a96cf39 100644 --- a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.UrlStringUtils.html +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.UrlStringUtils.html @@ -125,7 +125,7 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 56</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">boolean</span> containsUrl(String text) {</pre></td></tr> -<tr> <td class="numLineCover"> 57</td> <td class="nbHitsCovered"> 25107</td> <td class="src"><pre class="src">  <span class="keyword">return</span> CONTAINS_URL_TEST.matcher(text).matches();</pre></td></tr> +<tr> <td class="numLineCover"> 57</td> <td class="nbHitsCovered"> 25671</td> <td class="src"><pre class="src">  <span class="keyword">return</span> CONTAINS_URL_TEST.matcher(text).matches();</pre></td></tr> <tr> <td class="numLine"> 58</td> <td class="nbHits"> </td> <td class="src"><pre class="src">  }</pre></td></tr> <tr> <td class="numLine"> 59</td> <td class="nbHits"> </td> @@ -220,6 +220,6 @@ <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> 1.9.4.1 on 10/20/13 9:38 PM.</div> +<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 11/16/13 1:26 PM.</div> </body> </html> diff --git a/dependency-check-core/cpd.html b/dependency-check-core/cpd.html index 2d6c7b550..ec3907fcb 100644 --- a/dependency-check-core/cpd.html +++ b/dependency-check-core/cpd.html @@ -1,13 +1,13 @@ <!DOCTYPE html> <!-- - | Generated by Apache Maven Doxia at 2013-10-20 + | Generated by Apache Maven Doxia at 2013-11-16 | Rendered using Apache Maven Fluido Skin 1.3.0 --> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> - <meta name="Date-Revision-yyyymmdd" content="20131020" /> + <meta name="Date-Revision-yyyymmdd" content="20131116" /> <meta http-equiv="Content-Language" content="en" /> <title>dependency-check-core - CPD Results @@ -54,7 +54,7 @@

  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-core/dependency-updates-report.html b/dependency-check-core/dependency-updates-report.html index 569e5e6fc..71546ad81 100644 --- a/dependency-check-core/dependency-updates-report.html +++ b/dependency-check-core/dependency-updates-report.html @@ -1,13 +1,13 @@ - + dependency-check-core - Dependency Updates Report @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -222,7 +222,7 @@ # of dependencies using the latest version available -10 +8 # of dependencies where the next version available is smaller than an incremental version update @@ -230,11 +230,11 @@ # of dependencies where the next version available is an incremental version update -6 +7 # of dependencies where the next version available is a minor version update -8 +9 # of dependencies where the next version available is a major version update @@ -378,7 +378,7 @@ 1.5 - + org.apache.commons commons-compress 1.5 @@ -387,7 +387,7 @@ jar - +1.6 @@ -522,7 +522,7 @@ - + org.jsoup jsoup 1.7.2 @@ -530,7 +530,7 @@ jar - +1.7.3 @@ -652,7 +652,7 @@ jar Newer versions -2.5.1 Next Incremental
    2.6 Next Minor
    2.6.1
    2.6.2
    2.6.3
    3.0-RC1
    3.0-RC2 Latest Minor
    3.0 Next Major
    3.0.1
    3.0.2
    3.0.3
    3.1 Latest Major +2.5.1 Next Incremental
    2.6 Next Minor
    2.6.1
    2.6.2
    2.6.3
    2.6.4
    3.0-RC1
    3.0-RC2 Latest Minor
    3.0 Next Major
    3.0.1
    3.0.2
    3.0.3
    3.1
    3.1.1 Latest Major

    commons-cli:commons-cli

    @@ -838,7 +838,7 @@
    - + @@ -856,7 +856,10 @@ -
    Status No newer versions available.
     There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Id org.apache.commons
    Typejar
    +jar + +Newer versions +1.6 Next Minor

    org.apache.geronimo.daytrader:daytrader-ear

    @@ -907,7 +910,7 @@ -
    jar
    Newer versions4.4.0 Next Minor
    4.5.0 Latest Minor
    +4.4.0 Next Minor
    4.5.0
    4.5.1 Latest Minor

    org.apache.lucene:lucene-core

    @@ -934,7 +937,7 @@ -
    jar
    Newer versions4.4.0 Next Minor
    4.5.0 Latest Minor
    +4.4.0 Next Minor
    4.5.0
    4.5.1 Latest Minor

    org.apache.lucene:lucene-queryparser

    @@ -961,7 +964,7 @@ -
    jar
    Newer versions4.4.0 Next Minor
    4.5.0 Latest Minor
    +4.4.0 Next Minor
    4.5.0
    4.5.1 Latest Minor

    org.apache.lucene:lucene-test-framework

    @@ -988,7 +991,7 @@ -
    jar
    Newer versions4.4.0 Next Minor
    4.5.0 Latest Minor
    +4.4.0 Next Minor
    4.5.0
    4.5.1 Latest Minor

    org.apache.maven.scm:maven-scm-provider-cvsexe

    @@ -1144,7 +1147,7 @@
    - + @@ -1162,7 +1165,10 @@ -
    Status No newer versions available.
     There is at least one newer incremental version available. Incremental updates are typically passive.
    Group Id org.jsoup
    Typejar
    +jar + +Newer versions +1.7.3 Next Incremental

    org.mortbay.jetty:jetty

    @@ -1216,7 +1222,7 @@ -
    jar
    Newer versions2.5.6 Next Incremental
    2.5.6.SEC01
    2.5.6.SEC02
    2.5.6.SEC03 Latest Incremental
    3.0.0.RELEASE Next Major
    3.0.1.RELEASE
    3.0.2.RELEASE
    3.0.3.RELEASE
    3.0.4.RELEASE
    3.0.5.RELEASE
    3.0.6.RELEASE
    3.0.7.RELEASE
    3.1.0.RELEASE
    3.1.1.RELEASE
    3.1.2.RELEASE
    3.2.0.RELEASE
    3.2.1.RELEASE
    3.2.2.RELEASE
    3.2.3.RELEASE
    3.2.4.RELEASE Latest Major
    +2.5.6 Next Incremental
    2.5.6.SEC01
    2.5.6.SEC02
    2.5.6.SEC03 Latest Incremental
    3.0.0.RELEASE Next Major
    3.0.1.RELEASE
    3.0.2.RELEASE
    3.0.3.RELEASE
    3.0.4.RELEASE
    3.0.5.RELEASE
    3.0.6.RELEASE
    3.0.7.RELEASE
    3.1.0.RELEASE
    3.1.1.RELEASE
    3.1.2.RELEASE
    3.2.0.RELEASE
    3.2.1.RELEASE
    3.2.2.RELEASE
    3.2.3.RELEASE
    3.2.4.RELEASE
    3.2.5.RELEASE Latest Major diff --git a/dependency-check-core/failsafe-report.html b/dependency-check-core/failsafe-report.html index 64a239189..d39396fc3 100644 --- a/dependency-check-core/failsafe-report.html +++ b/dependency-check-core/failsafe-report.html @@ -1,13 +1,13 @@ - + dependency-check-core - Surefire Report @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -251,7 +251,7 @@ function toggleDisplay(elementId) { 0 0 100% -83.899
    +111.043

    Note: failures are anticipated and checked for with assertions while errors are unanticipated.


    Package List

    @@ -272,7 +272,7 @@ function toggleDisplay(elementId) { 0 0 100% -15.277 +14.649 org.owasp.dependencycheck.utils 2 @@ -280,7 +280,7 @@ function toggleDisplay(elementId) { 0 0 100% -2.033 +4.162 org.owasp.dependencycheck.data.update 3 @@ -288,7 +288,7 @@ function toggleDisplay(elementId) { 0 0 100% -66.585 +92.226 org.owasp.dependencycheck.data.cpe 2 @@ -296,7 +296,7 @@ function toggleDisplay(elementId) { 0 0 100% -0.004
    +0.006

    Note: package statistics are not computed recursively, they only sum up all of its testsuites numbers.

    org.owasp.dependencycheck

    @@ -318,7 +318,7 @@ function toggleDisplay(elementId) { 0 0 100% -15.277
    +14.649

    org.owasp.dependencycheck.utils

    @@ -339,7 +339,7 @@ function toggleDisplay(elementId) { -
    0 0 100%2.033
    +4.162

    org.owasp.dependencycheck.data.update

    @@ -360,7 +360,7 @@ function toggleDisplay(elementId) { - + @@ -369,7 +369,7 @@ function toggleDisplay(elementId) { -
    0 0 100%65.845
    91.86
    StandardUpdateTaskIntegrationTest0 0 100%0.74
    +0.366

    org.owasp.dependencycheck.data.cpe

    @@ -390,7 +390,7 @@ function toggleDisplay(elementId) { -
    0 0 100%0.004

    +0.006

    Test Cases

    [Summary] [Package List] [Test Cases]

    @@ -400,7 +400,7 @@ function toggleDisplay(elementId) { testUpdateNeeded -0.004 +0.006 testUpdate @@ -411,36 +411,36 @@ function toggleDisplay(elementId) { testUpdate -65.845
    +91.86

    StandardUpdateTaskIntegrationTest

    - + -
    testUpdatesNeeded0.533
    0.327
    testUpdate0.207
    +0.039

    EngineIntegrationTest

    -
    testScan15.277
    +14.649

    DownloaderIntegrationTest

    - + -
    testGetLastModified0.187
    0.035
    testFetchFile1.846

    +4.127
    diff --git a/dependency-check-core/findbugs.html b/dependency-check-core/findbugs.html index 50a57aaf9..72decd033 100644 --- a/dependency-check-core/findbugs.html +++ b/dependency-check-core/findbugs.html @@ -1,13 +1,13 @@ - + dependency-check-core - FindBugs Bug Detector Report @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -230,7 +230,7 @@ Errors Missing Classes -181 +184 7 0 0 @@ -268,13 +268,13 @@ Possible null pointer dereference of currentVersion in org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.removeSpuriousCPE(Dependency) CORRECTNESS NP_NULL_ON_SOME_PATH -164 +166 Medium Possible null pointer dereference of nextVersion on branch that might be infeasible in org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.removeSpuriousCPE(Dependency) STYLE NP_NULL_ON_SOME_PATH_MIGHT_BE_INFEASIBLE -164 +166 Medium

    org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer

    @@ -319,7 +319,7 @@ Redundant nullcheck of conn which is known to be null in org.owasp.dependencycheck.utils.Downloader.getConnection(URL) STYLE RCN_REDUNDANT_NULLCHECK_OF_NULL_VALUE -198 +216 Medium

    org.owasp.dependencycheck.utils.LogUtils

    @@ -334,7 +334,7 @@ Changes to logger could be lost in org.owasp.dependencycheck.utils.LogUtils.prepareLogger(InputStream, String) EXPERIMENTAL LG_LOST_LOGGER_DUE_TO_WEAK_REFERENCE -58 +59 High
    diff --git a/dependency-check-core/index.html b/dependency-check-core/index.html index a99eefb17..c89232ee4 100644 --- a/dependency-check-core/index.html +++ b/dependency-check-core/index.html @@ -1,13 +1,13 @@ - + dependency-check-core - @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-core/license.html b/dependency-check-core/license.html index dc3dee12d..6a040824d 100644 --- a/dependency-check-core/license.html +++ b/dependency-check-core/license.html @@ -1,13 +1,13 @@ - + dependency-check-core - Project License @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-core/plugin-updates-report.html b/dependency-check-core/plugin-updates-report.html index 8db11ce60..c64b935ab 100644 --- a/dependency-check-core/plugin-updates-report.html +++ b/dependency-check-core/plugin-updates-report.html @@ -1,13 +1,13 @@ - + dependency-check-core - Plugin Updates Report @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -692,7 +692,7 @@ 2.1 Newer versions -2.2 Next Minor
    2.2.1
    2.2.2
    2.3
    2.3.1
    2.3.2
    2.4
    2.4.1 Latest Minor +2.2 Next Minor
    2.2.1
    2.2.2
    2.3
    2.3.1
    2.3.2
    2.4
    2.4.1
    2.4.2 Latest Minor

    Plugin org.apache.maven.plugins:maven-resources-plugin

    diff --git a/dependency-check-core/pmd.html b/dependency-check-core/pmd.html index 00cf02f31..57cac26e2 100644 --- a/dependency-check-core/pmd.html +++ b/dependency-check-core/pmd.html @@ -1,13 +1,13 @@ - + dependency-check-core - PMD Results @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -228,233 +228,236 @@ -
    Line
    These nested if statements could be combined148 - 151
    +140 - 143 + +These nested if statements could be combined +305 - 308

    org/owasp/dependencycheck/analyzer/CPEAnalyzer.java

    - + - + - + - - - - + + + +
    Violation Line
    Useless parentheses. 136
    Useless parentheses. 207
    These nested if statements could be combined588 - 593
    These nested if statements could be combined589 - 592
    588 - 593
    These nested if statements could be combined589 - 592
    These nested if statements could be combined 598 - 601

    org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.java

    - + - - - + + + -
    Violation Line
    Invoke equals() on the object you've already ensured is not null220
    Invoke equals() on the object you've already ensured is not null221
    These nested if statements could be combined234 - 236
    +235 - 237

    org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.java

    - + - + -
    Violation Line
    These nested if statements could be combined152 - 173
    +154 - 175

    org/owasp/dependencycheck/analyzer/JarAnalyzer.java

    - + - - - - + + + +
    Violation Line
    Useless parentheses.337
    Useless parentheses.834
    337
    Useless parentheses.834
    Avoid unused method parameters such as 'classes'. 972

    org/owasp/dependencycheck/analyzer/JavaScriptAnalyzer.java

    - + - +
    Violation Line
    Avoid unused local variables such as 'extractComments'. 99

    org/owasp/dependencycheck/analyzer/NvdCveAnalyzer.java

    - + - +
    Violation Line
    Useless parentheses. 78

    org/owasp/dependencycheck/concurrency/DirectorySpinLock.java

    - + - +
    Violation Line
    These nested if statements could be combined 243 - 248

    org/owasp/dependencycheck/data/cpe/BaseIndex.java

    - + - +
    Violation Line
    These nested if statements could be combined 111 - 113

    org/owasp/dependencycheck/data/cpe/IndexEntry.java

    - + - + - +
    Violation Line
    Useless parentheses. 171
    Useless parentheses. 174

    org/owasp/dependencycheck/data/nvdcve/CveDB.java

    - + - + - +
    Violation Line
    These nested if statements could be combined 517 - 519
    Useless parentheses. 664

    org/owasp/dependencycheck/dependency/Dependency.java

    - + - + - + - + - + - + - - - - + + + +
    Violation Line
    Useless parentheses. 493
    Useless parentheses. 496
    Useless parentheses. 499
    Useless parentheses. 502
    Useless parentheses. 505
    Useless parentheses.508
    Useless parentheses.527
    508
    Useless parentheses.527
    Useless parentheses. 530

    org/owasp/dependencycheck/dependency/Evidence.java

    - + - +
    Violation Line
    Useless parentheses. 228

    org/owasp/dependencycheck/dependency/Identifier.java

    - + - + - +
    Violation Line
    Useless parentheses. 150
    Useless parentheses. 153

    org/owasp/dependencycheck/dependency/Reference.java

    - + - - - - + + + +
    Violation Line
    Useless parentheses.111
    Useless parentheses.114
    111
    Useless parentheses.114
    Useless parentheses. 117

    org/owasp/dependencycheck/dependency/Vulnerability.java

    - + - +
    Violation Line
    Useless parentheses. 375

    org/owasp/dependencycheck/dependency/VulnerableSoftware.java

    - + - - - - + + + +
    Violation Line
    Useless parentheses.139
    Useless parentheses.179
    139
    Useless parentheses.179
    Useless parentheses. 184

    org/owasp/dependencycheck/utils/Checksum.java

    - + - +
    Violation Line
    Useless parentheses. 103

    org/owasp/dependencycheck/utils/DependencyVersion.java

    - + - + - +
    Violation Line
    Useless parentheses. 138
    Useless parentheses. 198
    diff --git a/dependency-check-core/project-info.html b/dependency-check-core/project-info.html index 108dab5f6..ed07d244a 100644 --- a/dependency-check-core/project-info.html +++ b/dependency-check-core/project-info.html @@ -1,13 +1,13 @@ - + dependency-check-core - Project Information @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-core/project-reports.html b/dependency-check-core/project-reports.html index 8faa975de..07ef73b60 100644 --- a/dependency-check-core/project-reports.html +++ b/dependency-check-core/project-reports.html @@ -1,13 +1,13 @@ - + dependency-check-core - Generated Reports @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-core/project-summary.html b/dependency-check-core/project-summary.html index 703268e18..fc987835c 100644 --- a/dependency-check-core/project-summary.html +++ b/dependency-check-core/project-summary.html @@ -1,13 +1,13 @@ - + dependency-check-core - Project Summary @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -188,7 +188,7 @@ dependency-check-core Version -1.0.4 +1.0.5 Type jar diff --git a/dependency-check-core/surefire-report.html b/dependency-check-core/surefire-report.html index 46cde4780..1025e7835 100644 --- a/dependency-check-core/surefire-report.html +++ b/dependency-check-core/surefire-report.html @@ -1,13 +1,13 @@ - + dependency-check-core - Surefire Report @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -246,12 +246,12 @@ function toggleDisplay(elementId) { Success Rate Time -122 +125 0 0 0 100% -55.326
    +59.712

    Note: failures are anticipated and checked for with assertions while errors are unanticipated.


    Package List

    @@ -272,7 +272,7 @@ function toggleDisplay(elementId) { 0 0 100% -26.573 +28.466 org.owasp.dependencycheck.data.cwe 1 @@ -280,7 +280,7 @@ function toggleDisplay(elementId) { 0 0 100% -0.009 +0 org.owasp.dependencycheck.dependency 23 @@ -288,7 +288,7 @@ function toggleDisplay(elementId) { 0 0 100% -0.033 +0.001 org.owasp.dependencycheck.utils 29 @@ -296,7 +296,7 @@ function toggleDisplay(elementId) { 0 0 100% -0.046 +0.082 org.owasp.dependencycheck.concurrency 3 @@ -304,15 +304,15 @@ function toggleDisplay(elementId) { 0 0 100% -9.516 +9.507 org.owasp.dependencycheck.analyzer -26 +29 0 0 0 100% -9.508 +15.018 org.owasp.dependencycheck.data.update 21 @@ -320,7 +320,7 @@ function toggleDisplay(elementId) { 0 0 100% -7.438 +3.779 org.owasp.dependencycheck.data.nvdcve 5 @@ -328,7 +328,7 @@ function toggleDisplay(elementId) { 0 0 100% -1.318 +1.502 org.owasp.dependencycheck.data.lucene 10 @@ -336,7 +336,7 @@ function toggleDisplay(elementId) { 0 0 100% -0.885 +1.357 org.owasp.dependencycheck.data.cpe 2 @@ -366,7 +366,7 @@ function toggleDisplay(elementId) { 0 0 100% -26.573
    +28.466

    org.owasp.dependencycheck.data.cwe

    @@ -387,7 +387,7 @@ function toggleDisplay(elementId) { -
    0 0 100%0.009
    +0

    org.owasp.dependencycheck.dependency

    @@ -408,7 +408,7 @@ function toggleDisplay(elementId) { - + @@ -438,7 +438,7 @@ function toggleDisplay(elementId) { - + @@ -447,7 +447,7 @@ function toggleDisplay(elementId) { - + @@ -492,7 +492,7 @@ function toggleDisplay(elementId) { -
    0 0 100%0.032
    0
    VulnerableSoftwareTest0 0 100%0.045
    0.042
    DependencyVersionTest0 0 100%0
    0.04
    DependencyVersionUtilTest0 0 100%0.001
    +0

    org.owasp.dependencycheck.concurrency

    @@ -513,7 +513,7 @@ function toggleDisplay(elementId) { -
    0 0 100%9.516
    +9.507

    org.owasp.dependencycheck.analyzer

    @@ -534,7 +534,7 @@ function toggleDisplay(elementId) { - + @@ -543,16 +543,16 @@ function toggleDisplay(elementId) { - + - + - + @@ -561,7 +561,7 @@ function toggleDisplay(elementId) { - + @@ -570,7 +570,7 @@ function toggleDisplay(elementId) { - + @@ -579,7 +579,7 @@ function toggleDisplay(elementId) { -
    0 0 100%0.016
    0.024
    AnalyzerServiceTest0 0 100%0.413
    0.516
    ArchiveAnalyzerTest710 0 0 0 100%0.517
    5.631
    CPEAnalyzerTest0 0 100%7.536
    7.492
    FileNameAnalyzerTest0 0 100%0.028
    0.037
    JarAnalyzerTest0 0 100%0.998
    +1.318

    org.owasp.dependencycheck.data.update

    @@ -600,7 +600,7 @@ function toggleDisplay(elementId) { - + @@ -609,7 +609,7 @@ function toggleDisplay(elementId) { - + @@ -618,7 +618,7 @@ function toggleDisplay(elementId) { - + @@ -657,7 +657,7 @@ function toggleDisplay(elementId) { - + @@ -666,7 +666,7 @@ function toggleDisplay(elementId) { - + @@ -675,7 +675,7 @@ function toggleDisplay(elementId) { -
    0 0 100%0.183
    0.252
    BatchUpdateTaskTest0 0 100%7.2
    3.527
    DataStoreMetaInfoTest0 0 100%0.055
    0
    NvdCveInfoTest0 0 100%1.069
    1.154
    NvdCve_1_2_HandlerTest0 0 100%0.049
    0.052
    NvdCve_2_0_HandlerTest0 0 100%0.2
    +0.296

    org.owasp.dependencycheck.data.lucene

    @@ -696,7 +696,7 @@ function toggleDisplay(elementId) { - + @@ -714,7 +714,7 @@ function toggleDisplay(elementId) { - + @@ -723,7 +723,7 @@ function toggleDisplay(elementId) { -
    0 0 100%0.091
    0.104
    LuceneUtilsTest0 0 100%0.04
    0.059
    UrlTokenizingFilterTest0 0 100%0.754
    +1.194

    org.owasp.dependencycheck.data.cpe

    @@ -763,42 +763,54 @@ function toggleDisplay(elementId) { -
    testNewHashSet0.016
    +0.024

    AnalyzerServiceTest

    -
    testGetAnalyzers0.413
    +0.516

    ArchiveAnalyzerTest

    + + + + + + + + - + - + - + - + - + + + + + - +
    testAnalyzeTar0.256
    testAnalyzeTgz2.259
    testAnalyze0.51
    0.279
    testGetAnalysisPhase0
    0.001
    testGetName0.001
    0
    testAnalyze_badZip0.004
    0.008
    testInitialize0.002
    0
    testAnalyzeTarGz2.828
    testSupportsExtension 0
    testGetSupportedExtensions 0
    @@ -808,19 +820,19 @@ function toggleDisplay(elementId) { testSearchCPE -1.911 +1.636 testDetermineCPE -2.616 +1.769 testOpen -0.151 +0.163 testDetermineCPE_full -2.857 +3.923 testBuildSearch @@ -831,7 +843,7 @@ function toggleDisplay(elementId) { testAnalyze -0.028 +0.036 testClose @@ -855,30 +867,30 @@ function toggleDisplay(elementId) { testGetSupportedExtensions -0 +0.001

    JarAnalyzerTest

    - + - + - + - + -
    testAnalyze0.274
    0.289
    testGetName0.169
    0.213
    testInterpolateString0.167
    0.349
    testSupportsExtension0.18
    0.245
    testGetSupportedExtensions0.208
    +0.222

    DirectorySpinLockTest

    @@ -893,7 +905,7 @@ function toggleDisplay(elementId) { -
    testObtainExclusiveLock1.512
    +1.503

    BaseIndexTest

    @@ -914,14 +926,14 @@ function toggleDisplay(elementId) { -
    testGetCweName0.009
    +0

    FieldAnalyzerTest

    -
    testAnalyzers0.091
    +0.104

    LuceneUtilsTest

    @@ -946,97 +958,97 @@ function toggleDisplay(elementId) {
    - - + + - -
    testExamples0.033
    testClear0.041
    testClear0.007
    +testExamples +0.018

    UrlTokenizingFilterTest

    - - + + - - + + - -
    testEmptyTerm0.017
    testRandomStrings1.194
    testRandomStrings0.728
    testExamples0
    testExamples0.009
    +testEmptyTerm +0

    CveDBTest

    - + - + -
    testOpen0.146
    0.356
    testGetCPEs0.157
    0.267
    testGetVulnerabilities0.766
    +0.531

    NvdCve_1_2_HandlerTest

    -
    testParse0.049
    +0.052

    NvdCve_2_0_HandlerTest

    -
    testParse0.2
    +0.296

    AbstractUpdateTaskTest

    - + - + - + -
    testOpenDataStores0.13
    0.197
    testSetDeleteAndRecreate0.001
    0
    testWithinRange0
    0.001
    testDeleteExistingData0.052
    +0.054

    BatchUpdateTaskTest

    - + -
    testSetDoBatchUpdate3.994
    0.194
    testUpdate3.206
    +3.333

    DataStoreMetaInfoTest

    - + - + @@ -1044,7 +1056,7 @@ function toggleDisplay(elementId) { - + @@ -1105,11 +1117,11 @@ function toggleDisplay(elementId) { - + - + @@ -1145,7 +1157,7 @@ function toggleDisplay(elementId) { - + @@ -1161,7 +1173,7 @@ function toggleDisplay(elementId) { - + @@ -1184,7 +1196,7 @@ function toggleDisplay(elementId) { - + @@ -1192,14 +1204,14 @@ function toggleDisplay(elementId) { -
    testIsBatchUpdateMode0.001
    0
    testSave0.053
    0
    testGetPropertiesFile
    testGetProperty_String_String0.001
    0
    testIsEmpty
    testGetSha1sum0.013
    0
    testGetProductEvidence0.001
    0
    testGetActualFilePath
    testGetFileName0.001
    0
    testGetFilePath
    testGetMd5sum0.017
    0
    testGetEvidence
    testCompareTo0.001
    0
    testHashCode
    testEquals0
    +0.001

    ReportGeneratorTest

    - + @@ -1210,7 +1222,7 @@ function toggleDisplay(elementId) { - + @@ -1218,7 +1230,7 @@ function toggleDisplay(elementId) { - + @@ -1245,7 +1257,7 @@ function toggleDisplay(elementId) { - + @@ -1320,7 +1332,7 @@ function toggleDisplay(elementId) { - + diff --git a/dependency-check-core/taglist.html b/dependency-check-core/taglist.html index 6fdbee00a..dbe5417b0 100644 --- a/dependency-check-core/taglist.html +++ b/dependency-check-core/taglist.html @@ -1,13 +1,13 @@ - + dependency-check-core - Tag List report @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -225,19 +225,19 @@ - +
    testGenerateXMLReport26.573
    28.466
    testGenerateReport
    testGetChecksum_NoSuchAlgorithm0.044
    0.042
    testGetChecksum
    testGetMD5Checksum0.001
    0
    testGetChecksum_FileNotFound
    testCompareTo0
    0.04
    testParseVersion
    testRemoveProperty0.001
    0
    testSetString Tag strings used by tag class
    Todo Work3432 todo, FIXME

    Each tag is detailed below:

    Todo Work

    -

    Number of occurrences found in the code: 34

    +

    Number of occurrences found in the code: 32

    - + @@ -257,143 +257,134 @@ - - - - - - - - - - + - - - - + - - + + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + -
    org.owasp.dependencycheck.analyzer.ArchiveAnalyzer Line
    - can we get more evidence from the parent? EAR contains module name, etc.212
    206
    org.owasp.dependencycheck.analyzer.CPEAnalyzer Line
    fix this assert Assert.assertEquals(expResult, result.get(0).getName()); 251
    org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzerLine
    - consider splitting on /\._-\s/ and checking if all of one side is fully contained in the other With the exception of the word "core". This might work even on groups when we don't have a CVE.302
    should we be splitting the name on [-_(.\d)+] and seeing if the parts are contained in the other side?320
    org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer Line
    fix the version problem below150
    - can we utilize the pom's groupid and artifactId to filter??? most of these are due to low quality data. Other idea would be to say any CPE found based on LOW confidence evidence should have a different CPE type? (this might be a better solution then just removing the URL for "best-guess" matches).262
    152
    move this startswith expression to a configuration file?273
    - can we utilize the pom's groupid and artifactId to filter??? most of these are due to low quality data. Other idea would be to say any CPE found based on LOW confidence evidence should have a different CPE type? (this might be a better solution then just removing the URL for "best-guess" matches).264
    move this startswith expression to a configuration file?275
    org.owasp.dependencycheck.analyzer.JarAnalyzer Line
    remove weighting 516
    change this to a regex? 633
    validate that the starts with is correct... or does it start with a ./ or /? // is it different on different platforms? if (entry.startsWith("META-INF/maven/")) { //trim the meta-inf/maven and pom.xml... final String pomPath = entry.substring(15, entry.length() - 8).toLowerCase(); final String[] parts = pomPath.split("/"); if (parts == null || parts.length != 2) { //misplaced pom? //TODO add logging to FINE possiblePoms.add(entry); } parts[0] = parts[0].replace('.', '/'); parts[1] = parts[1].replace('.', '/'); for (ClassNameInformation cni : classes) { final String name = cni.getName(); if (StringUtils.containsIgnoreCase(name, parts[0])) { addEntry(usePoms, entry); } if (StringUtils.containsIgnoreCase(name, parts[1])) { addEntry(usePoms, entry); } } } else { // we have a JAR file with an incorrect POM layout... //TODO add logging to FINE possiblePoms.add(entry); } } List<String> retValue; if (usePoms.isEmpty()) { if (possiblePoms.isEmpty()) { retValue = pomEntries; } else { retValue = possiblePoms; } } else { retValue = new ArrayList<String>(); int maxCount = 0; for (Map.Entry<String, Integer> entry : usePoms.entrySet()) { final int current = entry.getValue().intValue(); if (current > maxCount) { maxCount = current; retValue.clear(); retValue.add(entry.getKey()); } else if (current == maxCount) { retValue.add(entry.getKey()); } } } return retValue; 977
    add logging to FINE possiblePoms.add(entry); } parts[0] = parts[0].replace('.', '/'); parts[1] = parts[1].replace('.', '/'); for (ClassNameInformation cni : classes) { final String name = cni.getName(); if (StringUtils.containsIgnoreCase(name, parts[0])) { addEntry(usePoms, entry); } if (StringUtils.containsIgnoreCase(name, parts[1])) { addEntry(usePoms, entry); } } } else { // we have a JAR file with an incorrect POM layout... //TODO add logging to FINE possiblePoms.add(entry); } } List<String> retValue; if (usePoms.isEmpty()) { if (possiblePoms.isEmpty()) { retValue = pomEntries; } else { retValue = possiblePoms; } } else { retValue = new ArrayList<String>(); int maxCount = 0; for (Map.Entry<String, Integer> entry : usePoms.entrySet()) { final int current = entry.getValue().intValue(); if (current > maxCount) { maxCount = current; retValue.clear(); retValue.add(entry.getKey()); } else if (current == maxCount) { retValue.add(entry.getKey()); } } } return retValue; 984
    add logging to FINE possiblePoms.add(entry); } } List<String> retValue; if (usePoms.isEmpty()) { if (possiblePoms.isEmpty()) { retValue = pomEntries; } else { retValue = possiblePoms; } } else { retValue = new ArrayList<String>(); int maxCount = 0; for (Map.Entry<String, Integer> entry : usePoms.entrySet()) { final int current = entry.getValue().intValue(); if (current > maxCount) { maxCount = current; retValue.clear(); retValue.add(entry.getKey()); } else if (current == maxCount) { retValue.add(entry.getKey()); } } } return retValue; 999
    org.owasp.dependencycheck.analyzer.NvdCveAnalyzer Line
    - remove this comment block after additional testing is completed note - valid match functionality has been moved into the CveDB class. // for (Vulnerability v : vulns) { // if (isValidMatch(dependency, v)) { // dependency.addVulnerability(v); // } // } 110
    - remove this comment block after additional testing is completed The following check has been moved into the CveDB class. // /** // * <p>Determines if this is a valid vulnerability match for the given // * dependency. Specifically, this is concerned with ensuring the version // * numbers are correct.</p> // * <p>Currently, this is focused on the issues with the versions for Struts // * 1 and Struts 2. In the future this will due better matching on more // * version numbers.</p> // * // * @param dependency the dependency // * @param v the vulnerability // * @return returns true if the vulnerability is for the given dependency // */ // private boolean isValidMatch(final Dependency dependency, final Vulnerability v) { // //right now I only know of the issue with Struts1/2 // // start with fixing this problem. // // //TODO extend this solution to do better version matching for the vulnerable software. // boolean struts1 = false; // boolean struts2 = false; // for (Identifier i : dependency.getIdentifiers()) { // if (i.getValue().startsWith("cpe:/a:apache:struts:")) { // final char version = i.getValue().charAt(21); // if (version == '1') { // struts1 = true; // } // if (version == '2') { // struts2 = true; // } // } // } // if (!struts1 && !struts2) { // return true; //we are not looking at struts, so return true. // } // if (struts1 && struts2) { // return true; //there is a mismatch here, but we can't solve it here so we return valid. // } // if (struts1) { // boolean hasStruts1Vuln = false; // boolean hasStruts2PreviousVersion = false; // for (VulnerableSoftware vs : v.getVulnerableSoftware()) { // //TODO FIX THIS // //hasStruts2PreviousVersion |= vs.hasPreviousVersion() && vs.getName().charAt(21) == '2'; // //hasStruts1Vuln |= vs.getName().charAt(21) == '1'; // } // if (!hasStruts1Vuln && hasStruts2PreviousVersion) { // return false; // } // } // // return true; // } 169
    extend this solution to do better version matching for the vulnerable software. // boolean struts1 = false; // boolean struts2 = false; // for (Identifier i : dependency.getIdentifiers()) { // if (i.getValue().startsWith("cpe:/a:apache:struts:")) { // final char version = i.getValue().charAt(21); // if (version == '1') { // struts1 = true; // } // if (version == '2') { // struts2 = true; // } // } // } // if (!struts1 && !struts2) { // return true; //we are not looking at struts, so return true. // } // if (struts1 && struts2) { // return true; //there is a mismatch here, but we can't solve it here so we return valid. // } // if (struts1) { // boolean hasStruts1Vuln = false; // boolean hasStruts2PreviousVersion = false; // for (VulnerableSoftware vs : v.getVulnerableSoftware()) { // //TODO FIX THIS // //hasStruts2PreviousVersion |= vs.hasPreviousVersion() && vs.getName().charAt(21) == '2'; // //hasStruts1Vuln |= vs.getName().charAt(21) == '1'; // } // if (!hasStruts1Vuln && hasStruts2PreviousVersion) { // return false; // } // } // // return true; // } 187
    FIX THIS // //hasStruts2PreviousVersion |= vs.hasPreviousVersion() && vs.getName().charAt(21) == '2'; // //hasStruts1Vuln |= vs.getName().charAt(21) == '1'; // } // if (!hasStruts1Vuln && hasStruts2PreviousVersion) { // return false; // } // } // // return true; // } 211
    org.owasp.dependencycheck.concurrency.DirectorySpinLock Line
    uncomment this once support for 1.6 is dropped. if (lock != null) { try { lock.close(); } catch (IOException ex) { Logger.getLogger(DirectorySpinLock.class.getName()).log(Level.FINEST, "Unable to close file lock due to IO Exception", ex); } } 227
    org.owasp.dependencycheck.data.cpe.CpeIndexReader Line
    add spinlock (shared) 80
    remove spinlock (shared) 93
    org.owasp.dependencycheck.data.cpe.CpeIndexWriter Line
    add spinlock 62
    remove spinlock 74
    org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer Line
    consider implementing payloads/custom attributes... use custom attributes for major, minor, x, x, x, rcx these can then be used to weight the score for searches on the version. see http://lucene.apache.org/core/3_6_1/api/core/org/apache/lucene/analysis/package-summary.html#package_description look at this article to implement http://www.codewrecks.com/blog/index.php/2012/08/25/index-your-blog-using-tags-and-lucene-net/ 38
    org.owasp.dependencycheck.data.lucene.VersionAnalyzer Line
    consider implementing payloads/custom attributes... use custom attributes for major, minor, x, x, x, rcx these can then be used to weight the score for searches on the version. see http://lucene.apache.org/core/3_6_1/api/core/org/apache/lucene/analysis/package-summary.html#package_description look at this article to implement http://www.codewrecks.com/blog/index.php/2012/08/25/index-your-blog-using-tags-and-lucene-net/ 37
    org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter Line
    should we also be splitting on dash or underscore? we would need to incorporate the dash or underscore back in... 83
    org.owasp.dependencycheck.data.nvdcve.CveDB Line
    consider utilizing the matchThreeVersion method to get additional results. However, this might also introduce false positives. 674
    org.owasp.dependencycheck.data.update.BatchUpdateTask Line
    add FTP? 112
    org.owasp.dependencycheck.data.update.BatchUpdateTaskTest Line
    add some actual asserts to check things. 119
    org.owasp.dependencycheck.data.update.StandardUpdateTaskIntegrationTest Line
    make this an actual test 69
    org.owasp.dependencycheck.dependency.EvidenceCollection Line
    consider changing the regex to only compare alpha-numeric (i.e. strip everything else) 244
    org.owasp.dependencycheck.utils.DependencyVersion Line
    steal better version of code from compareTo 140
    org.owasp.dependencycheck.utils.Downloader Line
    add the FPR protocol?132
    +134 diff --git a/dependency-check-core/xref-test/index.html b/dependency-check-core/xref-test/index.html index 111f96d90..4d9435a62 100644 --- a/dependency-check-core/xref-test/index.html +++ b/dependency-check-core/xref-test/index.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference + Dependency-Check Core 1.0.5 Reference diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/ArchiveAnalyzerTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/ArchiveAnalyzerTest.html index d3eb5cfb7..045a4aad1 100644 --- a/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/ArchiveAnalyzerTest.html +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/ArchiveAnalyzerTest.html @@ -38,158 +38,244 @@ 28 import org.junit.Test; 29 import static org.junit.Assert.*; 30 import org.owasp.dependencycheck.Engine; -31 import org.owasp.dependencycheck.dependency.Dependency; -32 import org.owasp.dependencycheck.utils.Settings; -33 -34 /** -35 * -36 * @author Jeremy Long (jeremy.long@owasp.org) -37 */ -38 public class ArchiveAnalyzerTest { -39 -40 public ArchiveAnalyzerTest() { -41 } -42 -43 @BeforeClass -44 public static void setUpClass() { -45 } -46 -47 @AfterClass -48 public static void tearDownClass() { -49 } -50 -51 @Before -52 public void setUp() { -53 } -54 -55 @After -56 public void tearDown() { -57 } -58 -59 /** -60 * Test of getSupportedExtensions method, of class ArchiveAnalyzer. -61 */ -62 @Test -63 public void testGetSupportedExtensions() { -64 ArchiveAnalyzer instance = new ArchiveAnalyzer(); -65 Set expResult = new HashSet<String>(); -66 expResult.add("zip"); -67 expResult.add("war"); -68 expResult.add("ear"); -69 Set result = instance.getSupportedExtensions(); -70 assertEquals(expResult, result); -71 } -72 -73 /** -74 * Test of getName method, of class ArchiveAnalyzer. -75 */ -76 @Test -77 public void testGetName() { -78 ArchiveAnalyzer instance = new ArchiveAnalyzer(); -79 String expResult = "Archive Analyzer"; -80 String result = instance.getName(); -81 assertEquals(expResult, result); -82 } -83 -84 /** -85 * Test of supportsExtension method, of class ArchiveAnalyzer. -86 */ -87 @Test -88 public void testSupportsExtension() { -89 String extension = "tar"; //not supported -90 ArchiveAnalyzer instance = new ArchiveAnalyzer(); -91 boolean expResult = false; -92 boolean result = instance.supportsExtension(extension); -93 assertEquals(expResult, result); -94 -95 extension = "war"; //supported -96 expResult = true; -97 result = instance.supportsExtension(extension); -98 assertEquals(expResult, result); -99 -100 extension = "ear"; //supported -101 result = instance.supportsExtension(extension); -102 assertEquals(expResult, result); -103 -104 extension = "zip"; //supported -105 result = instance.supportsExtension(extension); -106 assertEquals(expResult, result); -107 } -108 -109 /** -110 * Test of getAnalysisPhase method, of class ArchiveAnalyzer. -111 */ -112 @Test -113 public void testGetAnalysisPhase() { -114 ArchiveAnalyzer instance = new ArchiveAnalyzer(); -115 AnalysisPhase expResult = AnalysisPhase.INITIAL; -116 AnalysisPhase result = instance.getAnalysisPhase(); -117 assertEquals(expResult, result); -118 } -119 -120 /** -121 * Test of initialize and close methods, of class ArchiveAnalyzer. -122 */ -123 @Test -124 public void testInitialize() throws Exception { -125 ArchiveAnalyzer instance = new ArchiveAnalyzer(); -126 instance.initialize(); -127 -128 instance.close(); -129 -130 //no exception means things worked. -131 } -132 -133 /** -134 * Test of analyze method, of class ArchiveAnalyzer. -135 */ -136 @Test -137 public void testAnalyze() throws Exception { -138 ArchiveAnalyzer instance = new ArchiveAnalyzer(); -139 try { -140 instance.initialize(); -141 -142 File file = new File(this.getClass().getClassLoader().getResource("daytrader-ear-2.1.7.ear").getPath()); -143 Dependency dependency = new Dependency(file); -144 Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, false); -145 Engine engine = new Engine(); -146 -147 int initial_size = engine.getDependencies().size(); -148 instance.analyze(dependency, engine); -149 int ending_size = engine.getDependencies().size(); -150 -151 assertTrue(initial_size < ending_size); +31 import org.owasp.dependencycheck.data.cpe.BaseIndexTestCase; +32 import org.owasp.dependencycheck.dependency.Dependency; +33 import org.owasp.dependencycheck.utils.Settings; +34 +35 /** +36 * +37 * @author Jeremy Long (jeremy.long@owasp.org) +38 */ +39 public class ArchiveAnalyzerTest extends BaseIndexTestCase { +40 +41 public ArchiveAnalyzerTest() { +42 } +43 +44 @BeforeClass +45 public static void setUpClass() { +46 } +47 +48 @AfterClass +49 public static void tearDownClass() { +50 } +51 +52 @Before +53 public void setUp() throws Exception { +54 super.setUp(); +55 } +56 +57 @After +58 public void tearDown() throws Exception { +59 super.tearDown(); +60 } +61 +62 /** +63 * Test of getSupportedExtensions method, of class ArchiveAnalyzer. +64 */ +65 @Test +66 public void testGetSupportedExtensions() { +67 ArchiveAnalyzer instance = new ArchiveAnalyzer(); +68 Set expResult = new HashSet<String>(); +69 expResult.add("zip"); +70 expResult.add("war"); +71 expResult.add("ear"); +72 expResult.add("tar"); +73 expResult.add("gz"); +74 expResult.add("tgz"); +75 Set result = instance.getSupportedExtensions(); +76 assertEquals(expResult, result); +77 } +78 +79 /** +80 * Test of getName method, of class ArchiveAnalyzer. +81 */ +82 @Test +83 public void testGetName() { +84 ArchiveAnalyzer instance = new ArchiveAnalyzer(); +85 String expResult = "Archive Analyzer"; +86 String result = instance.getName(); +87 assertEquals(expResult, result); +88 } +89 +90 /** +91 * Test of supportsExtension method, of class ArchiveAnalyzer. +92 */ +93 @Test +94 public void testSupportsExtension() { +95 String extension = "7z"; //not supported +96 ArchiveAnalyzer instance = new ArchiveAnalyzer(); +97 boolean expResult = false; +98 boolean result = instance.supportsExtension(extension); +99 assertEquals(expResult, result); +100 +101 extension = "war"; //supported +102 expResult = true; +103 result = instance.supportsExtension(extension); +104 assertEquals(expResult, result); +105 +106 extension = "ear"; //supported +107 result = instance.supportsExtension(extension); +108 assertEquals(expResult, result); +109 +110 extension = "zip"; //supported +111 result = instance.supportsExtension(extension); +112 assertEquals(expResult, result); +113 } +114 +115 /** +116 * Test of getAnalysisPhase method, of class ArchiveAnalyzer. +117 */ +118 @Test +119 public void testGetAnalysisPhase() { +120 ArchiveAnalyzer instance = new ArchiveAnalyzer(); +121 AnalysisPhase expResult = AnalysisPhase.INITIAL; +122 AnalysisPhase result = instance.getAnalysisPhase(); +123 assertEquals(expResult, result); +124 } +125 +126 /** +127 * Test of initialize and close methods, of class ArchiveAnalyzer. +128 */ +129 @Test +130 public void testInitialize() throws Exception { +131 ArchiveAnalyzer instance = new ArchiveAnalyzer(); +132 instance.initialize(); +133 +134 instance.close(); +135 +136 //no exception means things worked. +137 } +138 +139 /** +140 * Test of analyze method, of class ArchiveAnalyzer. +141 */ +142 @Test +143 public void testAnalyze() throws Exception { +144 ArchiveAnalyzer instance = new ArchiveAnalyzer(); +145 try { +146 instance.initialize(); +147 +148 File file = new File(this.getClass().getClassLoader().getResource("daytrader-ear-2.1.7.ear").getPath()); +149 Dependency dependency = new Dependency(file); +150 Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, false); +151 Engine engine = new Engine(); 152 -153 } finally { -154 instance.close(); -155 } -156 } -157 -158 /** -159 * Test of analyze method, of class ArchiveAnalyzer. -160 */ -161 @Test -162 public void testAnalyze_badZip() throws Exception { -163 ArchiveAnalyzer instance = new ArchiveAnalyzer(); -164 try { -165 instance.initialize(); -166 -167 File file = new File(this.getClass().getClassLoader().getResource("test.zip").getPath()); -168 Dependency dependency = new Dependency(file); -169 Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, false); -170 Engine engine = new Engine(); -171 -172 int initial_size = engine.getDependencies().size(); -173 instance.analyze(dependency, engine); -174 int ending_size = engine.getDependencies().size(); -175 -176 assertTrue(initial_size == ending_size); +153 int initial_size = engine.getDependencies().size(); +154 instance.analyze(dependency, engine); +155 int ending_size = engine.getDependencies().size(); +156 +157 assertTrue(initial_size < ending_size); +158 +159 } finally { +160 instance.close(); +161 } +162 } +163 +164 /** +165 * Test of analyze method, of class ArchiveAnalyzer. +166 */ +167 @Test +168 public void testAnalyzeTar() throws Exception { +169 ArchiveAnalyzer instance = new ArchiveAnalyzer(); +170 try { +171 instance.initialize(); +172 +173 File file = new File(this.getClass().getClassLoader().getResource("file.tar").getPath()); +174 Dependency dependency = new Dependency(file); +175 Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, false); +176 Engine engine = new Engine(); 177 -178 } finally { -179 instance.close(); -180 } -181 } -182 } +178 int initial_size = engine.getDependencies().size(); +179 instance.analyze(dependency, engine); +180 int ending_size = engine.getDependencies().size(); +181 +182 assertTrue(initial_size < ending_size); +183 +184 } finally { +185 instance.close(); +186 } +187 } +188 +189 /** +190 * Test of analyze method, of class ArchiveAnalyzer. +191 */ +192 @Test +193 public void testAnalyzeTarGz() throws Exception { +194 ArchiveAnalyzer instance = new ArchiveAnalyzer(); +195 try { +196 instance.initialize(); +197 +198 File file = new File(this.getClass().getClassLoader().getResource("file.tar.gz").getPath()); +199 //Dependency dependency = new Dependency(file); +200 Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, false); +201 Engine engine = new Engine(); +202 +203 int initial_size = engine.getDependencies().size(); +204 //instance.analyze(dependency, engine); +205 engine.scan(file); +206 engine.analyzeDependencies(); +207 int ending_size = engine.getDependencies().size(); +208 +209 assertTrue(initial_size < ending_size); +210 +211 } finally { +212 instance.close(); +213 } +214 } +215 +216 /** +217 * Test of analyze method, of class ArchiveAnalyzer. +218 */ +219 @Test +220 public void testAnalyzeTgz() throws Exception { +221 ArchiveAnalyzer instance = new ArchiveAnalyzer(); +222 try { +223 instance.initialize(); +224 +225 File file = new File(this.getClass().getClassLoader().getResource("file.tgz").getPath()); +226 Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, false); +227 Engine engine = new Engine(); +228 +229 int initial_size = engine.getDependencies().size(); +230 engine.scan(file); +231 engine.analyzeDependencies(); +232 int ending_size = engine.getDependencies().size(); +233 +234 assertTrue(initial_size < ending_size); +235 +236 } finally { +237 instance.close(); +238 } +239 } +240 +241 /** +242 * Test of analyze method, of class ArchiveAnalyzer. +243 */ +244 @Test +245 public void testAnalyze_badZip() throws Exception { +246 ArchiveAnalyzer instance = new ArchiveAnalyzer(); +247 try { +248 instance.initialize(); +249 +250 File file = new File(this.getClass().getClassLoader().getResource("test.zip").getPath()); +251 Dependency dependency = new Dependency(file); +252 Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, false); +253 Engine engine = new Engine(); +254 int initial_size = engine.getDependencies().size(); +255 // boolean failed = false; +256 // try { +257 instance.analyze(dependency, engine); +258 // } catch (java.lang.UnsupportedClassVersionError ex) { +259 // failed = true; +260 // } +261 // assertTrue(failed); +262 int ending_size = engine.getDependencies().size(); +263 assertEquals(initial_size, ending_size); +264 } finally { +265 instance.close(); +266 } +267 } +268 }

    diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-frame.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-frame.html index 9bbd90458..f072d79c6 100644 --- a/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-frame.html +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.analyzer + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.analyzer diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-summary.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-summary.html index 26db5ab87..65aeee09f 100644 --- a/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-summary.html +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.analyzer + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.analyzer diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/package-frame.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/package-frame.html index 86ae95260..ff8225fa2 100644 --- a/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/package-frame.html +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.concurrency + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.concurrency diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/package-summary.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/package-summary.html index 9c800dbe7..24d5a9e3b 100644 --- a/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/package-summary.html +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/concurrency/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.concurrency + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.concurrency diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-frame.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-frame.html index a9ea3abe5..1b5bd54d1 100644 --- a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-frame.html +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.data.cpe + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.data.cpe diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-summary.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-summary.html index 07097633f..2e073ecbf 100644 --- a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-summary.html +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.data.cpe + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.data.cpe diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-frame.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-frame.html index 5ab08787d..fdd35f112 100644 --- a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-frame.html +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.data.cwe + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.data.cwe diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-summary.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-summary.html index 907163ace..b6bf72b3c 100644 --- a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-summary.html +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.data.cwe + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.data.cwe diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-frame.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-frame.html index 36122c3c4..0b8e51e6b 100644 --- a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-frame.html +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.data.lucene + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.data.lucene diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-summary.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-summary.html index dce975417..088c203b5 100644 --- a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-summary.html +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.data.lucene + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.data.lucene diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-frame.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-frame.html index ece4def7d..e1a2be449 100644 --- a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-frame.html +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.data.nvdcve + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.data.nvdcve diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-summary.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-summary.html index 97d4ae5f5..2d2f64915 100644 --- a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-summary.html +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.data.nvdcve + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.data.nvdcve diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/package-frame.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/package-frame.html index 0b8e57b87..02172aab6 100644 --- a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/package-frame.html +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.data.update + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.data.update diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/package-summary.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/package-summary.html index f51e1460c..0c8def890 100644 --- a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/package-summary.html +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/update/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.data.update + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.data.update diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-frame.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-frame.html index eb606cf50..d679122cb 100644 --- a/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-frame.html +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.dependency + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.dependency diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-summary.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-summary.html index 747ce1c18..31d9871c8 100644 --- a/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-summary.html +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.dependency + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.dependency diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/package-frame.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/package-frame.html index f52dfc644..55306ce2a 100644 --- a/dependency-check-core/xref-test/org/owasp/dependencycheck/package-frame.html +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/package-summary.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/package-summary.html index 00ba36d09..a05b6887b 100644 --- a/dependency-check-core/xref-test/org/owasp/dependencycheck/package-summary.html +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-frame.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-frame.html index aa81e3774..3506f8b82 100644 --- a/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-frame.html +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.reporting + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.reporting diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-summary.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-summary.html index 1c50ed122..a30757e7d 100644 --- a/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-summary.html +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.reporting + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.reporting diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-frame.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-frame.html index 8798ff08f..e61dab4d6 100644 --- a/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-frame.html +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.utils + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.utils diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-summary.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-summary.html index bd35fd98b..2097ff62f 100644 --- a/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-summary.html +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.utils + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.utils diff --git a/dependency-check-core/xref-test/overview-frame.html b/dependency-check-core/xref-test/overview-frame.html index 78279fb4e..83663a412 100644 --- a/dependency-check-core/xref-test/overview-frame.html +++ b/dependency-check-core/xref-test/overview-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference + Dependency-Check Core 1.0.5 Reference diff --git a/dependency-check-core/xref-test/overview-summary.html b/dependency-check-core/xref-test/overview-summary.html index 673ab6c78..c65e789fc 100644 --- a/dependency-check-core/xref-test/overview-summary.html +++ b/dependency-check-core/xref-test/overview-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference + Dependency-Check Core 1.0.5 Reference @@ -24,7 +24,7 @@ -

    Dependency-Check Core 1.0.4 Reference

    +

    Dependency-Check Core 1.0.5 Reference

    diff --git a/dependency-check-core/xref/allclasses-frame.html b/dependency-check-core/xref/allclasses-frame.html index ed35a5330..3d793ed95 100644 --- a/dependency-check-core/xref/allclasses-frame.html +++ b/dependency-check-core/xref/allclasses-frame.html @@ -49,6 +49,9 @@
  • ArchiveAnalyzer +
  • +
  • + ArchiveExtractionException
  • BaseIndex @@ -292,6 +295,9 @@
  • Modules +
  • +
  • + NoDataException
  • NonClosingStream diff --git a/dependency-check-core/xref/index.html b/dependency-check-core/xref/index.html index 111f96d90..4d9435a62 100644 --- a/dependency-check-core/xref/index.html +++ b/dependency-check-core/xref/index.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference + Dependency-Check Core 1.0.5 Reference diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/Engine.html b/dependency-check-core/xref/org/owasp/dependencycheck/Engine.html index a26a44a49..c0e2e6c7b 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/Engine.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/Engine.html @@ -30,383 +30,429 @@ 20 21 import java.util.EnumMap; 22 import java.io.File; -23 import java.util.ArrayList; -24 import java.util.HashSet; -25 import java.util.Iterator; -26 import java.util.List; -27 import java.util.Set; -28 import java.util.logging.Level; -29 import java.util.logging.Logger; -30 import org.owasp.dependencycheck.analyzer.AnalysisException; -31 import org.owasp.dependencycheck.analyzer.AnalysisPhase; -32 import org.owasp.dependencycheck.analyzer.Analyzer; -33 import org.owasp.dependencycheck.analyzer.AnalyzerService; -34 import org.owasp.dependencycheck.data.CachedWebDataSource; -35 import org.owasp.dependencycheck.data.UpdateException; -36 import org.owasp.dependencycheck.data.UpdateService; -37 import org.owasp.dependencycheck.dependency.Dependency; -38 import org.owasp.dependencycheck.utils.FileUtils; -39 import org.owasp.dependencycheck.utils.InvalidSettingException; -40 import org.owasp.dependencycheck.utils.Settings; -41 -42 /** -43 * Scans files, directories, etc. for Dependencies. Analyzers are loaded and -44 * used to process the files found by the scan, if a file is encountered and an -45 * Analyzer is associated with the file type then the file is turned into a -46 * dependency. -47 * -48 * @author Jeremy Long (jeremy.long@owasp.org) -49 */ -50 public class Engine { -51 -52 /** -53 * The list of dependencies. -54 */ -55 private final List<Dependency> dependencies = new ArrayList<Dependency>(); -56 /** -57 * A Map of analyzers grouped by Analysis phase. -58 */ -59 private final EnumMap<AnalysisPhase, List<Analyzer>> analyzers = -60 new EnumMap<AnalysisPhase, List<Analyzer>>(AnalysisPhase.class); -61 /** -62 * A set of extensions supported by the analyzers. -63 */ -64 private final Set<String> extensions = new HashSet<String>(); -65 -66 /** -67 * Creates a new Engine. -68 */ -69 public Engine() { -70 boolean autoUpdate = true; -71 try { -72 autoUpdate = Settings.getBoolean(Settings.KEYS.AUTO_UPDATE); -73 } catch (InvalidSettingException ex) { -74 Logger.getLogger(Engine.class.getName()).log(Level.FINE, "Invalid setting for auto-update; using true."); -75 } -76 if (autoUpdate) { -77 doUpdates(); +23 import java.io.IOException; +24 import java.util.ArrayList; +25 import java.util.HashSet; +26 import java.util.Iterator; +27 import java.util.List; +28 import java.util.Set; +29 import java.util.logging.Level; +30 import java.util.logging.Logger; +31 import org.owasp.dependencycheck.analyzer.AnalysisException; +32 import org.owasp.dependencycheck.analyzer.AnalysisPhase; +33 import org.owasp.dependencycheck.analyzer.Analyzer; +34 import org.owasp.dependencycheck.analyzer.AnalyzerService; +35 import org.owasp.dependencycheck.data.CachedWebDataSource; +36 import org.owasp.dependencycheck.data.NoDataException; +37 import org.owasp.dependencycheck.data.UpdateException; +38 import org.owasp.dependencycheck.data.UpdateService; +39 import org.owasp.dependencycheck.data.cpe.CpeIndexReader; +40 import org.owasp.dependencycheck.dependency.Dependency; +41 import org.owasp.dependencycheck.utils.FileUtils; +42 import org.owasp.dependencycheck.utils.InvalidSettingException; +43 import org.owasp.dependencycheck.utils.Settings; +44 +45 /** +46 * Scans files, directories, etc. for Dependencies. Analyzers are loaded and +47 * used to process the files found by the scan, if a file is encountered and an +48 * Analyzer is associated with the file type then the file is turned into a +49 * dependency. +50 * +51 * @author Jeremy Long (jeremy.long@owasp.org) +52 */ +53 public class Engine { +54 +55 /** +56 * The list of dependencies. +57 */ +58 private final List<Dependency> dependencies = new ArrayList<Dependency>(); +59 /** +60 * A Map of analyzers grouped by Analysis phase. +61 */ +62 private final EnumMap<AnalysisPhase, List<Analyzer>> analyzers = +63 new EnumMap<AnalysisPhase, List<Analyzer>>(AnalysisPhase.class); +64 /** +65 * A set of extensions supported by the analyzers. +66 */ +67 private final Set<String> extensions = new HashSet<String>(); +68 +69 /** +70 * Creates a new Engine. +71 */ +72 public Engine() { +73 boolean autoUpdate = true; +74 try { +75 autoUpdate = Settings.getBoolean(Settings.KEYS.AUTO_UPDATE); +76 } catch (InvalidSettingException ex) { +77 Logger.getLogger(Engine.class.getName()).log(Level.FINE, "Invalid setting for auto-update; using true."); 78 } -79 loadAnalyzers(); -80 } -81 -82 /** -83 * Creates a new Engine. -84 * -85 * @param autoUpdate indicates whether or not data should be updated from -86 * the Internet -87 * @deprecated This function should no longer be used; the autoupdate flag -88 * should be set using: -89 * <code>Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, value);</code> -90 */ -91 @Deprecated -92 public Engine(boolean autoUpdate) { -93 if (autoUpdate) { -94 doUpdates(); -95 } -96 loadAnalyzers(); -97 } -98 -99 /** -100 * Loads the analyzers specified in the configuration file (or system -101 * properties). -102 */ -103 private void loadAnalyzers() { -104 -105 for (AnalysisPhase phase : AnalysisPhase.values()) { -106 analyzers.put(phase, new ArrayList<Analyzer>()); -107 } -108 -109 final AnalyzerService service = AnalyzerService.getInstance(); -110 final Iterator<Analyzer> iterator = service.getAnalyzers(); -111 while (iterator.hasNext()) { -112 final Analyzer a = iterator.next(); -113 analyzers.get(a.getAnalysisPhase()).add(a); -114 if (a.getSupportedExtensions() != null) { -115 extensions.addAll(a.getSupportedExtensions()); -116 } -117 } -118 } -119 -120 /** -121 * Get the List of the analyzers for a specific phase of analysis. -122 * -123 * @param phase the phase to get the configured analyzers. -124 * @return the analyzers loaded -125 */ -126 public List<Analyzer> getAnalyzers(AnalysisPhase phase) { -127 return analyzers.get(phase); -128 } -129 -130 /** -131 * Get the dependencies identified. -132 * -133 * @return the dependencies identified -134 */ -135 public List<Dependency> getDependencies() { -136 return dependencies; -137 } -138 -139 /** -140 * Scans an array of files or directories. If a directory is specified, it -141 * will be scanned recursively. Any dependencies identified are added to the -142 * dependency collection. -143 * -144 * @since v0.3.2.5 -145 * -146 * @param paths an array of paths to files or directories to be analyzed. -147 */ -148 public void scan(String[] paths) { -149 for (String path : paths) { -150 final File file = new File(path); -151 scan(file); -152 } -153 } -154 -155 /** -156 * Scans a given file or directory. If a directory is specified, it will be -157 * scanned recursively. Any dependencies identified are added to the -158 * dependency collection. -159 * -160 * @param path the path to a file or directory to be analyzed. -161 */ -162 public void scan(String path) { -163 final File file = new File(path); -164 scan(file); -165 } -166 -167 /** -168 * Scans an array of files or directories. If a directory is specified, it -169 * will be scanned recursively. Any dependencies identified are added to the -170 * dependency collection. -171 * -172 * @since v0.3.2.5 -173 * -174 * @param files an array of paths to files or directories to be analyzed. -175 */ -176 public void scan(File[] files) { -177 for (File file : files) { -178 scan(file); -179 } -180 } -181 -182 /** -183 * Scans a list of files or directories. If a directory is specified, it -184 * will be scanned recursively. Any dependencies identified are added to the -185 * dependency collection. -186 * -187 * @since v0.3.2.5 -188 * -189 * @param files a set of paths to files or directories to be analyzed. -190 */ -191 public void scan(Set<File> files) { -192 for (File file : files) { -193 scan(file); -194 } -195 } -196 -197 /** -198 * Scans a list of files or directories. If a directory is specified, it -199 * will be scanned recursively. Any dependencies identified are added to the -200 * dependency collection. -201 * -202 * @since v0.3.2.5 -203 * -204 * @param files a set of paths to files or directories to be analyzed. -205 */ -206 public void scan(List<File> files) { -207 for (File file : files) { -208 scan(file); -209 } -210 } -211 -212 /** -213 * Scans a given file or directory. If a directory is specified, it will be -214 * scanned recursively. Any dependencies identified are added to the -215 * dependency collection. -216 * -217 * @since v0.3.2.4 -218 * -219 * @param file the path to a file or directory to be analyzed. -220 */ -221 public void scan(File file) { -222 if (file.exists()) { -223 if (file.isDirectory()) { -224 scanDirectory(file); -225 } else { -226 scanFile(file); -227 } -228 } -229 } -230 -231 /** -232 * Recursively scans files and directories. Any dependencies identified are -233 * added to the dependency collection. -234 * -235 * @param dir the directory to scan. -236 */ -237 protected void scanDirectory(File dir) { -238 final File[] files = dir.listFiles(); -239 if (files != null) { -240 for (File f : files) { -241 if (f.isDirectory()) { -242 scanDirectory(f); -243 } else { -244 scanFile(f); -245 } -246 } -247 } -248 } -249 -250 /** -251 * Scans a specified file. If a dependency is identified it is added to the -252 * dependency collection. -253 * -254 * @param file The file to scan. -255 */ -256 protected void scanFile(File file) { -257 if (!file.isFile()) { -258 final String msg = String.format("Path passed to scanFile(File) is not a file: %s. Skipping the file.", file.toString()); -259 Logger.getLogger(Engine.class.getName()).log(Level.FINE, msg); -260 return; -261 } -262 final String fileName = file.getName(); -263 final String extension = FileUtils.getFileExtension(fileName); -264 if (extension != null) { -265 if (extensions.contains(extension)) { -266 final Dependency dependency = new Dependency(file); -267 dependencies.add(dependency); -268 } -269 } else { -270 final String msg = String.format("No file extension found on file '%s'. The file was not analyzed.", -271 file.toString()); -272 Logger.getLogger(Engine.class.getName()).log(Level.FINEST, msg); -273 } -274 } -275 -276 /** -277 * Runs the analyzers against all of the dependencies. -278 */ -279 public void analyzeDependencies() { -280 //phase one initialize -281 for (AnalysisPhase phase : AnalysisPhase.values()) { -282 final List<Analyzer> analyzerList = analyzers.get(phase); -283 for (Analyzer a : analyzerList) { -284 try { -285 final String msg = String.format("Initializing %s", a.getName()); -286 Logger.getLogger(Engine.class.getName()).log(Level.FINE, msg); -287 a.initialize(); -288 } catch (Exception ex) { -289 final String msg = String.format("Exception occurred initializing %s.", a.getName()); -290 Logger.getLogger(Engine.class.getName()).log(Level.SEVERE, msg); -291 Logger.getLogger(Engine.class.getName()).log(Level.INFO, null, ex); -292 try { -293 a.close(); -294 } catch (Exception ex1) { -295 Logger.getLogger(Engine.class.getName()).log(Level.FINEST, null, ex1); -296 } -297 } -298 } -299 } -300 -301 // analysis phases -302 for (AnalysisPhase phase : AnalysisPhase.values()) { -303 final List<Analyzer> analyzerList = analyzers.get(phase); -304 -305 for (Analyzer a : analyzerList) { -306 /* need to create a copy of the collection because some of the -307 * analyzers may modify it. This prevents ConcurrentModificationExceptions. -308 * This is okay for adds/deletes because it happens per analyzer. -309 */ -310 final String msg = String.format("Begin Analyzer '%s'", a.getName()); -311 Logger.getLogger(Engine.class.getName()).log(Level.FINE, msg); -312 final Set<Dependency> dependencySet = new HashSet<Dependency>(); -313 dependencySet.addAll(dependencies); -314 for (Dependency d : dependencySet) { -315 final String msgFile = String.format("Begin Analysis of '%s'", d.getActualFilePath()); -316 Logger.getLogger(Engine.class.getName()).log(Level.FINE, msgFile); -317 if (a.supportsExtension(d.getFileExtension())) { -318 try { -319 a.analyze(d, this); -320 } catch (AnalysisException ex) { -321 d.addAnalysisException(ex); -322 } -323 } -324 } -325 } -326 } -327 -328 //close/cleanup -329 for (AnalysisPhase phase : AnalysisPhase.values()) { -330 final List<Analyzer> analyzerList = analyzers.get(phase); -331 for (Analyzer a : analyzerList) { -332 final String msg = String.format("Closing Analyzer '%s'", a.getName()); -333 Logger.getLogger(Engine.class.getName()).log(Level.FINE, msg); -334 try { -335 a.close(); -336 } catch (Exception ex) { -337 Logger.getLogger(Engine.class.getName()).log(Level.FINEST, null, ex); -338 } -339 } -340 } -341 } -342 -343 /** -344 * Cycles through the cached web data sources and calls update on all of -345 * them. -346 */ -347 private void doUpdates() { -348 final UpdateService service = UpdateService.getInstance(); -349 final Iterator<CachedWebDataSource> iterator = service.getDataSources(); -350 while (iterator.hasNext()) { -351 final CachedWebDataSource source = iterator.next(); -352 try { -353 source.update(); -354 } catch (UpdateException ex) { -355 Logger.getLogger(Engine.class.getName()).log(Level.WARNING, -356 "Unable to update Cached Web DataSource, using local data instead. Results may not include recent vulnerabilities."); -357 Logger.getLogger(Engine.class.getName()).log(Level.FINE, -358 String.format("Unable to update details for %s", source.getClass().getName()), ex); -359 } -360 } -361 } -362 -363 /** -364 * Returns a full list of all of the analyzers. This is useful for reporting -365 * which analyzers where used. -366 * -367 * @return a list of Analyzers -368 */ -369 public List<Analyzer> getAnalyzers() { -370 final List<Analyzer> ret = new ArrayList<Analyzer>(); -371 for (AnalysisPhase phase : AnalysisPhase.values()) { -372 final List<Analyzer> analyzerList = analyzers.get(phase); -373 ret.addAll(analyzerList); -374 } -375 return ret; -376 } -377 -378 /** -379 * Checks all analyzers to see if an extension is supported. -380 * -381 * @param ext a file extension -382 * @return true or false depending on whether or not the file extension is -383 * supported -384 */ -385 public boolean supportsExtension(String ext) { -386 if (ext == null) { -387 return false; -388 } -389 for (AnalysisPhase phase : AnalysisPhase.values()) { -390 final List<Analyzer> analyzerList = analyzers.get(phase); -391 for (Analyzer a : analyzerList) { -392 if (a.getSupportedExtensions() != null && a.supportsExtension(ext)) { -393 return true; -394 } -395 } -396 } -397 return false; -398 } -399 } +79 if (autoUpdate) { +80 doUpdates(); +81 } +82 loadAnalyzers(); +83 } +84 +85 /** +86 * Creates a new Engine. +87 * +88 * @param autoUpdate indicates whether or not data should be updated from +89 * the Internet +90 * @deprecated This function should no longer be used; the autoupdate flag +91 * should be set using: +92 * <code>Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, value);</code> +93 */ +94 @Deprecated +95 public Engine(boolean autoUpdate) { +96 if (autoUpdate) { +97 doUpdates(); +98 } +99 loadAnalyzers(); +100 } +101 +102 /** +103 * Loads the analyzers specified in the configuration file (or system +104 * properties). +105 */ +106 private void loadAnalyzers() { +107 +108 for (AnalysisPhase phase : AnalysisPhase.values()) { +109 analyzers.put(phase, new ArrayList<Analyzer>()); +110 } +111 +112 final AnalyzerService service = AnalyzerService.getInstance(); +113 final Iterator<Analyzer> iterator = service.getAnalyzers(); +114 while (iterator.hasNext()) { +115 final Analyzer a = iterator.next(); +116 analyzers.get(a.getAnalysisPhase()).add(a); +117 if (a.getSupportedExtensions() != null) { +118 extensions.addAll(a.getSupportedExtensions()); +119 } +120 } +121 } +122 +123 /** +124 * Get the List of the analyzers for a specific phase of analysis. +125 * +126 * @param phase the phase to get the configured analyzers. +127 * @return the analyzers loaded +128 */ +129 public List<Analyzer> getAnalyzers(AnalysisPhase phase) { +130 return analyzers.get(phase); +131 } +132 +133 /** +134 * Get the dependencies identified. +135 * +136 * @return the dependencies identified +137 */ +138 public List<Dependency> getDependencies() { +139 return dependencies; +140 } +141 +142 /** +143 * Scans an array of files or directories. If a directory is specified, it +144 * will be scanned recursively. Any dependencies identified are added to the +145 * dependency collection. +146 * +147 * @since v0.3.2.5 +148 * +149 * @param paths an array of paths to files or directories to be analyzed. +150 */ +151 public void scan(String[] paths) { +152 for (String path : paths) { +153 final File file = new File(path); +154 scan(file); +155 } +156 } +157 +158 /** +159 * Scans a given file or directory. If a directory is specified, it will be +160 * scanned recursively. Any dependencies identified are added to the +161 * dependency collection. +162 * +163 * @param path the path to a file or directory to be analyzed. +164 */ +165 public void scan(String path) { +166 final File file = new File(path); +167 scan(file); +168 } +169 +170 /** +171 * Scans an array of files or directories. If a directory is specified, it +172 * will be scanned recursively. Any dependencies identified are added to the +173 * dependency collection. +174 * +175 * @since v0.3.2.5 +176 * +177 * @param files an array of paths to files or directories to be analyzed. +178 */ +179 public void scan(File[] files) { +180 for (File file : files) { +181 scan(file); +182 } +183 } +184 +185 /** +186 * Scans a list of files or directories. If a directory is specified, it +187 * will be scanned recursively. Any dependencies identified are added to the +188 * dependency collection. +189 * +190 * @since v0.3.2.5 +191 * +192 * @param files a set of paths to files or directories to be analyzed. +193 */ +194 public void scan(Set<File> files) { +195 for (File file : files) { +196 scan(file); +197 } +198 } +199 +200 /** +201 * Scans a list of files or directories. If a directory is specified, it +202 * will be scanned recursively. Any dependencies identified are added to the +203 * dependency collection. +204 * +205 * @since v0.3.2.5 +206 * +207 * @param files a set of paths to files or directories to be analyzed. +208 */ +209 public void scan(List<File> files) { +210 for (File file : files) { +211 scan(file); +212 } +213 } +214 +215 /** +216 * Scans a given file or directory. If a directory is specified, it will be +217 * scanned recursively. Any dependencies identified are added to the +218 * dependency collection. +219 * +220 * @since v0.3.2.4 +221 * +222 * @param file the path to a file or directory to be analyzed. +223 */ +224 public void scan(File file) { +225 if (file.exists()) { +226 if (file.isDirectory()) { +227 scanDirectory(file); +228 } else { +229 scanFile(file); +230 } +231 } +232 } +233 +234 /** +235 * Recursively scans files and directories. Any dependencies identified are +236 * added to the dependency collection. +237 * +238 * @param dir the directory to scan. +239 */ +240 protected void scanDirectory(File dir) { +241 final File[] files = dir.listFiles(); +242 if (files != null) { +243 for (File f : files) { +244 if (f.isDirectory()) { +245 scanDirectory(f); +246 } else { +247 scanFile(f); +248 } +249 } +250 } +251 } +252 +253 /** +254 * Scans a specified file. If a dependency is identified it is added to the +255 * dependency collection. +256 * +257 * @param file The file to scan. +258 */ +259 protected void scanFile(File file) { +260 if (!file.isFile()) { +261 final String msg = String.format("Path passed to scanFile(File) is not a file: %s. Skipping the file.", file.toString()); +262 Logger.getLogger(Engine.class.getName()).log(Level.FINE, msg); +263 return; +264 } +265 final String fileName = file.getName(); +266 final String extension = FileUtils.getFileExtension(fileName); +267 if (extension != null) { +268 if (extensions.contains(extension)) { +269 final Dependency dependency = new Dependency(file); +270 dependencies.add(dependency); +271 } +272 } else { +273 final String msg = String.format("No file extension found on file '%s'. The file was not analyzed.", +274 file.toString()); +275 Logger.getLogger(Engine.class.getName()).log(Level.FINEST, msg); +276 } +277 } +278 +279 /** +280 * Runs the analyzers against all of the dependencies. +281 */ +282 public void analyzeDependencies() { +283 //need to ensure that data exists +284 try { +285 ensureDataExists(); +286 } catch (NoDataException ex) { +287 final String msg = String.format("%n%n%s%n%nUnable to continue dependency-check analysis.", ex.getMessage()); +288 Logger.getLogger(Engine.class.getName()).log(Level.SEVERE, msg); +289 Logger.getLogger(Engine.class.getName()).log(Level.FINE, null, ex); +290 return; +291 } +292 +293 //phase one initialize +294 for (AnalysisPhase phase : AnalysisPhase.values()) { +295 final List<Analyzer> analyzerList = analyzers.get(phase); +296 for (Analyzer a : analyzerList) { +297 try { +298 final String msg = String.format("Initializing %s", a.getName()); +299 Logger.getLogger(Engine.class.getName()).log(Level.FINE, msg); +300 a.initialize(); +301 } catch (Exception ex) { +302 final String msg = String.format("Exception occurred initializing %s.", a.getName()); +303 Logger.getLogger(Engine.class.getName()).log(Level.SEVERE, msg); +304 Logger.getLogger(Engine.class.getName()).log(Level.INFO, null, ex); +305 try { +306 a.close(); +307 } catch (Exception ex1) { +308 Logger.getLogger(Engine.class.getName()).log(Level.FINEST, null, ex1); +309 } +310 } +311 } +312 } +313 +314 // analysis phases +315 for (AnalysisPhase phase : AnalysisPhase.values()) { +316 final List<Analyzer> analyzerList = analyzers.get(phase); +317 +318 for (Analyzer a : analyzerList) { +319 /* need to create a copy of the collection because some of the +320 * analyzers may modify it. This prevents ConcurrentModificationExceptions. +321 * This is okay for adds/deletes because it happens per analyzer. +322 */ +323 final String msg = String.format("Begin Analyzer '%s'", a.getName()); +324 Logger.getLogger(Engine.class.getName()).log(Level.FINE, msg); +325 final Set<Dependency> dependencySet = new HashSet<Dependency>(); +326 dependencySet.addAll(dependencies); +327 for (Dependency d : dependencySet) { +328 final String msgFile = String.format("Begin Analysis of '%s'", d.getActualFilePath()); +329 Logger.getLogger(Engine.class.getName()).log(Level.FINE, msgFile); +330 if (a.supportsExtension(d.getFileExtension())) { +331 try { +332 a.analyze(d, this); +333 } catch (AnalysisException ex) { +334 d.addAnalysisException(ex); +335 } +336 } +337 } +338 } +339 } +340 +341 //close/cleanup +342 for (AnalysisPhase phase : AnalysisPhase.values()) { +343 final List<Analyzer> analyzerList = analyzers.get(phase); +344 for (Analyzer a : analyzerList) { +345 final String msg = String.format("Closing Analyzer '%s'", a.getName()); +346 Logger.getLogger(Engine.class.getName()).log(Level.FINE, msg); +347 try { +348 a.close(); +349 } catch (Exception ex) { +350 Logger.getLogger(Engine.class.getName()).log(Level.FINEST, null, ex); +351 } +352 } +353 } +354 } +355 +356 /** +357 * Cycles through the cached web data sources and calls update on all of +358 * them. +359 */ +360 private void doUpdates() { +361 final UpdateService service = UpdateService.getInstance(); +362 final Iterator<CachedWebDataSource> iterator = service.getDataSources(); +363 while (iterator.hasNext()) { +364 final CachedWebDataSource source = iterator.next(); +365 try { +366 source.update(); +367 } catch (UpdateException ex) { +368 Logger.getLogger(Engine.class.getName()).log(Level.WARNING, +369 "Unable to update Cached Web DataSource, using local data instead. Results may not include recent vulnerabilities."); +370 Logger.getLogger(Engine.class.getName()).log(Level.FINE, +371 String.format("Unable to update details for %s", source.getClass().getName()), ex); +372 } +373 } +374 } +375 +376 /** +377 * Returns a full list of all of the analyzers. This is useful for reporting +378 * which analyzers where used. +379 * +380 * @return a list of Analyzers +381 */ +382 public List<Analyzer> getAnalyzers() { +383 final List<Analyzer> ret = new ArrayList<Analyzer>(); +384 for (AnalysisPhase phase : AnalysisPhase.values()) { +385 final List<Analyzer> analyzerList = analyzers.get(phase); +386 ret.addAll(analyzerList); +387 } +388 return ret; +389 } +390 +391 /** +392 * Checks all analyzers to see if an extension is supported. +393 * +394 * @param ext a file extension +395 * @return true or false depending on whether or not the file extension is +396 * supported +397 */ +398 public boolean supportsExtension(String ext) { +399 if (ext == null) { +400 return false; +401 } +402 for (AnalysisPhase phase : AnalysisPhase.values()) { +403 final List<Analyzer> analyzerList = analyzers.get(phase); +404 for (Analyzer a : analyzerList) { +405 if (a.getSupportedExtensions() != null && a.supportsExtension(ext)) { +406 return true; +407 } +408 } +409 } +410 return false; +411 } +412 +413 /** +414 * Checks the CPE Index to ensure documents exists. If none exist a +415 * NoDataException is thrown. +416 * +417 * @throws NoDataException thrown if no data exists in the CPE Index +418 */ +419 private void ensureDataExists() throws NoDataException { +420 CpeIndexReader cpe = null; +421 boolean noDataExists = false; +422 try { +423 cpe = new CpeIndexReader(); +424 cpe.open(); +425 if (cpe.numDocs() <= 0) { +426 noDataExists = true; +427 } +428 } catch (IOException ex) { +429 noDataExists = true; +430 } catch (NullPointerException ex) { +431 noDataExists = true; +432 } finally { +433 if (cpe != null) { +434 cpe.close(); +435 } +436 } +437 if (noDataExists) { +438 throw new NoDataException("No data exists in the data store. Please check that you are able to connect " +439 + "to the Internet and re-run dependency-check. If the problem persists determine whether you need " +440 + "to set a proxy url and port.\\n\\nIf you are unable to solve this problem please contact the mailing " +441 + "list for help: dependency-check@googlegroups.com"); +442 +443 } +444 } +445 }
    diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html index 44d7c5ccf..f81ec6b76 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html @@ -42,296 +42,368 @@ 32 import java.util.Set; 33 import java.util.logging.Level; 34 import java.util.logging.Logger; -35 //import java.util.zip.ZipEntry; -36 //import java.util.zip.ZipException; -37 //import java.util.zip.ZipInputStream; -38 import org.apache.commons.compress.archivers.zip.ZipArchiveEntry; -39 import org.apache.commons.compress.archivers.zip.ZipArchiveInputStream; -40 import org.h2.store.fs.FileUtils; -41 import org.owasp.dependencycheck.Engine; -42 import org.owasp.dependencycheck.dependency.Dependency; -43 import org.owasp.dependencycheck.utils.Settings; -44 -45 /** -46 * <p>An analyzer that works on archive files: -47 * <ul> -48 * <li><b>ZIP</b> - if it is determined to be a JAR, WAR or EAR a copy is made -49 * and the copy is given the correct extension so that it will be correctly -50 * analyzed.</li> -51 * <li><b>WAR</b> - the WAR contents are extracted and added as dependencies to -52 * the scan. The displayed path is relative to the WAR.</li> -53 * <li><b>EAR</b> - the WAR contents are extracted and added as dependencies to -54 * the scan. Any WAR files are also processed so that the contained JAR files -55 * are added to the list of dependencies. The displayed path is relative to the -56 * EAR.</li> -57 * </ul></p> -58 * -59 * @author Jeremy Long (jeremy.long@owasp.org) -60 */ -61 public class ArchiveAnalyzer extends AbstractAnalyzer implements Analyzer { -62 -63 /** -64 * The buffer size to use when extracting files from the archive. -65 */ -66 private static final int BUFFER_SIZE = 4096; -67 /** -68 * The count of directories created during analysis. This is used for -69 * creating temporary directories. -70 */ -71 private static int dirCount = 0; -72 /** -73 * The parent directory for the individual directories per archive. -74 */ -75 private File tempFileLocation = null; -76 /** -77 * The max scan depth that the analyzer will recursively extract nested -78 * archives. -79 */ -80 private static final int MAX_SCAN_DEPTH = Settings.getInt("archive.scan.depth", 3); -81 /** -82 * Tracks the current scan/extraction depth for nested archives. -83 */ -84 private int scanDepth = 0; -85 //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer"> +35 import org.apache.commons.compress.archivers.ArchiveEntry; +36 import org.apache.commons.compress.archivers.ArchiveInputStream; +37 import org.apache.commons.compress.archivers.tar.TarArchiveInputStream; +38 import org.apache.commons.compress.archivers.zip.ZipArchiveInputStream; +39 import org.apache.commons.compress.compressors.CompressorInputStream; +40 import org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream; +41 import org.apache.commons.compress.compressors.gzip.GzipUtils; +42 import org.h2.store.fs.FileUtils; +43 import org.owasp.dependencycheck.Engine; +44 import org.owasp.dependencycheck.dependency.Dependency; +45 import org.owasp.dependencycheck.utils.Settings; +46 +47 /** +48 * <p>An analyzer that extracts files from archives and ensures any supported +49 * files contained within the archive are added to the dependency list.</p> +50 * +51 * @author Jeremy Long (jeremy.long@owasp.org) +52 */ +53 public class ArchiveAnalyzer extends AbstractAnalyzer implements Analyzer { +54 +55 /** +56 * The buffer size to use when extracting files from the archive. +57 */ +58 private static final int BUFFER_SIZE = 4096; +59 /** +60 * The count of directories created during analysis. This is used for +61 * creating temporary directories. +62 */ +63 private static int dirCount = 0; +64 /** +65 * The parent directory for the individual directories per archive. +66 */ +67 private File tempFileLocation = null; +68 /** +69 * The max scan depth that the analyzer will recursively extract nested +70 * archives. +71 */ +72 private static final int MAX_SCAN_DEPTH = Settings.getInt("archive.scan.depth", 3); +73 /** +74 * Tracks the current scan/extraction depth for nested archives. +75 */ +76 private int scanDepth = 0; +77 //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer"> +78 /** +79 * The name of the analyzer. +80 */ +81 private static final String ANALYZER_NAME = "Archive Analyzer"; +82 /** +83 * The phase that this analyzer is intended to run in. +84 */ +85 private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.INITIAL; 86 /** -87 * The name of the analyzer. +87 * The set of file extensions supported by this analyzer. 88 */ -89 private static final String ANALYZER_NAME = "Archive Analyzer"; -90 /** -91 * The phase that this analyzer is intended to run in. -92 */ -93 private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.INITIAL; -94 /** -95 * The set of file extensions supported by this analyzer. -96 */ -97 private static final Set<String> EXTENSIONS = newHashSet("zip", "ear", "war"); -98 -99 /** -100 * Returns a list of file EXTENSIONS supported by this analyzer. -101 * -102 * @return a list of file EXTENSIONS supported by this analyzer. -103 */ -104 public Set<String> getSupportedExtensions() { -105 return EXTENSIONS; -106 } -107 -108 /** -109 * Returns the name of the analyzer. -110 * -111 * @return the name of the analyzer. -112 */ -113 public String getName() { -114 return ANALYZER_NAME; -115 } -116 -117 /** -118 * Returns whether or not this analyzer can process the given extension. -119 * -120 * @param extension the file extension to test for support. -121 * @return whether or not the specified file extension is supported by this -122 * analyzer. -123 */ -124 public boolean supportsExtension(String extension) { -125 return EXTENSIONS.contains(extension); -126 } -127 -128 /** -129 * Returns the phase that the analyzer is intended to run in. -130 * -131 * @return the phase that the analyzer is intended to run in. -132 */ -133 public AnalysisPhase getAnalysisPhase() { -134 return ANALYSIS_PHASE; -135 } -136 //</editor-fold> -137 -138 /** -139 * The initialize method does nothing for this Analyzer. -140 * -141 * @throws Exception is thrown if there is an exception deleting or creating -142 * temporary files -143 */ -144 @Override -145 public void initialize() throws Exception { -146 final File baseDir = Settings.getTempDirectory(); -147 if (!baseDir.exists()) { -148 if (!baseDir.mkdirs()) { -149 final String msg = String.format("Unable to make a temporary folder '%s'", baseDir.getPath()); -150 throw new AnalysisException(msg); -151 } -152 } -153 tempFileLocation = File.createTempFile("check", "tmp", baseDir); -154 if (!tempFileLocation.delete()) { -155 throw new AnalysisException("Unable to delete temporary file '" + tempFileLocation.getAbsolutePath() + "'."); -156 } -157 if (!tempFileLocation.mkdirs()) { -158 throw new AnalysisException("Unable to create directory '" + tempFileLocation.getAbsolutePath() + "'."); -159 } -160 } -161 -162 /** -163 * The close method does nothing for this Analyzer. -164 * -165 * @throws Exception thrown if there is an exception deleting temporary -166 * files -167 */ -168 @Override -169 public void close() throws Exception { -170 if (tempFileLocation != null && tempFileLocation.exists()) { -171 FileUtils.deleteRecursive(tempFileLocation.getAbsolutePath(), true); -172 } -173 } -174 -175 /** -176 * Analyzes a given dependency. If the dependency is an archive, such as a -177 * WAR or EAR, the contents are extracted, scanned, and added to the list of -178 * dependencies within the engine. -179 * -180 * @param dependency the dependency to analyze -181 * @param engine the engine scanning -182 * @throws AnalysisException thrown if there is an analysis exception -183 */ -184 @Override -185 public void analyze(Dependency dependency, Engine engine) throws AnalysisException { -186 final File f = new File(dependency.getActualFilePath()); -187 final File tmpDir = getNextTempDirectory(); -188 extractFiles(f, tmpDir, engine); -189 -190 //make a copy -191 final List<Dependency> dependencies = new ArrayList<Dependency>(engine.getDependencies()); -192 engine.scan(tmpDir); -193 final List<Dependency> newDependencies = engine.getDependencies(); -194 if (dependencies.size() != newDependencies.size()) { -195 //get the new dependencies -196 final Set<Dependency> dependencySet = new HashSet<Dependency>(); -197 dependencySet.addAll(newDependencies); -198 dependencySet.removeAll(dependencies); -199 -200 for (Dependency d : dependencySet) { -201 //fix the dependency's display name and path -202 final String displayPath = String.format("%s%s", -203 dependency.getFilePath(), -204 d.getActualFilePath().substring(tmpDir.getAbsolutePath().length())); -205 final String displayName = String.format("%s%s%s", -206 dependency.getFileName(), -207 File.separator, -208 d.getFileName()); -209 d.setFilePath(displayPath); -210 d.setFileName(displayName); -211 -212 //TODO - can we get more evidence from the parent? EAR contains module name, etc. -213 -214 //analyze the dependency (i.e. extract files) if it is a supported type. -215 if (this.supportsExtension(d.getFileExtension()) && scanDepth < MAX_SCAN_DEPTH) { -216 scanDepth += 1; -217 analyze(d, engine); -218 scanDepth -= 1; -219 } -220 } -221 } -222 Collections.sort(engine.getDependencies()); -223 } -224 -225 /** -226 * Retrieves the next temporary directory to extract an archive too. -227 * -228 * @return a directory -229 * @throws AnalysisException thrown if unable to create temporary directory -230 */ -231 private File getNextTempDirectory() throws AnalysisException { -232 dirCount += 1; -233 final File directory = new File(tempFileLocation, String.valueOf(dirCount)); -234 if (!directory.mkdirs()) { -235 throw new AnalysisException("Unable to create temp directory '" + directory.getAbsolutePath() + "'."); -236 } -237 return directory; -238 } -239 -240 /** -241 * Extracts the contents of an archive into the specified directory. -242 * -243 * @param archive an archive file such as a WAR or EAR -244 * @param extractTo a directory to extract the contents to -245 * @param engine the scanning engine -246 * @throws AnalysisException thrown if the archive is not found -247 */ -248 private void extractFiles(File archive, File extractTo, Engine engine) throws AnalysisException { -249 if (archive == null || extractTo == null) { -250 return; -251 } -252 -253 FileInputStream fis = null; -254 //ZipInputStream zis = null; -255 ZipArchiveInputStream zis = null; -256 -257 try { -258 fis = new FileInputStream(archive); -259 } catch (FileNotFoundException ex) { -260 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.INFO, null, ex); -261 throw new AnalysisException("Archive file was not found.", ex); -262 } -263 zis = new ZipArchiveInputStream(new BufferedInputStream(fis)); -264 ZipArchiveEntry entry; -265 -266 try { -267 while ((entry = zis.getNextZipEntry()) != null) { -268 if (entry.isDirectory()) { -269 final File d = new File(extractTo, entry.getName()); -270 if (!d.mkdirs()) { -271 throw new AnalysisException("Unable to create '" + d.getAbsolutePath() + "'."); -272 } -273 } else { -274 final File file = new File(extractTo, entry.getName()); -275 final String ext = org.owasp.dependencycheck.utils.FileUtils.getFileExtension(file.getName()); -276 if (engine.supportsExtension(ext)) { -277 BufferedOutputStream bos = null; -278 FileOutputStream fos; -279 try { -280 fos = new FileOutputStream(file); -281 bos = new BufferedOutputStream(fos, BUFFER_SIZE); -282 int count; -283 final byte data[] = new byte[BUFFER_SIZE]; -284 while ((count = zis.read(data, 0, BUFFER_SIZE)) != -1) { -285 bos.write(data, 0, count); -286 } -287 bos.flush(); -288 } catch (FileNotFoundException ex) { -289 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINE, null, ex); -290 throw new AnalysisException("Unable to find file '" + file.getName() + "'.", ex); -291 } catch (IOException ex) { -292 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINE, null, ex); -293 throw new AnalysisException("IO Exception while parsing file '" + file.getName() + "'.", ex); -294 } finally { -295 if (bos != null) { -296 try { -297 bos.close(); -298 } catch (IOException ex) { -299 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINEST, null, ex); -300 } -301 } -302 } -303 } -304 } -305 } -306 } catch (IOException ex) { -307 final String msg = String.format("Exception reading archive '%s'.", archive.getName()); -308 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.WARNING, msg); -309 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINE, null, ex); -310 throw new AnalysisException(msg, ex); -311 } catch (Throwable ex) { -312 final String msg = String.format("Exception reading archive '%s'.", archive.getName()); -313 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.WARNING, msg); -314 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.WARNING, null, ex); -315 throw new AnalysisException(msg, ex); -316 } finally { -317 try { -318 zis.close(); -319 } catch (IOException ex) { -320 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINEST, null, ex); -321 } -322 } -323 } -324 } +89 private static final Set<String> EXTENSIONS = newHashSet("zip", "ear", "war", "tar", "gz", "tgz"); +90 +91 /** +92 * Returns a list of file EXTENSIONS supported by this analyzer. +93 * +94 * @return a list of file EXTENSIONS supported by this analyzer. +95 */ +96 public Set<String> getSupportedExtensions() { +97 return EXTENSIONS; +98 } +99 +100 /** +101 * Returns the name of the analyzer. +102 * +103 * @return the name of the analyzer. +104 */ +105 public String getName() { +106 return ANALYZER_NAME; +107 } +108 +109 /** +110 * Returns whether or not this analyzer can process the given extension. +111 * +112 * @param extension the file extension to test for support. +113 * @return whether or not the specified file extension is supported by this +114 * analyzer. +115 */ +116 public boolean supportsExtension(String extension) { +117 return EXTENSIONS.contains(extension); +118 } +119 +120 /** +121 * Returns the phase that the analyzer is intended to run in. +122 * +123 * @return the phase that the analyzer is intended to run in. +124 */ +125 public AnalysisPhase getAnalysisPhase() { +126 return ANALYSIS_PHASE; +127 } +128 //</editor-fold> +129 +130 /** +131 * The initialize method does nothing for this Analyzer. +132 * +133 * @throws Exception is thrown if there is an exception deleting or creating +134 * temporary files +135 */ +136 @Override +137 public void initialize() throws Exception { +138 final File baseDir = Settings.getTempDirectory(); +139 if (!baseDir.exists()) { +140 if (!baseDir.mkdirs()) { +141 final String msg = String.format("Unable to make a temporary folder '%s'", baseDir.getPath()); +142 throw new AnalysisException(msg); +143 } +144 } +145 tempFileLocation = File.createTempFile("check", "tmp", baseDir); +146 if (!tempFileLocation.delete()) { +147 final String msg = String.format("Unable to delete temporary file '%s'.", tempFileLocation.getAbsolutePath()); +148 throw new AnalysisException(msg); +149 } +150 if (!tempFileLocation.mkdirs()) { +151 final String msg = String.format("Unable to create directory '%s'.", tempFileLocation.getAbsolutePath()); +152 throw new AnalysisException(msg); +153 } +154 } +155 +156 /** +157 * The close method does nothing for this Analyzer. +158 * +159 * @throws Exception thrown if there is an exception deleting temporary +160 * files +161 */ +162 @Override +163 public void close() throws Exception { +164 if (tempFileLocation != null && tempFileLocation.exists()) { +165 FileUtils.deleteRecursive(tempFileLocation.getAbsolutePath(), true); +166 } +167 } +168 +169 /** +170 * Analyzes a given dependency. If the dependency is an archive, such as a +171 * WAR or EAR, the contents are extracted, scanned, and added to the list of +172 * dependencies within the engine. +173 * +174 * @param dependency the dependency to analyze +175 * @param engine the engine scanning +176 * @throws AnalysisException thrown if there is an analysis exception +177 */ +178 @Override +179 public void analyze(Dependency dependency, Engine engine) throws AnalysisException { +180 final File f = new File(dependency.getActualFilePath()); +181 final File tmpDir = getNextTempDirectory(); +182 extractFiles(f, tmpDir, engine); +183 +184 //make a copy +185 final List<Dependency> dependencies = new ArrayList<Dependency>(engine.getDependencies()); +186 engine.scan(tmpDir); +187 final List<Dependency> newDependencies = engine.getDependencies(); +188 if (dependencies.size() != newDependencies.size()) { +189 //get the new dependencies +190 final Set<Dependency> dependencySet = new HashSet<Dependency>(); +191 dependencySet.addAll(newDependencies); +192 dependencySet.removeAll(dependencies); +193 +194 for (Dependency d : dependencySet) { +195 //fix the dependency's display name and path +196 final String displayPath = String.format("%s%s", +197 dependency.getFilePath(), +198 d.getActualFilePath().substring(tmpDir.getAbsolutePath().length())); +199 final String displayName = String.format("%s%s%s", +200 dependency.getFileName(), +201 File.separator, +202 d.getFileName()); +203 d.setFilePath(displayPath); +204 d.setFileName(displayName); +205 +206 //TODO - can we get more evidence from the parent? EAR contains module name, etc. +207 +208 //analyze the dependency (i.e. extract files) if it is a supported type. +209 if (this.supportsExtension(d.getFileExtension()) && scanDepth < MAX_SCAN_DEPTH) { +210 scanDepth += 1; +211 analyze(d, engine); +212 scanDepth -= 1; +213 } +214 } +215 } +216 Collections.sort(engine.getDependencies()); +217 } +218 +219 /** +220 * Retrieves the next temporary directory to extract an archive too. +221 * +222 * @return a directory +223 * @throws AnalysisException thrown if unable to create temporary directory +224 */ +225 private File getNextTempDirectory() throws AnalysisException { +226 dirCount += 1; +227 final File directory = new File(tempFileLocation, String.valueOf(dirCount)); +228 //getting an exception for some directories not being able to be created; might be because the directory already exists? +229 if (directory.exists()) { +230 return getNextTempDirectory(); +231 } +232 if (!directory.mkdirs()) { +233 final String msg = String.format("Unable to create temp directory '%s'.", directory.getAbsolutePath()); +234 throw new AnalysisException(msg); +235 } +236 return directory; +237 } +238 +239 /** +240 * Extracts the contents of an archive into the specified directory. +241 * +242 * @param archive an archive file such as a WAR or EAR +243 * @param destination a directory to extract the contents to +244 * @param engine the scanning engine +245 * @throws AnalysisException thrown if the archive is not found +246 */ +247 private void extractFiles(File archive, File destination, Engine engine) throws AnalysisException { +248 if (archive == null || destination == null) { +249 return; +250 } +251 +252 FileInputStream fis = null; +253 try { +254 fis = new FileInputStream(archive); +255 } catch (FileNotFoundException ex) { +256 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.INFO, null, ex); +257 throw new AnalysisException("Archive file was not found.", ex); +258 } +259 final String archiveExt = org.owasp.dependencycheck.utils.FileUtils.getFileExtension(archive.getName()).toLowerCase(); +260 try { +261 if ("zip".equals(archiveExt) || "war".equals(archiveExt) || "ear".equals(archiveExt)) { +262 extractArchive(new ZipArchiveInputStream(new BufferedInputStream(fis)), destination, engine); +263 } else if ("tar".equals(archiveExt)) { +264 extractArchive(new TarArchiveInputStream(new BufferedInputStream(fis)), destination, engine); +265 } else if ("gz".equals(archiveExt) || "tgz".equals(archiveExt)) { +266 final String uncompressedName = GzipUtils.getUncompressedFilename(archive.getName()); +267 final String uncompressedExt = org.owasp.dependencycheck.utils.FileUtils.getFileExtension(uncompressedName).toLowerCase(); +268 if (engine.supportsExtension(uncompressedExt)) { +269 decompressFile(new GzipCompressorInputStream(new BufferedInputStream(fis)), new File(destination, uncompressedName)); +270 } +271 } +272 } catch (ArchiveExtractionException ex) { +273 final String msg = String.format("Exception extracting archive '%s'.", archive.getName()); +274 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.WARNING, msg); +275 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINE, null, ex); +276 } catch (IOException ex) { +277 final String msg = String.format("Exception reading archive '%s'.", archive.getName()); +278 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.WARNING, msg); +279 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINE, null, ex); +280 } finally { +281 try { +282 fis.close(); +283 } catch (IOException ex) { +284 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINEST, null, ex); +285 } +286 } +287 } +288 +289 /** +290 * Extracts files from an archive. +291 * +292 * @param input the archive to extract files from +293 * @param destination the location to write the files too +294 * @param engine the dependency-check engine +295 * @throws ArchiveExtractionException thrown if there is an exception +296 * extracting files from the archive +297 */ +298 private void extractArchive(ArchiveInputStream input, File destination, Engine engine) throws ArchiveExtractionException { +299 ArchiveEntry entry; +300 try { +301 while ((entry = input.getNextEntry()) != null) { +302 if (entry.isDirectory()) { +303 final File d = new File(destination, entry.getName()); +304 if (!d.exists()) { +305 if (!d.mkdirs()) { +306 final String msg = String.format("Unable to create '%s'.", d.getAbsolutePath()); +307 throw new AnalysisException(msg); +308 } +309 } +310 } else { +311 final File file = new File(destination, entry.getName()); +312 final String ext = org.owasp.dependencycheck.utils.FileUtils.getFileExtension(file.getName()); +313 if (engine.supportsExtension(ext)) { +314 BufferedOutputStream bos = null; +315 FileOutputStream fos; +316 try { +317 fos = new FileOutputStream(file); +318 bos = new BufferedOutputStream(fos, BUFFER_SIZE); +319 int count; +320 final byte data[] = new byte[BUFFER_SIZE]; +321 while ((count = input.read(data, 0, BUFFER_SIZE)) != -1) { +322 bos.write(data, 0, count); +323 } +324 bos.flush(); +325 } catch (FileNotFoundException ex) { +326 Logger.getLogger(ArchiveAnalyzer.class +327 .getName()).log(Level.FINE, null, ex); +328 final String msg = String.format("Unable to find file '%s'.", file.getName()); +329 throw new AnalysisException(msg, ex); +330 } catch (IOException ex) { +331 Logger.getLogger(ArchiveAnalyzer.class +332 .getName()).log(Level.FINE, null, ex); +333 final String msg = String.format("IO Exception while parsing file '%s'.", file.getName()); +334 throw new AnalysisException(msg, ex); +335 } finally { +336 if (bos != null) { +337 try { +338 bos.close(); +339 } catch (IOException ex) { +340 Logger.getLogger(ArchiveAnalyzer.class +341 .getName()).log(Level.FINEST, null, ex); +342 } +343 } +344 } +345 } +346 } +347 } +348 } catch (IOException ex) { +349 throw new ArchiveExtractionException(ex); +350 } catch (Throwable ex) { +351 throw new ArchiveExtractionException(ex); +352 } finally { +353 if (input != null) { +354 try { +355 input.close(); +356 } catch (IOException ex) { +357 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINEST, null, ex); +358 } +359 } +360 } +361 } +362 +363 /** +364 * Decompresses a file. +365 * +366 * @param inputStream the compressed file +367 * @param outputFile the location to write the decompressed file +368 * @throws ArchiveExtractionException thrown if there is an exception +369 * decompressing the file +370 */ +371 private void decompressFile(CompressorInputStream inputStream, File outputFile) throws ArchiveExtractionException { +372 FileOutputStream out = null; +373 try { +374 out = new FileOutputStream(outputFile); +375 final byte[] buffer = new byte[BUFFER_SIZE]; +376 int n = 0; +377 while (-1 != (n = inputStream.read(buffer))) { +378 out.write(buffer, 0, n); +379 } +380 } catch (FileNotFoundException ex) { +381 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINE, null, ex); +382 throw new ArchiveExtractionException(ex); +383 } catch (IOException ex) { +384 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINE, null, ex); +385 throw new ArchiveExtractionException(ex); +386 } finally { +387 if (out != null) { +388 try { +389 out.close(); +390 } catch (IOException ex) { +391 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINEST, null, ex); +392 } +393 } +394 } +395 } +396 }
    diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.html b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.html index 08519a7da..b13dfc8d6 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.html @@ -33,309 +33,324 @@ 23 import java.util.Iterator; 24 import java.util.ListIterator; 25 import java.util.Set; -26 import java.util.regex.Matcher; -27 import java.util.regex.Pattern; -28 import org.owasp.dependencycheck.Engine; -29 import org.owasp.dependencycheck.dependency.Dependency; -30 import org.owasp.dependencycheck.utils.DependencyVersion; -31 import org.owasp.dependencycheck.utils.DependencyVersionUtil; -32 -33 /** -34 * <p>This analyzer ensures dependencies that should be grouped together, to -35 * remove excess noise from the report, are grouped. An example would be Spring, -36 * Spring Beans, Spring MVC, etc. If they are all for the same version and have -37 * the same relative path then these should be grouped into a single dependency -38 * under the core/main library.</p> -39 * <p>Note, this grouping only works on dependencies with identified CVE -40 * entries</p> -41 * -42 * @author Jeremy Long (jeremy.long@owasp.org) -43 */ -44 public class DependencyBundlingAnalyzer extends AbstractAnalyzer implements Analyzer { -45 -46 //<editor-fold defaultstate="collapsed" desc="Constants and Member Variables"> -47 /** -48 * A pattern for obtaining the first part of a filename. -49 */ -50 private static final Pattern STARTING_TEXT_PATTERN = Pattern.compile("^[a-zA-Z]*"); -51 /** -52 * a flag indicating if this analyzer has run. This analyzer only runs once. -53 */ -54 private boolean analyzed = false; -55 //</editor-fold> -56 //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer"> -57 /** -58 * The set of file extensions supported by this analyzer. -59 */ -60 private static final Set<String> EXTENSIONS = null; -61 /** -62 * The name of the analyzer. -63 */ -64 private static final String ANALYZER_NAME = "Dependency Bundling Analyzer"; -65 /** -66 * The phase that this analyzer is intended to run in. -67 */ -68 private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.PRE_FINDING_ANALYSIS; -69 -70 /** -71 * Returns a list of file EXTENSIONS supported by this analyzer. -72 * -73 * @return a list of file EXTENSIONS supported by this analyzer. -74 */ -75 public Set<String> getSupportedExtensions() { -76 return EXTENSIONS; -77 } -78 -79 /** -80 * Returns the name of the analyzer. -81 * -82 * @return the name of the analyzer. -83 */ -84 public String getName() { -85 return ANALYZER_NAME; -86 } -87 -88 /** -89 * Returns whether or not this analyzer can process the given extension. -90 * -91 * @param extension the file extension to test for support -92 * @return whether or not the specified file extension is supported by this -93 * analyzer. -94 */ -95 public boolean supportsExtension(String extension) { -96 return true; -97 } -98 -99 /** -100 * Returns the phase that the analyzer is intended to run in. -101 * -102 * @return the phase that the analyzer is intended to run in. -103 */ -104 public AnalysisPhase getAnalysisPhase() { -105 return ANALYSIS_PHASE; -106 } -107 //</editor-fold> -108 -109 /** -110 * Analyzes a set of dependencies. If they have been found to have the same -111 * base path and the same set of identifiers they are likely related. The -112 * related dependencies are bundled into a single reportable item. -113 * -114 * @param ignore this analyzer ignores the dependency being analyzed -115 * @param engine the engine that is scanning the dependencies -116 * @throws AnalysisException is thrown if there is an error reading the JAR -117 * file. -118 */ -119 @Override -120 public void analyze(Dependency ignore, Engine engine) throws AnalysisException { -121 if (!analyzed) { -122 analyzed = true; -123 final Set<Dependency> dependenciesToRemove = new HashSet<Dependency>(); -124 final ListIterator<Dependency> mainIterator = engine.getDependencies().listIterator(); -125 //for (Dependency nextDependency : engine.getDependencies()) { -126 while (mainIterator.hasNext()) { -127 final Dependency dependency = mainIterator.next(); -128 if (mainIterator.hasNext()) { -129 final ListIterator<Dependency> subIterator = engine.getDependencies().listIterator(mainIterator.nextIndex()); -130 while (subIterator.hasNext()) { -131 final Dependency nextDependency = subIterator.next(); -132 -133 if (identifiersMatch(dependency, nextDependency) -134 && hasSameBasePath(dependency, nextDependency) -135 && fileNameMatch(dependency, nextDependency)) { -136 -137 if (isCore(dependency, nextDependency)) { -138 dependency.addRelatedDependency(nextDependency); -139 //move any "related dependencies" to the new "parent" dependency -140 final Iterator<Dependency> i = nextDependency.getRelatedDependencies().iterator(); -141 while (i.hasNext()) { -142 dependency.addRelatedDependency(i.next()); -143 i.remove(); -144 } -145 dependenciesToRemove.add(nextDependency); -146 } else { -147 if (isCore(nextDependency, dependency)) { -148 nextDependency.addRelatedDependency(dependency); -149 //move any "related dependencies" to the new "parent" dependency -150 final Iterator<Dependency> i = dependency.getRelatedDependencies().iterator(); -151 while (i.hasNext()) { -152 nextDependency.addRelatedDependency(i.next()); -153 i.remove(); -154 } -155 dependenciesToRemove.add(dependency); +26 import java.util.logging.Level; +27 import java.util.logging.Logger; +28 import java.util.regex.Matcher; +29 import java.util.regex.Pattern; +30 import org.owasp.dependencycheck.Engine; +31 import org.owasp.dependencycheck.dependency.Dependency; +32 import org.owasp.dependencycheck.utils.DependencyVersion; +33 import org.owasp.dependencycheck.utils.DependencyVersionUtil; +34 import org.owasp.dependencycheck.utils.LogUtils; +35 +36 /** +37 * <p>This analyzer ensures dependencies that should be grouped together, to +38 * remove excess noise from the report, are grouped. An example would be Spring, +39 * Spring Beans, Spring MVC, etc. If they are all for the same version and have +40 * the same relative path then these should be grouped into a single dependency +41 * under the core/main library.</p> +42 * <p>Note, this grouping only works on dependencies with identified CVE +43 * entries</p> +44 * +45 * @author Jeremy Long (jeremy.long@owasp.org) +46 */ +47 public class DependencyBundlingAnalyzer extends AbstractAnalyzer implements Analyzer { +48 +49 //<editor-fold defaultstate="collapsed" desc="Constants and Member Variables"> +50 /** +51 * A pattern for obtaining the first part of a filename. +52 */ +53 private static final Pattern STARTING_TEXT_PATTERN = Pattern.compile("^[a-zA-Z]*"); +54 /** +55 * a flag indicating if this analyzer has run. This analyzer only runs once. +56 */ +57 private boolean analyzed = false; +58 //</editor-fold> +59 //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer"> +60 /** +61 * The set of file extensions supported by this analyzer. +62 */ +63 private static final Set<String> EXTENSIONS = null; +64 /** +65 * The name of the analyzer. +66 */ +67 private static final String ANALYZER_NAME = "Dependency Bundling Analyzer"; +68 /** +69 * The phase that this analyzer is intended to run in. +70 */ +71 private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.PRE_FINDING_ANALYSIS; +72 +73 /** +74 * Returns a list of file EXTENSIONS supported by this analyzer. +75 * +76 * @return a list of file EXTENSIONS supported by this analyzer. +77 */ +78 public Set<String> getSupportedExtensions() { +79 return EXTENSIONS; +80 } +81 +82 /** +83 * Returns the name of the analyzer. +84 * +85 * @return the name of the analyzer. +86 */ +87 public String getName() { +88 return ANALYZER_NAME; +89 } +90 +91 /** +92 * Returns whether or not this analyzer can process the given extension. +93 * +94 * @param extension the file extension to test for support +95 * @return whether or not the specified file extension is supported by this +96 * analyzer. +97 */ +98 public boolean supportsExtension(String extension) { +99 return true; +100 } +101 +102 /** +103 * Returns the phase that the analyzer is intended to run in. +104 * +105 * @return the phase that the analyzer is intended to run in. +106 */ +107 public AnalysisPhase getAnalysisPhase() { +108 return ANALYSIS_PHASE; +109 } +110 //</editor-fold> +111 +112 /** +113 * Analyzes a set of dependencies. If they have been found to have the same +114 * base path and the same set of identifiers they are likely related. The +115 * related dependencies are bundled into a single reportable item. +116 * +117 * @param ignore this analyzer ignores the dependency being analyzed +118 * @param engine the engine that is scanning the dependencies +119 * @throws AnalysisException is thrown if there is an error reading the JAR +120 * file. +121 */ +122 @Override +123 public void analyze(Dependency ignore, Engine engine) throws AnalysisException { +124 if (!analyzed) { +125 analyzed = true; +126 final Set<Dependency> dependenciesToRemove = new HashSet<Dependency>(); +127 final ListIterator<Dependency> mainIterator = engine.getDependencies().listIterator(); +128 //for (Dependency nextDependency : engine.getDependencies()) { +129 while (mainIterator.hasNext()) { +130 final Dependency dependency = mainIterator.next(); +131 if (mainIterator.hasNext()) { +132 final ListIterator<Dependency> subIterator = engine.getDependencies().listIterator(mainIterator.nextIndex()); +133 while (subIterator.hasNext()) { +134 final Dependency nextDependency = subIterator.next(); +135 +136 if (identifiersMatch(dependency, nextDependency) +137 && hasSameBasePath(dependency, nextDependency) +138 && fileNameMatch(dependency, nextDependency)) { +139 +140 if (isCore(dependency, nextDependency)) { +141 dependency.addRelatedDependency(nextDependency); +142 //move any "related dependencies" to the new "parent" dependency +143 final Iterator<Dependency> i = nextDependency.getRelatedDependencies().iterator(); +144 while (i.hasNext()) { +145 dependency.addRelatedDependency(i.next()); +146 i.remove(); +147 } +148 dependenciesToRemove.add(nextDependency); +149 } else { +150 nextDependency.addRelatedDependency(dependency); +151 //move any "related dependencies" to the new "parent" dependency +152 final Iterator<Dependency> i = dependency.getRelatedDependencies().iterator(); +153 while (i.hasNext()) { +154 nextDependency.addRelatedDependency(i.next()); +155 i.remove(); 156 } -157 } -158 } -159 } -160 } -161 } -162 //removing dependencies here as ensuring correctness and avoiding ConcurrentUpdateExceptions -163 // was difficult because of the inner iterator. -164 for (Dependency d : dependenciesToRemove) { -165 engine.getDependencies().remove(d); -166 } -167 } -168 } -169 -170 /** -171 * Attempts to trim a maven repo to a common base path. This is typically -172 * [drive]\[repo_location]\repository\[path1]\[path2]. -173 * -174 * @param path the path to trim -175 * @return a string representing the base path. -176 */ -177 private String getBaseRepoPath(final String path) { -178 int pos = path.indexOf("repository" + File.separator) + 11; -179 if (pos < 0) { -180 return path; -181 } -182 int tmp = path.indexOf(File.separator, pos); -183 if (tmp <= 0) { -184 return path; -185 } -186 if (tmp > 0) { -187 pos = tmp + 1; -188 } -189 tmp = path.indexOf(File.separator, pos); -190 if (tmp > 0) { -191 pos = tmp + 1; -192 } -193 return path.substring(0, pos); -194 } -195 -196 /** -197 * Returns true if the file names (and version if it exists) of the two -198 * dependencies are sufficiently similiar. -199 * -200 * @param dependency1 a dependency2 to compare -201 * @param dependency2 a dependency2 to compare -202 * @return true if the identifiers in the two supplied dependencies are -203 * equal -204 */ -205 private boolean fileNameMatch(Dependency dependency1, Dependency dependency2) { -206 if (dependency1 == null || dependency1.getFileName() == null -207 || dependency2 == null || dependency2.getFileName() == null) { -208 return false; -209 } -210 String fileName1 = dependency1.getFileName(); -211 String fileName2 = dependency2.getFileName(); -212 -213 //update to deal with archive analyzer, the starting name maybe the same -214 // as this is incorrectly looking at the starting path -215 final File one = new File(fileName1); -216 final File two = new File(fileName2); -217 final String oneParent = one.getParent(); -218 final String twoParent = two.getParent(); -219 if (oneParent != null) { -220 if (twoParent != null && oneParent.equals(twoParent)) { -221 fileName1 = one.getName(); -222 fileName2 = two.getName(); -223 } else { -224 return false; -225 } -226 } else if (twoParent != null) { -227 return false; -228 } -229 -230 //version check -231 final DependencyVersion version1 = DependencyVersionUtil.parseVersion(fileName1); -232 final DependencyVersion version2 = DependencyVersionUtil.parseVersion(fileName2); -233 if (version1 != null && version2 != null) { -234 if (!version1.equals(version2)) { -235 return false; -236 } -237 } -238 -239 //filename check -240 final Matcher match1 = STARTING_TEXT_PATTERN.matcher(fileName1); -241 final Matcher match2 = STARTING_TEXT_PATTERN.matcher(fileName2); -242 if (match1.find() && match2.find()) { -243 return match1.group().equals(match2.group()); -244 } -245 -246 return false; -247 } -248 -249 /** -250 * Returns true if the identifiers in the two supplied dependencies are -251 * equal. -252 * -253 * @param dependency1 a dependency2 to compare -254 * @param dependency2 a dependency2 to compare -255 * @return true if the identifiers in the two supplied dependencies are -256 * equal -257 */ -258 private boolean identifiersMatch(Dependency dependency1, Dependency dependency2) { -259 if (dependency1 == null || dependency1.getIdentifiers() == null -260 || dependency2 == null || dependency2.getIdentifiers() == null) { -261 return false; -262 } -263 return dependency1.getIdentifiers().size() > 0 -264 && dependency2.getIdentifiers().equals(dependency1.getIdentifiers()); -265 } -266 -267 /** -268 * Determines if the two dependencies have the same base path. -269 * -270 * @param dependency1 a Dependency object -271 * @param dependency2 a Dependency object -272 * @return true if the base paths of the dependencies are identical -273 */ -274 private boolean hasSameBasePath(Dependency dependency1, Dependency dependency2) { -275 if (dependency1 == null || dependency2 == null) { -276 return false; -277 } -278 final File lFile = new File(dependency1.getFilePath()); -279 String left = lFile.getParent(); -280 final File rFile = new File(dependency2.getFilePath()); -281 String right = rFile.getParent(); -282 if (left == null) { -283 if (right == null) { -284 return true; -285 } -286 return false; -287 } -288 if (left.equalsIgnoreCase(right)) { -289 return true; -290 } -291 if (left.matches(".*[/\\\\]repository[/\\\\].*") && right.matches(".*[/\\\\]repository[/\\\\].*")) { -292 left = getBaseRepoPath(left); -293 right = getBaseRepoPath(right); -294 } -295 return left.equalsIgnoreCase(right); -296 } -297 -298 /** -299 * This is likely a very broken attempt at determining if the 'left' -300 * dependency is the 'core' library in comparison to the 'right' library. -301 * -302 * TODO - consider splitting on /\._-\s/ and checking if all of one side is -303 * fully contained in the other With the exception of the word "core". This -304 * might work even on groups when we don't have a CVE. -305 * -306 * @param left the dependency to test -307 * @param right the dependency to test against -308 * @return a boolean indicating whether or not the left dependency should be -309 * considered the "core" version. -310 */ -311 private boolean isCore(Dependency left, Dependency right) { -312 final String leftName = left.getFileName().toLowerCase(); -313 final String rightName = right.getFileName().toLowerCase(); -314 -315 if (rightName.contains("core") && !leftName.contains("core")) { -316 return false; -317 } else if (!rightName.contains("core") && leftName.contains("core")) { -318 return true; -319 } else { -320 //TODO should we be splitting the name on [-_(.\d)+] and seeing if the -321 // parts are contained in the other side? -322 if (leftName.length() > rightName.length()) { -323 return false; -324 } -325 return true; -326 } -327 } -328 } +157 dependenciesToRemove.add(dependency); +158 } +159 } +160 } +161 } +162 } +163 //removing dependencies here as ensuring correctness and avoiding ConcurrentUpdateExceptions +164 // was difficult because of the inner iterator. +165 for (Dependency d : dependenciesToRemove) { +166 engine.getDependencies().remove(d); +167 } +168 } +169 } +170 +171 /** +172 * Attempts to trim a maven repo to a common base path. This is typically +173 * [drive]\[repo_location]\repository\[path1]\[path2]. +174 * +175 * @param path the path to trim +176 * @return a string representing the base path. +177 */ +178 private String getBaseRepoPath(final String path) { +179 int pos = path.indexOf("repository" + File.separator) + 11; +180 if (pos < 0) { +181 return path; +182 } +183 int tmp = path.indexOf(File.separator, pos); +184 if (tmp <= 0) { +185 return path; +186 } +187 if (tmp > 0) { +188 pos = tmp + 1; +189 } +190 tmp = path.indexOf(File.separator, pos); +191 if (tmp > 0) { +192 pos = tmp + 1; +193 } +194 return path.substring(0, pos); +195 } +196 +197 /** +198 * Returns true if the file names (and version if it exists) of the two +199 * dependencies are sufficiently similiar. +200 * +201 * @param dependency1 a dependency2 to compare +202 * @param dependency2 a dependency2 to compare +203 * @return true if the identifiers in the two supplied dependencies are +204 * equal +205 */ +206 private boolean fileNameMatch(Dependency dependency1, Dependency dependency2) { +207 if (dependency1 == null || dependency1.getFileName() == null +208 || dependency2 == null || dependency2.getFileName() == null) { +209 return false; +210 } +211 String fileName1 = dependency1.getFileName(); +212 String fileName2 = dependency2.getFileName(); +213 +214 //update to deal with archive analyzer, the starting name maybe the same +215 // as this is incorrectly looking at the starting path +216 final File one = new File(fileName1); +217 final File two = new File(fileName2); +218 final String oneParent = one.getParent(); +219 final String twoParent = two.getParent(); +220 if (oneParent != null) { +221 if (twoParent != null && oneParent.equals(twoParent)) { +222 fileName1 = one.getName(); +223 fileName2 = two.getName(); +224 } else { +225 return false; +226 } +227 } else if (twoParent != null) { +228 return false; +229 } +230 +231 //version check +232 final DependencyVersion version1 = DependencyVersionUtil.parseVersion(fileName1); +233 final DependencyVersion version2 = DependencyVersionUtil.parseVersion(fileName2); +234 if (version1 != null && version2 != null) { +235 if (!version1.equals(version2)) { +236 return false; +237 } +238 } +239 +240 //filename check +241 final Matcher match1 = STARTING_TEXT_PATTERN.matcher(fileName1); +242 final Matcher match2 = STARTING_TEXT_PATTERN.matcher(fileName2); +243 if (match1.find() && match2.find()) { +244 return match1.group().equals(match2.group()); +245 } +246 +247 return false; +248 } +249 +250 /** +251 * Returns true if the identifiers in the two supplied dependencies are +252 * equal. +253 * +254 * @param dependency1 a dependency2 to compare +255 * @param dependency2 a dependency2 to compare +256 * @return true if the identifiers in the two supplied dependencies are +257 * equal +258 */ +259 private boolean identifiersMatch(Dependency dependency1, Dependency dependency2) { +260 if (dependency1 == null || dependency1.getIdentifiers() == null +261 || dependency2 == null || dependency2.getIdentifiers() == null) { +262 return false; +263 } +264 final boolean matches = dependency1.getIdentifiers().size() > 0 +265 && dependency2.getIdentifiers().equals(dependency1.getIdentifiers()); +266 if (LogUtils.isVerboseLoggingEnabled()) { +267 final String msg = String.format("IdentifiersMatch=%s (%s, %s)", matches, dependency1.getFileName(), dependency2.getFileName()); +268 Logger.getLogger(DependencyBundlingAnalyzer.class.getName()).log(Level.FINE, msg); +269 } +270 return matches; +271 } +272 +273 /** +274 * Determines if the two dependencies have the same base path. +275 * +276 * @param dependency1 a Dependency object +277 * @param dependency2 a Dependency object +278 * @return true if the base paths of the dependencies are identical +279 */ +280 private boolean hasSameBasePath(Dependency dependency1, Dependency dependency2) { +281 if (dependency1 == null || dependency2 == null) { +282 return false; +283 } +284 final File lFile = new File(dependency1.getFilePath()); +285 String left = lFile.getParent(); +286 final File rFile = new File(dependency2.getFilePath()); +287 String right = rFile.getParent(); +288 if (left == null) { +289 if (right == null) { +290 return true; +291 } +292 return false; +293 } +294 if (left.equalsIgnoreCase(right)) { +295 return true; +296 } +297 if (left.matches(".*[/\\\\]repository[/\\\\].*") && right.matches(".*[/\\\\]repository[/\\\\].*")) { +298 left = getBaseRepoPath(left); +299 right = getBaseRepoPath(right); +300 } +301 return left.equalsIgnoreCase(right); +302 } +303 +304 /** +305 * This is likely a very broken attempt at determining if the 'left' +306 * dependency is the 'core' library in comparison to the 'right' library. +307 * +308 * @param left the dependency to test +309 * @param right the dependency to test against +310 * @return a boolean indicating whether or not the left dependency should be +311 * considered the "core" version. +312 */ +313 private boolean isCore(Dependency left, Dependency right) { +314 final String leftName = left.getFileName().toLowerCase(); +315 final String rightName = right.getFileName().toLowerCase(); +316 final boolean returnVal; +317 if (rightName.contains("core") && !leftName.contains("core")) { +318 returnVal = false; +319 } else if (!rightName.contains("core") && leftName.contains("core")) { +320 returnVal = true; +321 } else { +322 /* +323 * considered splitting the names up and comparing the components, +324 * but decided that the file name length should be sufficient as the +325 * "core" component, if this follows a normal namming protocol should +326 * be shorter: +327 * axis2-saaj-1.4.1.jar +328 * axis2-1.4.1.jar <----- +329 * axis2-kernal-1.4.1.jar +330 */ +331 if (leftName.length() > rightName.length()) { +332 returnVal = false; +333 } else { +334 returnVal = true; +335 } +336 } +337 if (LogUtils.isVerboseLoggingEnabled()) { +338 final String msg = String.format("IsCore=%s (%s, %s)", returnVal, left.getFileName(), right.getFileName()); +339 Logger.getLogger(DependencyBundlingAnalyzer.class.getName()).log(Level.FINE, msg); +340 } +341 return returnVal; +342 } +343 }
    diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.html b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.html index 07ef48e42..879c1e8c9 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.html @@ -119,230 +119,266 @@ 109 public void analyze(Dependency dependency, Engine engine) throws AnalysisException { 110 removeJreEntries(dependency); 111 removeBadMatches(dependency); -112 removeSpuriousCPE(dependency); -113 addFalseNegativeCPEs(dependency); -114 } -115 -116 /** -117 * <p>Intended to remove spurious CPE entries. By spurious we mean -118 * duplicate, less specific CPE entries.</p> -119 * <p>Example:</p> -120 * <code> -121 * cpe:/a:some-vendor:some-product -122 * cpe:/a:some-vendor:some-product:1.5 -123 * cpe:/a:some-vendor:some-product:1.5.2 -124 * </code> -125 * <p>Should be trimmed to:</p> -126 * <code> -127 * cpe:/a:some-vendor:some-product:1.5.2 -128 * </code> -129 * -130 * @param dependency the dependency being analyzed -131 */ -132 private void removeSpuriousCPE(Dependency dependency) { -133 final List<Identifier> ids = new ArrayList<Identifier>(); -134 ids.addAll(dependency.getIdentifiers()); -135 Collections.sort(ids); -136 final ListIterator<Identifier> mainItr = ids.listIterator(); -137 while (mainItr.hasNext()) { -138 final Identifier currentId = mainItr.next(); -139 final VulnerableSoftware currentCpe = parseCpe(currentId.getType(), currentId.getValue()); -140 if (currentCpe == null) { -141 continue; -142 } -143 final ListIterator<Identifier> subItr = ids.listIterator(mainItr.nextIndex()); -144 while (subItr.hasNext()) { -145 final Identifier nextId = subItr.next(); -146 final VulnerableSoftware nextCpe = parseCpe(nextId.getType(), nextId.getValue()); -147 if (nextCpe == null) { -148 continue; -149 } -150 //TODO fix the version problem below -151 if (currentCpe.getVendor().equals(nextCpe.getVendor())) { -152 if (currentCpe.getProduct().equals(nextCpe.getProduct())) { -153 // see if one is contained in the other.. remove the contained one from dependency.getIdentifier -154 final String currentVersion = currentCpe.getVersion(); -155 final String nextVersion = nextCpe.getVersion(); -156 if (currentVersion == null && nextVersion == null) { -157 //how did we get here? -158 Logger.getLogger(FalsePositiveAnalyzer.class -159 .getName()).log(Level.FINE, "currentVersion and nextVersion are both null?"); -160 } else if (currentVersion == null && nextVersion != null) { -161 dependency.getIdentifiers().remove(currentId); -162 } else if (nextVersion == null && currentVersion != null) { -163 dependency.getIdentifiers().remove(nextId); -164 } else if (currentVersion.length() < nextVersion.length()) { -165 if (nextVersion.startsWith(currentVersion) || "-".equals(currentVersion)) { -166 dependency.getIdentifiers().remove(currentId); -167 } -168 } else { -169 if (currentVersion.startsWith(nextVersion) || "-".equals(nextVersion)) { -170 dependency.getIdentifiers().remove(nextId); -171 } -172 } -173 } -174 } -175 } -176 } -177 } -178 /** -179 * Regex to identify core java libraries and a few other commonly -180 * misidentified ones. -181 */ -182 public static final Pattern CORE_JAVA = Pattern.compile("^cpe:/a:(sun|oracle|ibm):(j2[ems]e|" -183 + "java(_platfrom_micro_edition|_runtime_environment|_se|virtual_machine|se_development_kit|fx)?|" -184 + "jdk|jre|jsf|jsse)($|:.*)"); -185 /** -186 * Regex to identify core java library files. This is currently incomplete. -187 */ -188 public static final Pattern CORE_FILES = Pattern.compile("^((alt[-])?rt|jsf[-].*|jsse|jfxrt|jfr|jce|javaws|deploy|charsets)\\.jar$"); -189 -190 /** -191 * Removes any CPE entries for the JDK/JRE unless the filename ends with -192 * rt.jar -193 * -194 * @param dependency the dependency to remove JRE CPEs from -195 */ -196 private void removeJreEntries(Dependency dependency) { -197 final Set<Identifier> identifiers = dependency.getIdentifiers(); -198 final Iterator<Identifier> itr = identifiers.iterator(); -199 while (itr.hasNext()) { -200 final Identifier i = itr.next(); -201 final Matcher coreCPE = CORE_JAVA.matcher(i.getValue()); -202 final Matcher coreFiles = CORE_FILES.matcher(dependency.getFileName()); -203 if (coreCPE.matches() && !coreFiles.matches()) { -204 itr.remove(); -205 } -206 -207 //replacecd with the regex above. -208 // if (("cpe:/a:sun:java".equals(i.getValue()) -209 // || "cpe:/a:oracle:java".equals(i.getValue()) -210 // || "cpe:/a:ibm:java".equals(i.getValue()) -211 // || "cpe:/a:sun:j2se".equals(i.getValue()) -212 // || "cpe:/a:oracle:j2se".equals(i.getValue()) -213 // || i.getValue().startsWith("cpe:/a:sun:java:") -214 // || i.getValue().startsWith("cpe:/a:sun:j2se:") -215 // || i.getValue().startsWith("cpe:/a:sun:java:jre") -216 // || i.getValue().startsWith("cpe:/a:sun:java:jdk") -217 // || i.getValue().startsWith("cpe:/a:sun:java_se") -218 // || i.getValue().startsWith("cpe:/a:oracle:java_se") -219 // || i.getValue().startsWith("cpe:/a:oracle:java:") -220 // || i.getValue().startsWith("cpe:/a:oracle:j2se:") -221 // || i.getValue().startsWith("cpe:/a:oracle:jre") -222 // || i.getValue().startsWith("cpe:/a:oracle:jdk") -223 // || i.getValue().startsWith("cpe:/a:ibm:java:")) -224 // && !dependency.getFileName().toLowerCase().endsWith("rt.jar")) { -225 // itr.remove(); -226 // } -227 } -228 } -229 -230 /** -231 * Parses a CPE string into an IndexEntry. -232 * -233 * @param type the type of identifier -234 * @param value the cpe identifier to parse -235 * @return an VulnerableSoftware object constructed from the identifier -236 */ -237 private VulnerableSoftware parseCpe(String type, String value) { -238 if (!"cpe".equals(type)) { -239 return null; -240 } -241 final VulnerableSoftware cpe = new VulnerableSoftware(); -242 try { -243 cpe.parseName(value); -244 } catch (UnsupportedEncodingException ex) { -245 Logger.getLogger(FalsePositiveAnalyzer.class.getName()).log(Level.FINEST, null, ex); -246 return null; -247 } -248 return cpe; -249 } -250 -251 /** -252 * Removes bad CPE matches for a dependency. Unfortunately, right now these -253 * are hard-coded patches for specific problems identified when testing this -254 * on a LARGE volume of jar files. -255 * -256 * @param dependency the dependency to analyze -257 */ -258 private void removeBadMatches(Dependency dependency) { -259 final Set<Identifier> identifiers = dependency.getIdentifiers(); -260 final Iterator<Identifier> itr = identifiers.iterator(); -261 -262 /* TODO - can we utilize the pom's groupid and artifactId to filter??? most of -263 * these are due to low quality data. Other idea would be to say any CPE -264 * found based on LOW confidence evidence should have a different CPE type? (this -265 * might be a better solution then just removing the URL for "best-guess" matches). -266 */ -267 -268 //Set<Evidence> groupId = dependency.getVendorEvidence().getEvidence("pom", "groupid"); -269 //Set<Evidence> artifactId = dependency.getVendorEvidence().getEvidence("pom", "artifactid"); -270 -271 while (itr.hasNext()) { -272 final Identifier i = itr.next(); -273 //TODO move this startswith expression to a configuration file? -274 if ("cpe".equals(i.getType())) { -275 if ((i.getValue().matches(".*c\\+\\+.*") -276 || i.getValue().startsWith("cpe:/a:jquery:jquery") -277 || i.getValue().startsWith("cpe:/a:prototypejs:prototype") -278 || i.getValue().startsWith("cpe:/a:yahoo:yui") -279 || i.getValue().startsWith("cpe:/a:file:file") -280 || i.getValue().startsWith("cpe:/a:mozilla:mozilla") -281 || i.getValue().startsWith("cpe:/a:cvs:cvs") -282 || i.getValue().startsWith("cpe:/a:ftp:ftp") -283 || i.getValue().startsWith("cpe:/a:ssh:ssh")) -284 && dependency.getFileName().toLowerCase().endsWith(".jar")) { -285 itr.remove(); -286 } else if (i.getValue().startsWith("cpe:/a:apache:maven") -287 && !dependency.getFileName().toLowerCase().matches("maven-core-[\\d\\.]+\\.jar")) { -288 itr.remove(); -289 } -290 } -291 } -292 } -293 -294 /** -295 * There are some known CPE entries, specifically regarding sun and oracle -296 * products due to the acquisition and changes in product names, that based -297 * on given evidence we can add the related CPE entries to ensure a complete -298 * list of CVE entries. +112 removeWrongVersionMatches(dependency); +113 removeSpuriousCPE(dependency); +114 addFalseNegativeCPEs(dependency); +115 } +116 +117 /** +118 * <p>Intended to remove spurious CPE entries. By spurious we mean +119 * duplicate, less specific CPE entries.</p> +120 * <p>Example:</p> +121 * <code> +122 * cpe:/a:some-vendor:some-product +123 * cpe:/a:some-vendor:some-product:1.5 +124 * cpe:/a:some-vendor:some-product:1.5.2 +125 * </code> +126 * <p>Should be trimmed to:</p> +127 * <code> +128 * cpe:/a:some-vendor:some-product:1.5.2 +129 * </code> +130 * +131 * @param dependency the dependency being analyzed +132 */ +133 @SuppressWarnings("null") +134 private void removeSpuriousCPE(Dependency dependency) { +135 final List<Identifier> ids = new ArrayList<Identifier>(); +136 ids.addAll(dependency.getIdentifiers()); +137 Collections.sort(ids); +138 final ListIterator<Identifier> mainItr = ids.listIterator(); +139 while (mainItr.hasNext()) { +140 final Identifier currentId = mainItr.next(); +141 final VulnerableSoftware currentCpe = parseCpe(currentId.getType(), currentId.getValue()); +142 if (currentCpe == null) { +143 continue; +144 } +145 final ListIterator<Identifier> subItr = ids.listIterator(mainItr.nextIndex()); +146 while (subItr.hasNext()) { +147 final Identifier nextId = subItr.next(); +148 final VulnerableSoftware nextCpe = parseCpe(nextId.getType(), nextId.getValue()); +149 if (nextCpe == null) { +150 continue; +151 } +152 //TODO fix the version problem below +153 if (currentCpe.getVendor().equals(nextCpe.getVendor())) { +154 if (currentCpe.getProduct().equals(nextCpe.getProduct())) { +155 // see if one is contained in the other.. remove the contained one from dependency.getIdentifier +156 final String currentVersion = currentCpe.getVersion(); +157 final String nextVersion = nextCpe.getVersion(); +158 if (currentVersion == null && nextVersion == null) { +159 //how did we get here? +160 Logger.getLogger(FalsePositiveAnalyzer.class +161 .getName()).log(Level.FINE, "currentVersion and nextVersion are both null?"); +162 } else if (currentVersion == null && nextVersion != null) { +163 dependency.getIdentifiers().remove(currentId); +164 } else if (nextVersion == null && currentVersion != null) { +165 dependency.getIdentifiers().remove(nextId); +166 } else if (currentVersion.length() < nextVersion.length()) { +167 if (nextVersion.startsWith(currentVersion) || "-".equals(currentVersion)) { +168 dependency.getIdentifiers().remove(currentId); +169 } +170 } else { +171 if (currentVersion.startsWith(nextVersion) || "-".equals(nextVersion)) { +172 dependency.getIdentifiers().remove(nextId); +173 } +174 } +175 } +176 } +177 } +178 } +179 } +180 /** +181 * Regex to identify core java libraries and a few other commonly +182 * misidentified ones. +183 */ +184 public static final Pattern CORE_JAVA = Pattern.compile("^cpe:/a:(sun|oracle|ibm):(j2[ems]e|" +185 + "java(_platfrom_micro_edition|_runtime_environment|_se|virtual_machine|se_development_kit|fx)?|" +186 + "jdk|jre|jsf|jsse)($|:.*)"); +187 /** +188 * Regex to identify core java library files. This is currently incomplete. +189 */ +190 public static final Pattern CORE_FILES = Pattern.compile("^((alt[-])?rt|jsf[-].*|jsse|jfxrt|jfr|jce|javaws|deploy|charsets)\\.jar$"); +191 +192 /** +193 * Removes any CPE entries for the JDK/JRE unless the filename ends with +194 * rt.jar +195 * +196 * @param dependency the dependency to remove JRE CPEs from +197 */ +198 private void removeJreEntries(Dependency dependency) { +199 final Set<Identifier> identifiers = dependency.getIdentifiers(); +200 final Iterator<Identifier> itr = identifiers.iterator(); +201 while (itr.hasNext()) { +202 final Identifier i = itr.next(); +203 final Matcher coreCPE = CORE_JAVA.matcher(i.getValue()); +204 final Matcher coreFiles = CORE_FILES.matcher(dependency.getFileName()); +205 if (coreCPE.matches() && !coreFiles.matches()) { +206 itr.remove(); +207 } +208 +209 //replacecd with the regex above. +210 // if (("cpe:/a:sun:java".equals(i.getValue()) +211 // || "cpe:/a:oracle:java".equals(i.getValue()) +212 // || "cpe:/a:ibm:java".equals(i.getValue()) +213 // || "cpe:/a:sun:j2se".equals(i.getValue()) +214 // || "cpe:/a:oracle:j2se".equals(i.getValue()) +215 // || i.getValue().startsWith("cpe:/a:sun:java:") +216 // || i.getValue().startsWith("cpe:/a:sun:j2se:") +217 // || i.getValue().startsWith("cpe:/a:sun:java:jre") +218 // || i.getValue().startsWith("cpe:/a:sun:java:jdk") +219 // || i.getValue().startsWith("cpe:/a:sun:java_se") +220 // || i.getValue().startsWith("cpe:/a:oracle:java_se") +221 // || i.getValue().startsWith("cpe:/a:oracle:java:") +222 // || i.getValue().startsWith("cpe:/a:oracle:j2se:") +223 // || i.getValue().startsWith("cpe:/a:oracle:jre") +224 // || i.getValue().startsWith("cpe:/a:oracle:jdk") +225 // || i.getValue().startsWith("cpe:/a:ibm:java:")) +226 // && !dependency.getFileName().toLowerCase().endsWith("rt.jar")) { +227 // itr.remove(); +228 // } +229 } +230 } +231 +232 /** +233 * Parses a CPE string into an IndexEntry. +234 * +235 * @param type the type of identifier +236 * @param value the cpe identifier to parse +237 * @return an VulnerableSoftware object constructed from the identifier +238 */ +239 private VulnerableSoftware parseCpe(String type, String value) { +240 if (!"cpe".equals(type)) { +241 return null; +242 } +243 final VulnerableSoftware cpe = new VulnerableSoftware(); +244 try { +245 cpe.parseName(value); +246 } catch (UnsupportedEncodingException ex) { +247 Logger.getLogger(FalsePositiveAnalyzer.class.getName()).log(Level.FINEST, null, ex); +248 return null; +249 } +250 return cpe; +251 } +252 +253 /** +254 * Removes bad CPE matches for a dependency. Unfortunately, right now these +255 * are hard-coded patches for specific problems identified when testing this +256 * on a LARGE volume of jar files. +257 * +258 * @param dependency the dependency to analyze +259 */ +260 private void removeBadMatches(Dependency dependency) { +261 final Set<Identifier> identifiers = dependency.getIdentifiers(); +262 final Iterator<Identifier> itr = identifiers.iterator(); +263 +264 /* TODO - can we utilize the pom's groupid and artifactId to filter??? most of +265 * these are due to low quality data. Other idea would be to say any CPE +266 * found based on LOW confidence evidence should have a different CPE type? (this +267 * might be a better solution then just removing the URL for "best-guess" matches). +268 */ +269 +270 //Set<Evidence> groupId = dependency.getVendorEvidence().getEvidence("pom", "groupid"); +271 //Set<Evidence> artifactId = dependency.getVendorEvidence().getEvidence("pom", "artifactid"); +272 +273 while (itr.hasNext()) { +274 final Identifier i = itr.next(); +275 //TODO move this startswith expression to a configuration file? +276 if ("cpe".equals(i.getType())) { +277 if ((i.getValue().matches(".*c\\+\\+.*") +278 || i.getValue().startsWith("cpe:/a:jquery:jquery") +279 || i.getValue().startsWith("cpe:/a:prototypejs:prototype") +280 || i.getValue().startsWith("cpe:/a:yahoo:yui") +281 || i.getValue().startsWith("cpe:/a:file:file") +282 || i.getValue().startsWith("cpe:/a:mozilla:mozilla") +283 || i.getValue().startsWith("cpe:/a:cvs:cvs") +284 || i.getValue().startsWith("cpe:/a:ftp:ftp") +285 || i.getValue().startsWith("cpe:/a:ssh:ssh")) +286 && dependency.getFileName().toLowerCase().endsWith(".jar")) { +287 itr.remove(); +288 } else if (i.getValue().startsWith("cpe:/a:apache:maven") +289 && !dependency.getFileName().toLowerCase().matches("maven-core-[\\d\\.]+\\.jar")) { +290 itr.remove(); +291 } +292 } +293 } +294 } +295 +296 /** +297 * Removes CPE matches for the wrong version of a dependency. Currently, +298 * this only covers Axis 1 & 2. 299 * -300 * @param dependency the dependency being analyzed +300 * @param dependency the dependency to analyze 301 */ -302 private void addFalseNegativeCPEs(Dependency dependency) { -303 final Iterator<Identifier> itr = dependency.getIdentifiers().iterator(); -304 while (itr.hasNext()) { -305 final Identifier i = itr.next(); -306 if ("cpe".equals(i.getType()) && i.getValue() != null -307 && (i.getValue().startsWith("cpe:/a:oracle:opensso:") -308 || i.getValue().startsWith("cpe:/a:oracle:opensso_enterprise:") -309 || i.getValue().startsWith("cpe:/a:sun:opensso_enterprise:") -310 || i.getValue().startsWith("cpe:/a:sun:opensso:"))) { -311 final String newCpe = String.format("cpe:/a:sun:opensso_enterprise:%s", i.getValue().substring(22)); -312 final String newCpe2 = String.format("cpe:/a:oracle:opensso_enterprise:%s", i.getValue().substring(22)); -313 final String newCpe3 = String.format("cpe:/a:sun:opensso:%s", i.getValue().substring(22)); -314 final String newCpe4 = String.format("cpe:/a:oracle:opensso:%s", i.getValue().substring(22)); -315 try { -316 dependency.addIdentifier("cpe", -317 newCpe, -318 String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(newCpe, "UTF-8"))); -319 dependency.addIdentifier("cpe", -320 newCpe2, -321 String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(newCpe2, "UTF-8"))); -322 dependency.addIdentifier("cpe", -323 newCpe3, -324 String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(newCpe3, "UTF-8"))); -325 dependency.addIdentifier("cpe", -326 newCpe4, -327 String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(newCpe4, "UTF-8"))); -328 } catch (UnsupportedEncodingException ex) { -329 Logger.getLogger(FalsePositiveAnalyzer.class -330 .getName()).log(Level.FINE, null, ex); -331 } -332 } -333 } -334 } -335 } +302 private void removeWrongVersionMatches(Dependency dependency) { +303 final Set<Identifier> identifiers = dependency.getIdentifiers(); +304 final Iterator<Identifier> itr = identifiers.iterator(); +305 +306 final String fileName = dependency.getFileName(); +307 if (fileName != null && fileName.contains("axis2")) { +308 while (itr.hasNext()) { +309 final Identifier i = itr.next(); +310 if ("cpe".equals(i.getType())) { +311 final String cpe = i.getValue(); +312 if (cpe != null && (cpe.startsWith("cpe:/a:apache:axis:") || "cpe:/a:apache:axis".equals(cpe))) { +313 itr.remove(); +314 } +315 } +316 } +317 } else if (fileName != null && fileName.contains("axis")) { +318 while (itr.hasNext()) { +319 final Identifier i = itr.next(); +320 if ("cpe".equals(i.getType())) { +321 final String cpe = i.getValue(); +322 if (cpe != null && (cpe.startsWith("cpe:/a:apache:axis2:") || "cpe:/a:apache:axis2".equals(cpe))) { +323 itr.remove(); +324 } +325 } +326 } +327 } +328 } +329 +330 /** +331 * There are some known CPE entries, specifically regarding sun and oracle +332 * products due to the acquisition and changes in product names, that based +333 * on given evidence we can add the related CPE entries to ensure a complete +334 * list of CVE entries. +335 * +336 * @param dependency the dependency being analyzed +337 */ +338 private void addFalseNegativeCPEs(Dependency dependency) { +339 final Iterator<Identifier> itr = dependency.getIdentifiers().iterator(); +340 while (itr.hasNext()) { +341 final Identifier i = itr.next(); +342 if ("cpe".equals(i.getType()) && i.getValue() != null +343 && (i.getValue().startsWith("cpe:/a:oracle:opensso:") +344 || i.getValue().startsWith("cpe:/a:oracle:opensso_enterprise:") +345 || i.getValue().startsWith("cpe:/a:sun:opensso_enterprise:") +346 || i.getValue().startsWith("cpe:/a:sun:opensso:"))) { +347 final String newCpe = String.format("cpe:/a:sun:opensso_enterprise:%s", i.getValue().substring(22)); +348 final String newCpe2 = String.format("cpe:/a:oracle:opensso_enterprise:%s", i.getValue().substring(22)); +349 final String newCpe3 = String.format("cpe:/a:sun:opensso:%s", i.getValue().substring(22)); +350 final String newCpe4 = String.format("cpe:/a:oracle:opensso:%s", i.getValue().substring(22)); +351 try { +352 dependency.addIdentifier("cpe", +353 newCpe, +354 String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(newCpe, "UTF-8"))); +355 dependency.addIdentifier("cpe", +356 newCpe2, +357 String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(newCpe2, "UTF-8"))); +358 dependency.addIdentifier("cpe", +359 newCpe3, +360 String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(newCpe3, "UTF-8"))); +361 dependency.addIdentifier("cpe", +362 newCpe4, +363 String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(newCpe4, "UTF-8"))); +364 } catch (UnsupportedEncodingException ex) { +365 Logger.getLogger(FalsePositiveAnalyzer.class +366 .getName()).log(Level.FINE, null, ex); +367 } +368 } +369 } +370 } +371 }
    diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-frame.html index 17d96686d..d005cee14 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-frame.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.analyzer + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.analyzer @@ -32,6 +32,9 @@
  • ArchiveAnalyzer +
  • +
  • + ArchiveExtractionException
  • CPEAnalyzer diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-summary.html index fe34b9c93..ced8c3225 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-summary.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.analyzer + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.analyzer @@ -64,6 +64,11 @@
  • + + + + + +
    ArchiveAnalyzer
    + ArchiveExtractionException +
    diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/package-frame.html index 8a0153b46..9136b0bbb 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/package-frame.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.concurrency + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.concurrency diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/package-summary.html index f239ec7d3..01e86cc14 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/package-summary.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/concurrency/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.concurrency + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.concurrency diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/CpeIndexReader.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/CpeIndexReader.html index c956dbccf..128676d90 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/CpeIndexReader.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/CpeIndexReader.html @@ -204,7 +204,19 @@ 194 vendorSearchFieldAnalyzer.clear(); 195 } 196 } -197 } +197 +198 /** +199 * Returns the number of CPE entries stored in the index. +200 * +201 * @return the number of CPE entries stored in the index +202 */ +203 public int numDocs() { +204 if (indexReader == null) { +205 return -1; +206 } +207 return indexReader.numDocs(); +208 } +209 }
    diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-frame.html index 7658ec3ef..94269af36 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-frame.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.data.cpe + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.data.cpe diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-summary.html index 801723e98..f0fcdefd2 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-summary.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.data.cpe + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.data.cpe diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-frame.html index 6ceaa1cee..bcd5cc147 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-frame.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.data.cwe + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.data.cwe diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-summary.html index 72cd0e262..1139e0080 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-summary.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.data.cwe + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.data.cwe diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-frame.html index be9ce32e6..db4759dbc 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-frame.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.data.lucene + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.data.lucene diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-summary.html index 3e4bb090f..090ffce05 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-summary.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.data.lucene + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.data.lucene diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-frame.html index bacaa5bd9..76960d2a7 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-frame.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.data.nvdcve + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.data.nvdcve diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-summary.html index 0911a17f1..8e5baabb6 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-summary.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.data.nvdcve + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.data.nvdcve diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/package-frame.html index 4d68e22a7..773975e7f 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/data/package-frame.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.data + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.data @@ -17,6 +17,9 @@
    • CachedWebDataSource +
    • +
    • + NoDataException
    • UpdateException diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/package-summary.html index 378f7be75..761e5f803 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/data/package-summary.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.data + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.data @@ -39,6 +39,11 @@
    CachedWebDataSource
    + NoDataException +
    diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/update/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/update/package-frame.html index b0961a846..0250c3b25 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/data/update/package-frame.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/update/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.data.update + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.data.update diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/update/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/update/package-summary.html index f7003d0b3..bc3088046 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/data/update/package-summary.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/update/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.data.update + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.data.update diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-frame.html index 6ea46af8f..b4f34ab21 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-frame.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.dependency + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.dependency diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-summary.html index f22240f3e..82d76f7fb 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-summary.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.dependency + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.dependency diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-frame.html index 9f140085d..aab76446e 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-frame.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.jaxb.pom.generated + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.jaxb.pom.generated diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-summary.html index b464f6c45..8fe0695fb 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-summary.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.jaxb.pom.generated + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.jaxb.pom.generated diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-frame.html index 94b5d2338..22020d2ca 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-frame.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.jaxb.pom + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.jaxb.pom diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-summary.html index 236c6aed4..4cfb82964 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-summary.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.jaxb.pom + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.jaxb.pom diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/package-frame.html index 34fc52700..569fc4cb9 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/package-frame.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/package-summary.html index f4aac54d1..33b5b7267 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/package-summary.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-frame.html index f5861341b..df9656564 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-frame.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.reporting + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.reporting diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-summary.html index e728bbb56..cf1eb0e46 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-summary.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.reporting + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.reporting diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/utils/Downloader.html b/dependency-check-core/xref/org/owasp/dependencycheck/utils/Downloader.html index 439932ad7..1d8b0ead9 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/utils/Downloader.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/utils/Downloader.html @@ -33,190 +33,208 @@ 23 import java.io.FileOutputStream; 24 import java.io.IOException; 25 import java.io.InputStream; -26 import java.net.HttpURLConnection; -27 import java.net.InetSocketAddress; -28 import java.net.Proxy; -29 import java.net.SocketAddress; -30 import java.net.URISyntaxException; -31 import java.net.URL; -32 import java.util.logging.Level; -33 import java.util.logging.Logger; -34 import java.util.zip.GZIPInputStream; -35 import java.util.zip.InflaterInputStream; -36 -37 /** -38 * A utility to download files from the Internet. -39 * -40 * @author Jeremy Long (jeremy.long@owasp.org) -41 */ -42 public final class Downloader { -43 -44 /** -45 * Private constructor for utility class. -46 */ -47 private Downloader() { -48 } -49 -50 /** -51 * Retrieves a file from a given URL and saves it to the outputPath. -52 * -53 * @param url the URL of the file to download. -54 * @param outputPath the path to the save the file to. -55 * @throws DownloadFailedException is thrown if there is an error -56 * downloading the file. -57 */ -58 public static void fetchFile(URL url, File outputPath) throws DownloadFailedException { -59 HttpURLConnection conn = null; -60 try { -61 conn = Downloader.getConnection(url); -62 conn.setRequestProperty("Accept-Encoding", "gzip, deflate"); -63 conn.connect(); -64 } catch (IOException ex) { -65 try { -66 if (conn != null) { -67 conn.disconnect(); -68 } -69 } finally { -70 conn = null; -71 } -72 throw new DownloadFailedException("Error downloading file.", ex); -73 } -74 final String encoding = conn.getContentEncoding(); -75 -76 BufferedOutputStream writer = null; -77 InputStream reader = null; -78 try { -79 if (encoding != null && "gzip".equalsIgnoreCase(encoding)) { -80 reader = new GZIPInputStream(conn.getInputStream()); -81 } else if (encoding != null && "deflate".equalsIgnoreCase(encoding)) { -82 reader = new InflaterInputStream(conn.getInputStream()); -83 } else { -84 reader = conn.getInputStream(); -85 } -86 -87 writer = new BufferedOutputStream(new FileOutputStream(outputPath)); -88 final byte[] buffer = new byte[4096]; -89 int bytesRead; -90 while ((bytesRead = reader.read(buffer)) > 0) { -91 writer.write(buffer, 0, bytesRead); -92 } -93 } catch (Exception ex) { -94 throw new DownloadFailedException("Error saving downloaded file.", ex); -95 } finally { -96 if (writer != null) { -97 try { -98 writer.close(); -99 } catch (Exception ex) { -100 Logger.getLogger(Downloader.class.getName()).log(Level.FINEST, -101 "Error closing the writer in Downloader.", ex); -102 } -103 } -104 if (reader != null) { -105 try { -106 reader.close(); -107 } catch (Exception ex) { -108 Logger.getLogger(Downloader.class.getName()).log(Level.FINEST, -109 "Error closing the reader in Downloader.", ex); -110 } -111 } -112 try { -113 conn.disconnect(); -114 } finally { -115 conn = null; -116 } -117 } -118 } -119 -120 /** -121 * Makes an HTTP Head request to retrieve the last modified date of the -122 * given URL. If the file:// protocol is specified, then the lastTimestamp -123 * of the file is returned. -124 * -125 * @param url the URL to retrieve the timestamp from -126 * @return an epoch timestamp -127 * @throws DownloadFailedException is thrown if an exception occurs making -128 * the HTTP request -129 */ -130 public static long getLastModified(URL url) throws DownloadFailedException { -131 long timestamp = 0; -132 //TODO add the FPR protocol? -133 if ("file".equalsIgnoreCase(url.getProtocol())) { -134 File lastModifiedFile; -135 try { -136 // if (System.getProperty("os.name").toLowerCase().startsWith("windows")) { -137 // String filePath = url.toString(); -138 // if (filePath.matches("file://[a-zA-Z]:.*")) { -139 // f = new File(filePath.substring(7)); -140 // } else { -141 // f = new File(url.toURI()); -142 // } -143 // } else { -144 lastModifiedFile = new File(url.toURI()); -145 // } -146 } catch (URISyntaxException ex) { -147 final String msg = String.format("Unable to locate '%s'; is the cve.url-2.0.modified property set correctly?", url.toString()); -148 throw new DownloadFailedException(msg); -149 } -150 timestamp = lastModifiedFile.lastModified(); -151 } else { -152 HttpURLConnection conn = null; -153 try { -154 conn = Downloader.getConnection(url); -155 conn.setRequestMethod("HEAD"); -156 conn.connect(); -157 timestamp = conn.getLastModified(); -158 } catch (Exception ex) { -159 throw new DownloadFailedException("Error making HTTP HEAD request.", ex); -160 } finally { -161 if (conn != null) { -162 try { -163 conn.disconnect(); -164 } finally { -165 conn = null; -166 } -167 } -168 } -169 } -170 return timestamp; -171 } -172 -173 /** -174 * Utility method to get an HttpURLConnection. If the app is configured to -175 * use a proxy this method will retrieve the proxy settings and use them -176 * when setting up the connection. -177 * -178 * @param url the url to connect to -179 * @return an HttpURLConnection -180 * @throws DownloadFailedException thrown if there is an exception -181 */ -182 private static HttpURLConnection getConnection(URL url) throws DownloadFailedException { -183 HttpURLConnection conn = null; -184 Proxy proxy = null; -185 final String proxyUrl = Settings.getString(Settings.KEYS.PROXY_URL); -186 try { -187 if (proxyUrl != null) { -188 final int proxyPort = Settings.getInt(Settings.KEYS.PROXY_PORT); -189 final SocketAddress addr = new InetSocketAddress(proxyUrl, proxyPort); -190 proxy = new Proxy(Proxy.Type.HTTP, addr); -191 conn = (HttpURLConnection) url.openConnection(proxy); -192 } else { -193 conn = (HttpURLConnection) url.openConnection(); -194 } -195 final int timeout = Settings.getInt(Settings.KEYS.CONNECTION_TIMEOUT, 60000); -196 conn.setConnectTimeout(timeout); -197 } catch (IOException ex) { -198 if (conn != null) { -199 try { -200 conn.disconnect(); -201 } finally { -202 conn = null; -203 } -204 } -205 throw new DownloadFailedException("Error getting connection.", ex); -206 } -207 return conn; -208 } -209 } +26 import java.net.Authenticator; +27 import java.net.HttpURLConnection; +28 import java.net.InetSocketAddress; +29 import java.net.PasswordAuthentication; +30 import java.net.Proxy; +31 import java.net.SocketAddress; +32 import java.net.URISyntaxException; +33 import java.net.URL; +34 import java.util.logging.Level; +35 import java.util.logging.Logger; +36 import java.util.zip.GZIPInputStream; +37 import java.util.zip.InflaterInputStream; +38 +39 /** +40 * A utility to download files from the Internet. +41 * +42 * @author Jeremy Long (jeremy.long@owasp.org) +43 */ +44 public final class Downloader { +45 +46 /** +47 * Private constructor for utility class. +48 */ +49 private Downloader() { +50 } +51 +52 /** +53 * Retrieves a file from a given URL and saves it to the outputPath. +54 * +55 * @param url the URL of the file to download. +56 * @param outputPath the path to the save the file to. +57 * @throws DownloadFailedException is thrown if there is an error +58 * downloading the file. +59 */ +60 public static void fetchFile(URL url, File outputPath) throws DownloadFailedException { +61 HttpURLConnection conn = null; +62 try { +63 conn = Downloader.getConnection(url); +64 conn.setRequestProperty("Accept-Encoding", "gzip, deflate"); +65 conn.connect(); +66 } catch (IOException ex) { +67 try { +68 if (conn != null) { +69 conn.disconnect(); +70 } +71 } finally { +72 conn = null; +73 } +74 throw new DownloadFailedException("Error downloading file.", ex); +75 } +76 final String encoding = conn.getContentEncoding(); +77 +78 BufferedOutputStream writer = null; +79 InputStream reader = null; +80 try { +81 if (encoding != null && "gzip".equalsIgnoreCase(encoding)) { +82 reader = new GZIPInputStream(conn.getInputStream()); +83 } else if (encoding != null && "deflate".equalsIgnoreCase(encoding)) { +84 reader = new InflaterInputStream(conn.getInputStream()); +85 } else { +86 reader = conn.getInputStream(); +87 } +88 +89 writer = new BufferedOutputStream(new FileOutputStream(outputPath)); +90 final byte[] buffer = new byte[4096]; +91 int bytesRead; +92 while ((bytesRead = reader.read(buffer)) > 0) { +93 writer.write(buffer, 0, bytesRead); +94 } +95 } catch (Exception ex) { +96 throw new DownloadFailedException("Error saving downloaded file.", ex); +97 } finally { +98 if (writer != null) { +99 try { +100 writer.close(); +101 } catch (Exception ex) { +102 Logger.getLogger(Downloader.class.getName()).log(Level.FINEST, +103 "Error closing the writer in Downloader.", ex); +104 } +105 } +106 if (reader != null) { +107 try { +108 reader.close(); +109 } catch (Exception ex) { +110 Logger.getLogger(Downloader.class.getName()).log(Level.FINEST, +111 "Error closing the reader in Downloader.", ex); +112 } +113 } +114 try { +115 conn.disconnect(); +116 } finally { +117 conn = null; +118 } +119 } +120 } +121 +122 /** +123 * Makes an HTTP Head request to retrieve the last modified date of the +124 * given URL. If the file:// protocol is specified, then the lastTimestamp +125 * of the file is returned. +126 * +127 * @param url the URL to retrieve the timestamp from +128 * @return an epoch timestamp +129 * @throws DownloadFailedException is thrown if an exception occurs making +130 * the HTTP request +131 */ +132 public static long getLastModified(URL url) throws DownloadFailedException { +133 long timestamp = 0; +134 //TODO add the FPR protocol? +135 if ("file".equalsIgnoreCase(url.getProtocol())) { +136 File lastModifiedFile; +137 try { +138 // if (System.getProperty("os.name").toLowerCase().startsWith("windows")) { +139 // String filePath = url.toString(); +140 // if (filePath.matches("file://[a-zA-Z]:.*")) { +141 // f = new File(filePath.substring(7)); +142 // } else { +143 // f = new File(url.toURI()); +144 // } +145 // } else { +146 lastModifiedFile = new File(url.toURI()); +147 // } +148 } catch (URISyntaxException ex) { +149 final String msg = String.format("Unable to locate '%s'; is the cve.url-2.0.modified property set correctly?", url.toString()); +150 throw new DownloadFailedException(msg); +151 } +152 timestamp = lastModifiedFile.lastModified(); +153 } else { +154 HttpURLConnection conn = null; +155 try { +156 conn = Downloader.getConnection(url); +157 conn.setRequestMethod("HEAD"); +158 conn.connect(); +159 timestamp = conn.getLastModified(); +160 } catch (Exception ex) { +161 throw new DownloadFailedException("Error making HTTP HEAD request.", ex); +162 } finally { +163 if (conn != null) { +164 try { +165 conn.disconnect(); +166 } finally { +167 conn = null; +168 } +169 } +170 } +171 } +172 return timestamp; +173 } +174 +175 /** +176 * Utility method to get an HttpURLConnection. If the app is configured to +177 * use a proxy this method will retrieve the proxy settings and use them +178 * when setting up the connection. +179 * +180 * @param url the url to connect to +181 * @return an HttpURLConnection +182 * @throws DownloadFailedException thrown if there is an exception +183 */ +184 private static HttpURLConnection getConnection(URL url) throws DownloadFailedException { +185 HttpURLConnection conn = null; +186 Proxy proxy = null; +187 final String proxyUrl = Settings.getString(Settings.KEYS.PROXY_URL); +188 try { +189 if (proxyUrl != null) { +190 final int proxyPort = Settings.getInt(Settings.KEYS.PROXY_PORT); +191 final SocketAddress addr = new InetSocketAddress(proxyUrl, proxyPort); +192 +193 final String username = Settings.getString(Settings.KEYS.PROXY_USERNAME); +194 final String password = Settings.getString(Settings.KEYS.PROXY_PASSWORD); +195 if (username != null && password != null) { +196 final Authenticator auth = new Authenticator() { +197 @Override +198 public PasswordAuthentication getPasswordAuthentication() { +199 if (getRequestorType().equals(RequestorType.PROXY)) { +200 return new PasswordAuthentication(username, password.toCharArray()); +201 } +202 return super.getPasswordAuthentication(); +203 } +204 }; +205 Authenticator.setDefault(auth); +206 } +207 +208 proxy = new Proxy(Proxy.Type.HTTP, addr); +209 conn = (HttpURLConnection) url.openConnection(proxy); +210 } else { +211 conn = (HttpURLConnection) url.openConnection(); +212 } +213 final int timeout = Settings.getInt(Settings.KEYS.CONNECTION_TIMEOUT, 60000); +214 conn.setConnectTimeout(timeout); +215 } catch (IOException ex) { +216 if (conn != null) { +217 try { +218 conn.disconnect(); +219 } finally { +220 conn = null; +221 } +222 } +223 throw new DownloadFailedException("Error getting connection.", ex); +224 } +225 return conn; +226 } +227 }
    diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/utils/LogUtils.html b/dependency-check-core/xref/org/owasp/dependencycheck/utils/LogUtils.html index ede6fcd53..335b95728 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/utils/LogUtils.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/utils/LogUtils.html @@ -60,29 +60,43 @@ 50 LogManager.getLogManager().reset(); 51 LogManager.getLogManager().readConfiguration(in); 52 if (verboseLogFile != null && !verboseLogFile.isEmpty()) { -53 final Logger logger = Logger.getLogger(""); -54 final FileHandler handler = new FileHandler(verboseLogFile, true); -55 handler.setFormatter(new SimpleFormatter()); -56 handler.setLevel(Level.FINE); -57 handler.setFilter(new LogFilter()); -58 logger.addHandler(handler); -59 logger.setLevel(Level.FINE); -60 } -61 } catch (IOException ex) { -62 Logger.getLogger(LogUtils.class.getName()).log(Level.FINE, "IO Error preparing the logger", ex); -63 } catch (SecurityException ex) { -64 Logger.getLogger(LogUtils.class.getName()).log(Level.FINE, "Error preparing the logger", ex); -65 } finally { -66 if (in != null) { -67 try { -68 in.close(); -69 } catch (Exception ex) { -70 Logger.getLogger(LogUtils.class.getName()).log(Level.FINEST, "Error closing resource stream", ex); -71 } -72 } -73 } -74 } -75 } +53 verboseLoggingEnabled = true; +54 final Logger logger = Logger.getLogger(""); +55 final FileHandler handler = new FileHandler(verboseLogFile, true); +56 handler.setFormatter(new SimpleFormatter()); +57 handler.setLevel(Level.FINE); +58 handler.setFilter(new LogFilter()); +59 logger.addHandler(handler); +60 logger.setLevel(Level.FINE); +61 } +62 } catch (IOException ex) { +63 Logger.getLogger(LogUtils.class.getName()).log(Level.FINE, "IO Error preparing the logger", ex); +64 } catch (SecurityException ex) { +65 Logger.getLogger(LogUtils.class.getName()).log(Level.FINE, "Error preparing the logger", ex); +66 } finally { +67 if (in != null) { +68 try { +69 in.close(); +70 } catch (Exception ex) { +71 Logger.getLogger(LogUtils.class.getName()).log(Level.FINEST, "Error closing resource stream", ex); +72 } +73 } +74 } +75 } +76 /** +77 * Whether or not verbose logging is enabled. +78 */ +79 private static boolean verboseLoggingEnabled = false; +80 +81 /** +82 * Get the value of verboseLoggingEnabled. +83 * +84 * @return the value of verboseLoggingEnabled +85 */ +86 public static boolean isVerboseLoggingEnabled() { +87 return verboseLoggingEnabled; +88 } +89 }
    diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/utils/Settings.html b/dependency-check-core/xref/org/owasp/dependencycheck/utils/Settings.html index 6be7860a4..2321776ba 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/utils/Settings.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/utils/Settings.html @@ -136,312 +136,320 @@ 126 */ 127 public static final String PROXY_PORT = "proxy.port"; 128 /** -129 * The properties key for the connection timeout. +129 * The properties key for the proxy username. 130 */ -131 public static final String CONNECTION_TIMEOUT = "connection.timeout"; +131 public static final String PROXY_USERNAME = "proxy.username"; 132 /** -133 * The location of the temporary directory. +133 * The properties key for the proxy password. 134 */ -135 public static final String TEMP_DIRECTORY = "temp.directory"; -136 } -137 /** -138 * The properties file location. -139 */ -140 private static final String PROPERTIES_FILE = "dependencycheck.properties"; -141 /** -142 * The singleton instance variable. -143 */ -144 private static final Settings INSTANCE = new Settings(); +135 public static final String PROXY_PASSWORD = "proxy.password"; +136 /** +137 * The properties key for the connection timeout. +138 */ +139 public static final String CONNECTION_TIMEOUT = "connection.timeout"; +140 /** +141 * The location of the temporary directory. +142 */ +143 public static final String TEMP_DIRECTORY = "temp.directory"; +144 } 145 /** -146 * The properties. +146 * The properties file location. 147 */ -148 private Properties props = null; -149 -150 /** -151 * Private constructor for the Settings class. This class loads the -152 * properties files. -153 */ -154 private Settings() { -155 InputStream in = null; -156 props = new Properties(); -157 try { -158 in = this.getClass().getClassLoader().getResourceAsStream(PROPERTIES_FILE); -159 props.load(in); -160 } catch (IOException ex) { -161 Logger.getLogger(Settings.class.getName()).log(Level.SEVERE, "Unable to load default settings."); -162 Logger.getLogger(Settings.class.getName()).log(Level.FINE, null, ex); -163 } finally { -164 if (in != null) { -165 try { -166 in.close(); -167 } catch (IOException ex) { -168 Logger.getLogger(Settings.class.getName()).log(Level.FINEST, null, ex); -169 } -170 } -171 } -172 } -173 -174 /** -175 * Sets a property value. -176 * -177 * @param key the key for the property -178 * @param value the value for the property -179 */ -180 public static void setString(String key, String value) { -181 INSTANCE.props.setProperty(key, value); -182 } -183 -184 /** -185 * Sets a property value. -186 * -187 * @param key the key for the property -188 * @param value the value for the property -189 */ -190 public static void setBoolean(String key, boolean value) { -191 if (value) { -192 INSTANCE.props.setProperty(key, Boolean.TRUE.toString()); -193 } else { -194 INSTANCE.props.setProperty(key, Boolean.FALSE.toString()); -195 } -196 } -197 -198 /** -199 * Merges a new properties file into the current properties. This method -200 * allows for the loading of a user provided properties file.<br/><br/> -201 * Note: even if using this method - system properties will be loaded before -202 * properties loaded from files. -203 * -204 * @param filePath the path to the properties file to merge. -205 * @throws FileNotFoundException is thrown when the filePath points to a -206 * non-existent file -207 * @throws IOException is thrown when there is an exception loading/merging -208 * the properties -209 */ -210 public static void mergeProperties(File filePath) throws FileNotFoundException, IOException { -211 final FileInputStream fis = new FileInputStream(filePath); -212 mergeProperties(fis); -213 } -214 -215 /** -216 * Merges a new properties file into the current properties. This method -217 * allows for the loading of a user provided properties file.<br/><br/> -218 * Note: even if using this method - system properties will be loaded before -219 * properties loaded from files. -220 * -221 * @param filePath the path to the properties file to merge. -222 * @throws FileNotFoundException is thrown when the filePath points to a -223 * non-existent file -224 * @throws IOException is thrown when there is an exception loading/merging -225 * the properties -226 */ -227 public static void mergeProperties(String filePath) throws FileNotFoundException, IOException { -228 final FileInputStream fis = new FileInputStream(filePath); -229 mergeProperties(fis); -230 } -231 -232 /** -233 * Merges a new properties file into the current properties. This method -234 * allows for the loading of a user provided properties file.<br/><br/> -235 * Note: even if using this method - system properties will be loaded before -236 * properties loaded from files. -237 * -238 * @param stream an Input Stream pointing at a properties file to merge -239 * @throws IOException is thrown when there is an exception loading/merging -240 * the properties -241 */ -242 public static void mergeProperties(InputStream stream) throws IOException { -243 INSTANCE.props.load(stream); -244 } -245 -246 /** -247 * Returns a value from the properties file as a File object. If the value -248 * was specified as a system property or passed in via the -Dprop=value -249 * argument - this method will return the value from the system properties -250 * before the values in the contained configuration file. -251 * -252 * This method will also replace a leading "[JAR]\" sequence with the path -253 * to the folder containing the JAR file containing this class. -254 * -255 * @param key the key to lookup within the properties file -256 * @return the property from the properties file converted to a File object -257 */ -258 public static File getFile(String key) { -259 final String file = getString(key); -260 final String baseDir = getString(Settings.KEYS.DATA_DIRECTORY); -261 if (baseDir != null) { -262 if (baseDir.startsWith("[JAR]/")) { -263 final File jarPath = getJarPath(); -264 final File newBase = new File(jarPath, baseDir.substring(6)); -265 if (Settings.KEYS.DATA_DIRECTORY.equals(key)) { -266 return newBase; -267 } -268 return new File(newBase, file); -269 } -270 if (Settings.KEYS.DATA_DIRECTORY.equals(key)) { -271 return new File(baseDir); -272 } -273 return new File(baseDir, file); -274 } -275 return new File(file); -276 } -277 -278 /** -279 * Attempts to retrieve the folder containing the Jar file containing the -280 * Settings class. -281 * -282 * @return a File object -283 */ -284 private static File getJarPath() { -285 final String jarPath = Settings.class.getProtectionDomain().getCodeSource().getLocation().getPath(); -286 String decodedPath = "."; -287 try { -288 decodedPath = URLDecoder.decode(jarPath, "UTF-8"); -289 } catch (UnsupportedEncodingException ex) { -290 Logger.getLogger(Settings.class.getName()).log(Level.FINEST, null, ex); -291 } -292 -293 final File path = new File(decodedPath); -294 if (path.getName().toLowerCase().endsWith(".jar")) { -295 return path.getParentFile(); -296 } else { -297 return new File("."); -298 } -299 } +148 private static final String PROPERTIES_FILE = "dependencycheck.properties"; +149 /** +150 * The singleton instance variable. +151 */ +152 private static final Settings INSTANCE = new Settings(); +153 /** +154 * The properties. +155 */ +156 private Properties props = null; +157 +158 /** +159 * Private constructor for the Settings class. This class loads the +160 * properties files. +161 */ +162 private Settings() { +163 InputStream in = null; +164 props = new Properties(); +165 try { +166 in = this.getClass().getClassLoader().getResourceAsStream(PROPERTIES_FILE); +167 props.load(in); +168 } catch (IOException ex) { +169 Logger.getLogger(Settings.class.getName()).log(Level.SEVERE, "Unable to load default settings."); +170 Logger.getLogger(Settings.class.getName()).log(Level.FINE, null, ex); +171 } finally { +172 if (in != null) { +173 try { +174 in.close(); +175 } catch (IOException ex) { +176 Logger.getLogger(Settings.class.getName()).log(Level.FINEST, null, ex); +177 } +178 } +179 } +180 } +181 +182 /** +183 * Sets a property value. +184 * +185 * @param key the key for the property +186 * @param value the value for the property +187 */ +188 public static void setString(String key, String value) { +189 INSTANCE.props.setProperty(key, value); +190 } +191 +192 /** +193 * Sets a property value. +194 * +195 * @param key the key for the property +196 * @param value the value for the property +197 */ +198 public static void setBoolean(String key, boolean value) { +199 if (value) { +200 INSTANCE.props.setProperty(key, Boolean.TRUE.toString()); +201 } else { +202 INSTANCE.props.setProperty(key, Boolean.FALSE.toString()); +203 } +204 } +205 +206 /** +207 * Merges a new properties file into the current properties. This method +208 * allows for the loading of a user provided properties file.<br/><br/> +209 * Note: even if using this method - system properties will be loaded before +210 * properties loaded from files. +211 * +212 * @param filePath the path to the properties file to merge. +213 * @throws FileNotFoundException is thrown when the filePath points to a +214 * non-existent file +215 * @throws IOException is thrown when there is an exception loading/merging +216 * the properties +217 */ +218 public static void mergeProperties(File filePath) throws FileNotFoundException, IOException { +219 final FileInputStream fis = new FileInputStream(filePath); +220 mergeProperties(fis); +221 } +222 +223 /** +224 * Merges a new properties file into the current properties. This method +225 * allows for the loading of a user provided properties file.<br/><br/> +226 * Note: even if using this method - system properties will be loaded before +227 * properties loaded from files. +228 * +229 * @param filePath the path to the properties file to merge. +230 * @throws FileNotFoundException is thrown when the filePath points to a +231 * non-existent file +232 * @throws IOException is thrown when there is an exception loading/merging +233 * the properties +234 */ +235 public static void mergeProperties(String filePath) throws FileNotFoundException, IOException { +236 final FileInputStream fis = new FileInputStream(filePath); +237 mergeProperties(fis); +238 } +239 +240 /** +241 * Merges a new properties file into the current properties. This method +242 * allows for the loading of a user provided properties file.<br/><br/> +243 * Note: even if using this method - system properties will be loaded before +244 * properties loaded from files. +245 * +246 * @param stream an Input Stream pointing at a properties file to merge +247 * @throws IOException is thrown when there is an exception loading/merging +248 * the properties +249 */ +250 public static void mergeProperties(InputStream stream) throws IOException { +251 INSTANCE.props.load(stream); +252 } +253 +254 /** +255 * Returns a value from the properties file as a File object. If the value +256 * was specified as a system property or passed in via the -Dprop=value +257 * argument - this method will return the value from the system properties +258 * before the values in the contained configuration file. +259 * +260 * This method will also replace a leading "[JAR]\" sequence with the path +261 * to the folder containing the JAR file containing this class. +262 * +263 * @param key the key to lookup within the properties file +264 * @return the property from the properties file converted to a File object +265 */ +266 public static File getFile(String key) { +267 final String file = getString(key); +268 final String baseDir = getString(Settings.KEYS.DATA_DIRECTORY); +269 if (baseDir != null) { +270 if (baseDir.startsWith("[JAR]/")) { +271 final File jarPath = getJarPath(); +272 final File newBase = new File(jarPath, baseDir.substring(6)); +273 if (Settings.KEYS.DATA_DIRECTORY.equals(key)) { +274 return newBase; +275 } +276 return new File(newBase, file); +277 } +278 if (Settings.KEYS.DATA_DIRECTORY.equals(key)) { +279 return new File(baseDir); +280 } +281 return new File(baseDir, file); +282 } +283 return new File(file); +284 } +285 +286 /** +287 * Attempts to retrieve the folder containing the Jar file containing the +288 * Settings class. +289 * +290 * @return a File object +291 */ +292 private static File getJarPath() { +293 final String jarPath = Settings.class.getProtectionDomain().getCodeSource().getLocation().getPath(); +294 String decodedPath = "."; +295 try { +296 decodedPath = URLDecoder.decode(jarPath, "UTF-8"); +297 } catch (UnsupportedEncodingException ex) { +298 Logger.getLogger(Settings.class.getName()).log(Level.FINEST, null, ex); +299 } 300 -301 /** -302 * Returns a value from the properties file. If the value was specified as a -303 * system property or passed in via the -Dprop=value argument - this method -304 * will return the value from the system properties before the values in the -305 * contained configuration file. -306 * -307 * @param key the key to lookup within the properties file -308 * @param defaultValue the default value for the requested property -309 * @return the property from the properties file -310 */ -311 public static String getString(String key, String defaultValue) { -312 final String str = System.getProperty(key, INSTANCE.props.getProperty(key, defaultValue)); -313 return str; -314 } -315 -316 /** -317 * Returns the temporary directory. -318 * -319 * @return the temporary directory -320 */ -321 public static File getTempDirectory() { -322 return new File(Settings.getString(Settings.KEYS.TEMP_DIRECTORY, System.getProperty("java.io.tmpdir"))); -323 } -324 -325 /** -326 * Returns a value from the properties file. If the value was specified as a -327 * system property or passed in via the -Dprop=value argument - this method -328 * will return the value from the system properties before the values in the -329 * contained configuration file. -330 * -331 * @param key the key to lookup within the properties file -332 * @return the property from the properties file -333 */ -334 public static String getString(String key) { -335 return System.getProperty(key, INSTANCE.props.getProperty(key)); -336 } -337 -338 /** -339 * Removes a property from the local properties collection. This is mainly -340 * used in test cases. -341 * -342 * @param key the property key to remove -343 */ -344 public static void removeProperty(String key) { -345 INSTANCE.props.remove(key); -346 } -347 -348 /** -349 * Returns an int value from the properties file. If the value was specified -350 * as a system property or passed in via the -Dprop=value argument - this -351 * method will return the value from the system properties before the values -352 * in the contained configuration file. -353 * -354 * @param key the key to lookup within the properties file -355 * @return the property from the properties file -356 * @throws InvalidSettingException is thrown if there is an error retrieving -357 * the setting -358 */ -359 public static int getInt(String key) throws InvalidSettingException { -360 int value; -361 try { -362 value = Integer.parseInt(Settings.getString(key)); -363 } catch (NumberFormatException ex) { -364 throw new InvalidSettingException("Could not convert property '" + key + "' to an int.", ex); -365 } -366 return value; -367 } -368 -369 /** -370 * Returns an int value from the properties file. If the value was specified -371 * as a system property or passed in via the -Dprop=value argument - this -372 * method will return the value from the system properties before the values -373 * in the contained configuration file. -374 * -375 * @param key the key to lookup within the properties file -376 * @param defaultValue the default value to return -377 * @return the property from the properties file or the defaultValue if the -378 * property does not exist or cannot be converted to an integer -379 */ -380 public static int getInt(String key, int defaultValue) { -381 int value; -382 try { -383 value = Integer.parseInt(Settings.getString(key)); -384 } catch (NumberFormatException ex) { -385 final String msg = String.format("Could not convert property '%s' to an int.", key); -386 Logger.getLogger(Settings.class.getName()).log(Level.FINEST, msg, ex); -387 value = defaultValue; -388 } -389 return value; -390 } -391 -392 /** -393 * Returns a long value from the properties file. If the value was specified -394 * as a system property or passed in via the -Dprop=value argument - this -395 * method will return the value from the system properties before the values -396 * in the contained configuration file. -397 * -398 * @param key the key to lookup within the properties file -399 * @return the property from the properties file -400 * @throws InvalidSettingException is thrown if there is an error retrieving -401 * the setting -402 */ -403 public static long getLong(String key) throws InvalidSettingException { -404 long value; -405 try { -406 value = Long.parseLong(Settings.getString(key)); -407 } catch (NumberFormatException ex) { -408 throw new InvalidSettingException("Could not convert property '" + key + "' to an int.", ex); -409 } -410 return value; -411 } -412 -413 /** -414 * Returns a boolean value from the properties file. If the value was -415 * specified as a system property or passed in via the -416 * <code>-Dprop=value</code> argument this method will return the value from -417 * the system properties before the values in the contained configuration -418 * file. -419 * -420 * @param key the key to lookup within the properties file -421 * @return the property from the properties file -422 * @throws InvalidSettingException is thrown if there is an error retrieving -423 * the setting -424 */ -425 public static boolean getBoolean(String key) throws InvalidSettingException { -426 boolean value; -427 try { -428 value = Boolean.parseBoolean(Settings.getString(key)); -429 } catch (NumberFormatException ex) { -430 throw new InvalidSettingException("Could not convert property '" + key + "' to an int.", ex); -431 } -432 return value; -433 } -434 } +301 final File path = new File(decodedPath); +302 if (path.getName().toLowerCase().endsWith(".jar")) { +303 return path.getParentFile(); +304 } else { +305 return new File("."); +306 } +307 } +308 +309 /** +310 * Returns a value from the properties file. If the value was specified as a +311 * system property or passed in via the -Dprop=value argument - this method +312 * will return the value from the system properties before the values in the +313 * contained configuration file. +314 * +315 * @param key the key to lookup within the properties file +316 * @param defaultValue the default value for the requested property +317 * @return the property from the properties file +318 */ +319 public static String getString(String key, String defaultValue) { +320 final String str = System.getProperty(key, INSTANCE.props.getProperty(key, defaultValue)); +321 return str; +322 } +323 +324 /** +325 * Returns the temporary directory. +326 * +327 * @return the temporary directory +328 */ +329 public static File getTempDirectory() { +330 return new File(Settings.getString(Settings.KEYS.TEMP_DIRECTORY, System.getProperty("java.io.tmpdir"))); +331 } +332 +333 /** +334 * Returns a value from the properties file. If the value was specified as a +335 * system property or passed in via the -Dprop=value argument - this method +336 * will return the value from the system properties before the values in the +337 * contained configuration file. +338 * +339 * @param key the key to lookup within the properties file +340 * @return the property from the properties file +341 */ +342 public static String getString(String key) { +343 return System.getProperty(key, INSTANCE.props.getProperty(key)); +344 } +345 +346 /** +347 * Removes a property from the local properties collection. This is mainly +348 * used in test cases. +349 * +350 * @param key the property key to remove +351 */ +352 public static void removeProperty(String key) { +353 INSTANCE.props.remove(key); +354 } +355 +356 /** +357 * Returns an int value from the properties file. If the value was specified +358 * as a system property or passed in via the -Dprop=value argument - this +359 * method will return the value from the system properties before the values +360 * in the contained configuration file. +361 * +362 * @param key the key to lookup within the properties file +363 * @return the property from the properties file +364 * @throws InvalidSettingException is thrown if there is an error retrieving +365 * the setting +366 */ +367 public static int getInt(String key) throws InvalidSettingException { +368 int value; +369 try { +370 value = Integer.parseInt(Settings.getString(key)); +371 } catch (NumberFormatException ex) { +372 throw new InvalidSettingException("Could not convert property '" + key + "' to an int.", ex); +373 } +374 return value; +375 } +376 +377 /** +378 * Returns an int value from the properties file. If the value was specified +379 * as a system property or passed in via the -Dprop=value argument - this +380 * method will return the value from the system properties before the values +381 * in the contained configuration file. +382 * +383 * @param key the key to lookup within the properties file +384 * @param defaultValue the default value to return +385 * @return the property from the properties file or the defaultValue if the +386 * property does not exist or cannot be converted to an integer +387 */ +388 public static int getInt(String key, int defaultValue) { +389 int value; +390 try { +391 value = Integer.parseInt(Settings.getString(key)); +392 } catch (NumberFormatException ex) { +393 final String msg = String.format("Could not convert property '%s' to an int.", key); +394 Logger.getLogger(Settings.class.getName()).log(Level.FINEST, msg, ex); +395 value = defaultValue; +396 } +397 return value; +398 } +399 +400 /** +401 * Returns a long value from the properties file. If the value was specified +402 * as a system property or passed in via the -Dprop=value argument - this +403 * method will return the value from the system properties before the values +404 * in the contained configuration file. +405 * +406 * @param key the key to lookup within the properties file +407 * @return the property from the properties file +408 * @throws InvalidSettingException is thrown if there is an error retrieving +409 * the setting +410 */ +411 public static long getLong(String key) throws InvalidSettingException { +412 long value; +413 try { +414 value = Long.parseLong(Settings.getString(key)); +415 } catch (NumberFormatException ex) { +416 throw new InvalidSettingException("Could not convert property '" + key + "' to an int.", ex); +417 } +418 return value; +419 } +420 +421 /** +422 * Returns a boolean value from the properties file. If the value was +423 * specified as a system property or passed in via the +424 * <code>-Dprop=value</code> argument this method will return the value from +425 * the system properties before the values in the contained configuration +426 * file. +427 * +428 * @param key the key to lookup within the properties file +429 * @return the property from the properties file +430 * @throws InvalidSettingException is thrown if there is an error retrieving +431 * the setting +432 */ +433 public static boolean getBoolean(String key) throws InvalidSettingException { +434 boolean value; +435 try { +436 value = Boolean.parseBoolean(Settings.getString(key)); +437 } catch (NumberFormatException ex) { +438 throw new InvalidSettingException("Could not convert property '" + key + "' to an int.", ex); +439 } +440 return value; +441 } +442 }
    diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/utils/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/utils/package-frame.html index e05719506..359a906b7 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/utils/package-frame.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/utils/package-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.utils + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.utils diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/utils/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/utils/package-summary.html index 8642d9d19..9718a3676 100644 --- a/dependency-check-core/xref/org/owasp/dependencycheck/utils/package-summary.html +++ b/dependency-check-core/xref/org/owasp/dependencycheck/utils/package-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference Package org.owasp.dependencycheck.utils + Dependency-Check Core 1.0.5 Reference Package org.owasp.dependencycheck.utils diff --git a/dependency-check-core/xref/overview-frame.html b/dependency-check-core/xref/overview-frame.html index 82d091fcb..dcdbc84c4 100644 --- a/dependency-check-core/xref/overview-frame.html +++ b/dependency-check-core/xref/overview-frame.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference + Dependency-Check Core 1.0.5 Reference diff --git a/dependency-check-core/xref/overview-summary.html b/dependency-check-core/xref/overview-summary.html index 500676f28..208b34525 100644 --- a/dependency-check-core/xref/overview-summary.html +++ b/dependency-check-core/xref/overview-summary.html @@ -3,7 +3,7 @@ - Dependency-Check Core 1.0.4 Reference + Dependency-Check Core 1.0.5 Reference @@ -24,7 +24,7 @@ -

    Dependency-Check Core 1.0.4 Reference

    +

    Dependency-Check Core 1.0.5 Reference

    diff --git a/dependency-check-jenkins/index.html b/dependency-check-jenkins/index.html index ee9aa5ae4..7938e961f 100644 --- a/dependency-check-jenkins/index.html +++ b/dependency-check-jenkins/index.html @@ -1,13 +1,13 @@ - + dependency-check-jenkins - @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-jenkins/license.html b/dependency-check-jenkins/license.html index e312292a9..65553c313 100644 --- a/dependency-check-jenkins/license.html +++ b/dependency-check-jenkins/license.html @@ -1,13 +1,13 @@ - + dependency-check-jenkins - Project License @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-jenkins/project-info.html b/dependency-check-jenkins/project-info.html index ab9770612..31427a03e 100644 --- a/dependency-check-jenkins/project-info.html +++ b/dependency-check-jenkins/project-info.html @@ -1,13 +1,13 @@ - + dependency-check-jenkins - Project Information @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-jenkins/project-summary.html b/dependency-check-jenkins/project-summary.html index 543b06bac..d70abf372 100644 --- a/dependency-check-jenkins/project-summary.html +++ b/dependency-check-jenkins/project-summary.html @@ -1,13 +1,13 @@ - + dependency-check-jenkins - Project Summary @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -181,13 +181,10 @@ - + - - - -
    dependency-check-jenkins
    Version1.0.4
    1.0.5
    Typejar
    JDK Rev1.6
    +
    pom
    diff --git a/dependency-check-maven/apidocs/allclasses-frame.html b/dependency-check-maven/apidocs/allclasses-frame.html index b31ab521b..7dc9ae9d6 100644 --- a/dependency-check-maven/apidocs/allclasses-frame.html +++ b/dependency-check-maven/apidocs/allclasses-frame.html @@ -2,13 +2,13 @@ - + -All Classes (Dependency-Check Maven Plugin 1.0.4 API) +All Classes (Dependency-Check Maven Plugin 1.0.5 API) - + diff --git a/dependency-check-maven/apidocs/allclasses-noframe.html b/dependency-check-maven/apidocs/allclasses-noframe.html index eb037f994..09bc20346 100644 --- a/dependency-check-maven/apidocs/allclasses-noframe.html +++ b/dependency-check-maven/apidocs/allclasses-noframe.html @@ -2,13 +2,13 @@ - + -All Classes (Dependency-Check Maven Plugin 1.0.4 API) +All Classes (Dependency-Check Maven Plugin 1.0.5 API) - + diff --git a/dependency-check-maven/apidocs/constant-values.html b/dependency-check-maven/apidocs/constant-values.html index 642b09c11..934158e0f 100644 --- a/dependency-check-maven/apidocs/constant-values.html +++ b/dependency-check-maven/apidocs/constant-values.html @@ -2,13 +2,13 @@ - + -Constant Field Values (Dependency-Check Maven Plugin 1.0.4 API) +Constant Field Values (Dependency-Check Maven Plugin 1.0.5 API) - + @@ -16,7 +16,7 @@ Constant Field Values (Dependency-Check Maven Plugin 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Constant Field Values (Dependency-Check Maven Plugin 1.0.4 API)"; + parent.document.title="Constant Field Values (Dependency-Check Maven Plugin 1.0.5 API)"; } } diff --git a/dependency-check-maven/apidocs/deprecated-list.html b/dependency-check-maven/apidocs/deprecated-list.html index df6139c2b..5a630edb3 100644 --- a/dependency-check-maven/apidocs/deprecated-list.html +++ b/dependency-check-maven/apidocs/deprecated-list.html @@ -2,13 +2,13 @@ - + -Deprecated List (Dependency-Check Maven Plugin 1.0.4 API) +Deprecated List (Dependency-Check Maven Plugin 1.0.5 API) - + @@ -16,7 +16,7 @@ Deprecated List (Dependency-Check Maven Plugin 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Deprecated List (Dependency-Check Maven Plugin 1.0.4 API)"; + parent.document.title="Deprecated List (Dependency-Check Maven Plugin 1.0.5 API)"; } } diff --git a/dependency-check-maven/apidocs/help-doc.html b/dependency-check-maven/apidocs/help-doc.html index 848b19e8e..c290160dd 100644 --- a/dependency-check-maven/apidocs/help-doc.html +++ b/dependency-check-maven/apidocs/help-doc.html @@ -2,13 +2,13 @@ - + -API Help (Dependency-Check Maven Plugin 1.0.4 API) +API Help (Dependency-Check Maven Plugin 1.0.5 API) - + @@ -16,7 +16,7 @@ API Help (Dependency-Check Maven Plugin 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="API Help (Dependency-Check Maven Plugin 1.0.4 API)"; + parent.document.title="API Help (Dependency-Check Maven Plugin 1.0.5 API)"; } } diff --git a/dependency-check-maven/apidocs/index-all.html b/dependency-check-maven/apidocs/index-all.html index 6999ac52a..1be579d6e 100644 --- a/dependency-check-maven/apidocs/index-all.html +++ b/dependency-check-maven/apidocs/index-all.html @@ -2,13 +2,13 @@ - + -Index (Dependency-Check Maven Plugin 1.0.4 API) +Index (Dependency-Check Maven Plugin 1.0.5 API) - + @@ -16,7 +16,7 @@ Index (Dependency-Check Maven Plugin 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Index (Dependency-Check Maven Plugin 1.0.4 API)"; + parent.document.title="Index (Dependency-Check Maven Plugin 1.0.5 API)"; } } diff --git a/dependency-check-maven/apidocs/index.html b/dependency-check-maven/apidocs/index.html index 6c5d74be3..d310d0524 100644 --- a/dependency-check-maven/apidocs/index.html +++ b/dependency-check-maven/apidocs/index.html @@ -2,10 +2,10 @@ - + -Dependency-Check Maven Plugin 1.0.4 API +Dependency-Check Maven Plugin 1.0.5 API diff --git a/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/HelpMojo.html b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/HelpMojo.html index 69817c52e..788fd02af 100644 --- a/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/HelpMojo.html +++ b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/HelpMojo.html @@ -2,13 +2,13 @@ - + -HelpMojo (Dependency-Check Maven Plugin 1.0.4 API) +HelpMojo (Dependency-Check Maven Plugin 1.0.5 API) - + @@ -16,7 +16,7 @@ HelpMojo (Dependency-Check Maven Plugin 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="HelpMojo (Dependency-Check Maven Plugin 1.0.4 API)"; + parent.document.title="HelpMojo (Dependency-Check Maven Plugin 1.0.5 API)"; } } diff --git a/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/class-use/DependencyCheckMojo.html b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/class-use/DependencyCheckMojo.html index 41563e7bc..a2e15dc9a 100644 --- a/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/class-use/DependencyCheckMojo.html +++ b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/class-use/DependencyCheckMojo.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.maven.DependencyCheckMojo (Dependency-Check Maven Plugin 1.0.4 API) +Uses of Class org.owasp.dependencycheck.maven.DependencyCheckMojo (Dependency-Check Maven Plugin 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.maven.DependencyCheckMojo (Dependency-Ch function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.maven.DependencyCheckMojo (Dependency-Check Maven Plugin 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.maven.DependencyCheckMojo (Dependency-Check Maven Plugin 1.0.5 API)"; } } diff --git a/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/class-use/HelpMojo.html b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/class-use/HelpMojo.html index d59a9103e..2930070b1 100644 --- a/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/class-use/HelpMojo.html +++ b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/class-use/HelpMojo.html @@ -2,13 +2,13 @@ - + -Uses of Class org.owasp.dependencycheck.maven.HelpMojo (Dependency-Check Maven Plugin 1.0.4 API) +Uses of Class org.owasp.dependencycheck.maven.HelpMojo (Dependency-Check Maven Plugin 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Class org.owasp.dependencycheck.maven.HelpMojo (Dependency-Check Maven P function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class org.owasp.dependencycheck.maven.HelpMojo (Dependency-Check Maven Plugin 1.0.4 API)"; + parent.document.title="Uses of Class org.owasp.dependencycheck.maven.HelpMojo (Dependency-Check Maven Plugin 1.0.5 API)"; } } diff --git a/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-frame.html b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-frame.html index 591b678d4..bb548e6c7 100644 --- a/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-frame.html +++ b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-frame.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.maven (Dependency-Check Maven Plugin 1.0.4 API) +org.owasp.dependencycheck.maven (Dependency-Check Maven Plugin 1.0.5 API) - + diff --git a/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-summary.html b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-summary.html index 762a0fa21..d8e7eefa8 100644 --- a/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-summary.html +++ b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-summary.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.maven (Dependency-Check Maven Plugin 1.0.4 API) +org.owasp.dependencycheck.maven (Dependency-Check Maven Plugin 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.maven (Dependency-Check Maven Plugin 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.maven (Dependency-Check Maven Plugin 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.maven (Dependency-Check Maven Plugin 1.0.5 API)"; } } diff --git a/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-tree.html b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-tree.html index 4fab1b85b..6a0cb347e 100644 --- a/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-tree.html +++ b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-tree.html @@ -2,13 +2,13 @@ - + -org.owasp.dependencycheck.maven Class Hierarchy (Dependency-Check Maven Plugin 1.0.4 API) +org.owasp.dependencycheck.maven Class Hierarchy (Dependency-Check Maven Plugin 1.0.5 API) - + @@ -16,7 +16,7 @@ org.owasp.dependencycheck.maven Class Hierarchy (Dependency-Check Maven Plugin 1 function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="org.owasp.dependencycheck.maven Class Hierarchy (Dependency-Check Maven Plugin 1.0.4 API)"; + parent.document.title="org.owasp.dependencycheck.maven Class Hierarchy (Dependency-Check Maven Plugin 1.0.5 API)"; } } diff --git a/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-use.html b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-use.html index 122f011be..c0d59a6a2 100644 --- a/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-use.html +++ b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-use.html @@ -2,13 +2,13 @@ - + -Uses of Package org.owasp.dependencycheck.maven (Dependency-Check Maven Plugin 1.0.4 API) +Uses of Package org.owasp.dependencycheck.maven (Dependency-Check Maven Plugin 1.0.5 API) - + @@ -16,7 +16,7 @@ Uses of Package org.owasp.dependencycheck.maven (Dependency-Check Maven Plugin 1 function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Package org.owasp.dependencycheck.maven (Dependency-Check Maven Plugin 1.0.4 API)"; + parent.document.title="Uses of Package org.owasp.dependencycheck.maven (Dependency-Check Maven Plugin 1.0.5 API)"; } } diff --git a/dependency-check-maven/apidocs/overview-tree.html b/dependency-check-maven/apidocs/overview-tree.html index c6f39fcce..9efe7dd28 100644 --- a/dependency-check-maven/apidocs/overview-tree.html +++ b/dependency-check-maven/apidocs/overview-tree.html @@ -2,13 +2,13 @@ - + -Class Hierarchy (Dependency-Check Maven Plugin 1.0.4 API) +Class Hierarchy (Dependency-Check Maven Plugin 1.0.5 API) - + @@ -16,7 +16,7 @@ Class Hierarchy (Dependency-Check Maven Plugin 1.0.4 API) function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Class Hierarchy (Dependency-Check Maven Plugin 1.0.4 API)"; + parent.document.title="Class Hierarchy (Dependency-Check Maven Plugin 1.0.5 API)"; } } diff --git a/dependency-check-maven/check-mojo.html b/dependency-check-maven/check-mojo.html index fde2b309b..b52c010f5 100644 --- a/dependency-check-maven/check-mojo.html +++ b/dependency-check-maven/check-mojo.html @@ -1,13 +1,13 @@ - + dependency-check-maven - dependency-check:check @@ -55,7 +55,7 @@
  • - +
  • /
  • @@ -69,8 +69,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -150,7 +150,7 @@

    Full name:

    -

    org.owasp:dependency-check-maven:1.0.4:check

    +

    org.owasp:dependency-check-maven:1.0.5:check

    Description:

    @@ -326,6 +326,17 @@ Reports page
    Default value is: Dependency-Check.
    Us +proxyPassword + +String + +- + +The Proxy password.
    User property is: proxyPassword. + + + + proxyPort String @@ -335,7 +346,7 @@ Reports page
    Default value is: Dependency-Check.
    Us The Proxy Port.
    User property is: proxyPort. - + proxyUrl @@ -346,6 +357,17 @@ Reports page
    Default value is: Dependency-Check.
    Us The Proxy URL.
    User property is: proxyUrl. + + +proxyUsername + +String + +- + +The Proxy username.
    User property is: proxyUsername. + + reportName @@ -489,6 +511,18 @@ Reports page
  • Default: ${project.build.directory}

  • +

    proxyPassword:

    + +
    The Proxy password.
    + +
      + +
    • Type: java.lang.String
    • + +
    • Required: No
    • + +
    • User Property: proxyPassword
    • +

    proxyPort:

    The Proxy Port.
    @@ -513,6 +547,18 @@ Reports page
  • User Property: proxyUrl

  • +

    proxyUsername:

    + +
    The Proxy username.
    + +
      + +
    • Type: java.lang.String
    • + +
    • Required: No
    • + +
    • User Property: proxyUsername
    • +

    reportName:

    The name of the site report destination.
    diff --git a/dependency-check-maven/checkstyle.html b/dependency-check-maven/checkstyle.html index df6f86256..e41e6b5cc 100644 --- a/dependency-check-maven/checkstyle.html +++ b/dependency-check-maven/checkstyle.html @@ -1,13 +1,13 @@ - + dependency-check-maven - Checkstyle Results @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-maven/cobertura/frame-summary-org.owasp.dependencycheck.maven.html b/dependency-check-maven/cobertura/frame-summary-org.owasp.dependencycheck.maven.html index 59015728a..3cc2bd56f 100644 --- a/dependency-check-maven/cobertura/frame-summary-org.owasp.dependencycheck.maven.html +++ b/dependency-check-maven/cobertura/frame-summary-org.owasp.dependencycheck.maven.html @@ -16,7 +16,7 @@ - +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.maven2
    0%
    0/460
    0%
    0/220
    4.048
    org.owasp.dependencycheck.maven2
    0%
    0/466
    0%
    0/228
    4.143
    - + diff --git a/dependency-check-maven/cobertura/frame-summary.html b/dependency-check-maven/cobertura/frame-summary.html index c70570abb..91c0b9521 100644 --- a/dependency-check-maven/cobertura/frame-summary.html +++ b/dependency-check-maven/cobertura/frame-summary.html @@ -16,8 +16,8 @@ - - + +
    Package # Classes Line Coverage Branch Coverage Complexity
    All Packages2
    0%
    0/460
    0%
    0/220
    4.048
    org.owasp.dependencycheck.maven2
    0%
    0/460
    0%
    0/220
    4.048
    All Packages2
    0%
    0/466
    0%
    0/228
    4.143
    org.owasp.dependencycheck.maven2
    0%
    0/466
    0%
    0/228
    4.143
    - + diff --git a/dependency-check-maven/cobertura/org.owasp.dependencycheck.maven.DependencyCheckMojo.html b/dependency-check-maven/cobertura/org.owasp.dependencycheck.maven.DependencyCheckMojo.html index 06b762a81..e0e8edff7 100644 --- a/dependency-check-maven/cobertura/org.owasp.dependencycheck.maven.DependencyCheckMojo.html +++ b/dependency-check-maven/cobertura/org.owasp.dependencycheck.maven.DependencyCheckMojo.html @@ -12,7 +12,7 @@
     
    - +
    Classes in this File Line Coverage Branch Coverage Complexity
    DependencyCheckMojo
    0%
    0/312
    0%
    0/114
    3.37
    DependencyCheckMojo
    0%
    0/318
    0%
    0/122
    3.519
     
    @@ -337,492 +337,494 @@  163  
         /**
     164   -
          * The Connection Timeout.
    +
          * The Proxy username.
     165  
          */
     166  0
         @SuppressWarnings("CanBeFinal")
     167   -
         @Parameter(property = "connectionTimeout", defaultValue = "", required = false)
    +
         @Parameter(property = "proxyUsername", defaultValue = "", required = false)
     168   -
         private String connectionTimeout = null;
    +
         private String proxyUsername = null;
     169   -
     
    -  170   -
         // </editor-fold>
    -  171  
         /**
    -  172   -
          * Executes the Dependency-Check on the dependent libraries.
    -  173   -
          *
    -  174   -
          * @return the Engine used to scan the dependencies.
    -  175   +  170   +
          * The Proxy password.
    +  171  
          */
    +  172  0
         @SuppressWarnings("CanBeFinal")
    +  173   +
         @Parameter(property = "proxyPassword", defaultValue = "", required = false)
    +  174   +
         private String proxyPassword = null;
    +  175   +
         /**
     176   -
         private Engine executeDependencyCheck() {
    +
          * The Connection Timeout.
     177   -
     
    -  178  0
             final InputStream in = DependencyCheckMojo.class.getClassLoader().getResourceAsStream(LOG_PROPERTIES_FILE);
    -  179  0
             LogUtils.prepareLogger(in, logFile);
    +
          */
    +  178  0
         @SuppressWarnings("CanBeFinal")
    +  179   +
         @Parameter(property = "connectionTimeout", defaultValue = "", required = false)
     180   +
         private String connectionTimeout = null;
    +  181  
     
    -  181  0
             populateSettings();
    -  182  0
             final Engine engine = new Engine();
    -  183  0
             final Set<Artifact> artifacts = project.getArtifacts();
    -  184  0
             for (Artifact a : artifacts) {
    -  185  0
                 if (!TEST_SCOPE.equals(a.getScope())) {
    -  186  0
                     engine.scan(a.getFile().getAbsolutePath());
    +  182   +
         // </editor-fold>
    +  183   +
         /**
    +  184   +
          * Executes the Dependency-Check on the dependent libraries.
    +  185   +
          *
    +  186   +
          * @return the Engine used to scan the dependencies.
     187   -
                 }
    +
          */
     188   -
             }
    -  189  0
             engine.analyzeDependencies();
    -  190  0
             return engine;
    -  191   -
         }
    +
         private Engine executeDependencyCheck() {
    +  189   +
     
    +  190  0
             final InputStream in = DependencyCheckMojo.class.getClassLoader().getResourceAsStream(LOG_PROPERTIES_FILE);
    +  191  0
             LogUtils.prepareLogger(in, logFile);
     192  
     
    -  193   -
         /**
    -  194   -
          * Generates the reports for a given dependency-check engine.
    -  195   -
          *
    -  196   -
          * @param engine a dependency-check engine
    -  197   -
          */
    -  198   -
         private void generateExternalReports(Engine engine) {
    -  199  0
             final ReportGenerator r = new ReportGenerator(project.getName(), engine.getDependencies(), engine.getAnalyzers());
    +  193  0
             populateSettings();
    +  194  0
             final Engine engine = new Engine();
    +  195  0
             final Set<Artifact> artifacts = project.getArtifacts();
    +  196  0
             for (Artifact a : artifacts) {
    +  197  0
                 if (!TEST_SCOPE.equals(a.getScope())) {
    +  198  0
                     engine.scan(a.getFile().getAbsolutePath());
    +  199   +
                 }
     200   -
             try {
    -  201  0
                 r.generateReports(outputDirectory.getCanonicalPath(), format);
    -  202  0
             } catch (IOException ex) {
    -  203  0
                 Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.SEVERE, null, ex);
    -  204  0
             } catch (Exception ex) {
    -  205  0
                 Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.SEVERE, null, ex);
    -  206  0
             }
    -  207  0
         }
    -  208   +
             }
    +  201  0
             engine.analyzeDependencies();
    +  202  0
             return engine;
    +  203   +
         }
    +  204  
     
    -  209   +  205  
         /**
    -  210   -
          * Generates a dependency-check report using the Maven Site format.
    -  211   +  206   +
          * Generates the reports for a given dependency-check engine.
    +  207  
          *
    -  212   -
          * @param engine the engine used to scan the dependencies
    -  213   -
          * @param sink the sink to write the data to
    -  214   +  208   +
          * @param engine a dependency-check engine
    +  209  
          */
    -  215   -
         private void generateMavenSiteReport(final Engine engine, Sink sink) {
    -  216  0
             final List<Dependency> dependencies = engine.getDependencies();
    -  217   -
     
    -  218  0
             writeSiteReportHeader(sink, project.getName());
    -  219  0
             writeSiteReportTOC(sink, dependencies);
    +  210   +
         private void generateExternalReports(Engine engine) {
    +  211  0
             final ReportGenerator r = new ReportGenerator(project.getName(), engine.getDependencies(), engine.getAnalyzers());
    +  212   +
             try {
    +  213  0
                 r.generateReports(outputDirectory.getCanonicalPath(), format);
    +  214  0
             } catch (IOException ex) {
    +  215  0
                 Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.SEVERE, null, ex);
    +  216  0
             } catch (Exception ex) {
    +  217  0
                 Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.SEVERE, null, ex);
    +  218  0
             }
    +  219  0
         }
     220  
     
    -  221  0
             int cnt = 0;
    -  222  0
             for (Dependency d : dependencies) {
    -  223  0
                 writeSiteReportDependencyHeader(sink, d);
    -  224  0
                 cnt = writeSiteReportDependencyAnalysisExceptions(d, cnt, sink);
    -  225  0
                 cnt = writeSiteReportDependencyEvidenceUsed(d, cnt, sink);
    -  226  0
                 cnt = writeSiteReportDependencyRelatedDependencies(d, cnt, sink);
    -  227  0
                 writeSiteReportDependencyIdentifiers(d, sink);
    -  228  0
                 writeSiteReportDependencyVulnerabilities(d, sink, cnt);
    +  221   +
         /**
    +  222   +
          * Generates a dependency-check report using the Maven Site format.
    +  223   +
          *
    +  224   +
          * @param engine the engine used to scan the dependencies
    +  225   +
          * @param sink the sink to write the data to
    +  226   +
          */
    +  227   +
         private void generateMavenSiteReport(final Engine engine, Sink sink) {
    +  228  0
             final List<Dependency> dependencies = engine.getDependencies();
     229   -
             }
    -  230  0
             sink.body_();
    -  231  0
         }
    +
     
    +  230  0
             writeSiteReportHeader(sink, project.getName());
    +  231  0
             writeSiteReportTOC(sink, dependencies);
     232  
     
    -  233   -
         // <editor-fold defaultstate="collapsed" desc="various writeXXXXX methods to generate the Site Report">
    -  234   -
         /**
    -  235   -
          * Writes the vulnerabilities to the site report.
    -  236   -
          *
    -  237   -
          * @param d the dependency
    -  238   -
          * @param sink the sink to write the data to
    -  239   -
          * @param collapsibleHeaderCount the collapsible header count
    -  240   -
          */
    +  233  0
             int cnt = 0;
    +  234  0
             for (Dependency d : dependencies) {
    +  235  0
                 writeSiteReportDependencyHeader(sink, d);
    +  236  0
                 cnt = writeSiteReportDependencyAnalysisExceptions(d, cnt, sink);
    +  237  0
                 cnt = writeSiteReportDependencyEvidenceUsed(d, cnt, sink);
    +  238  0
                 cnt = writeSiteReportDependencyRelatedDependencies(d, cnt, sink);
    +  239  0
                 writeSiteReportDependencyIdentifiers(d, sink);
    +  240  0
                 writeSiteReportDependencyVulnerabilities(d, sink, cnt);
     241   -
         private void writeSiteReportDependencyVulnerabilities(Dependency d, Sink sink, int collapsibleHeaderCount) {
    -  242  0
             int cnt = collapsibleHeaderCount;
    -  243  0
             if (d.getVulnerabilities() != null && !d.getVulnerabilities().isEmpty()) {
    -  244  0
                 for (Vulnerability v : d.getVulnerabilities()) {
    +
             }
    +  242  0
             sink.body_();
    +  243  0
         }
    +  244   +
     
     245   -
     
    -  246  0
                     sink.paragraph();
    -  247  0
                     sink.bold();
    +
         // <editor-fold defaultstate="collapsed" desc="various writeXXXXX methods to generate the Site Report">
    +  246   +
         /**
    +  247   +
          * Writes the vulnerabilities to the site report.
     248   +
          *
    +  249   +
          * @param d the dependency
    +  250   +
          * @param sink the sink to write the data to
    +  251   +
          * @param collapsibleHeaderCount the collapsible header count
    +  252   +
          */
    +  253   +
         private void writeSiteReportDependencyVulnerabilities(Dependency d, Sink sink, int collapsibleHeaderCount) {
    +  254  0
             int cnt = collapsibleHeaderCount;
    +  255  0
             if (d.getVulnerabilities() != null && !d.getVulnerabilities().isEmpty()) {
    +  256  0
                 for (Vulnerability v : d.getVulnerabilities()) {
    +  257   +
     
    +  258  0
                     sink.paragraph();
    +  259  0
                     sink.bold();
    +  260  
                     try {
    -  249  0
                         sink.link("http://web.nvd.nist.gov/view/vuln/detail?vulnId=" + URLEncoder.encode(v.getName(), "US-ASCII"));
    -  250  0
                         sink.text(v.getName());
    -  251  0
                         sink.link_();
    -  252  0
                         sink.bold_();
    -  253  0
                     } catch (UnsupportedEncodingException ex) {
    -  254  0
                         sink.text(v.getName());
    -  255  0
                         sink.bold_();
    -  256  0
                         sink.lineBreak();
    -  257  0
                         sink.text("http://web.nvd.nist.gov/view/vuln/detail?vulnId=" + v.getName());
    -  258  0
                     }
    -  259  0
                     sink.paragraph_();
    -  260  0
                     sink.paragraph();
    -  261  0
                     sink.text("Severity: ");
    -  262  0
                     if (v.getCvssScore() < 4.0) {
    -  263  0
                         sink.text("Low");
    -  264   +  261  0
                         sink.link("http://web.nvd.nist.gov/view/vuln/detail?vulnId=" + URLEncoder.encode(v.getName(), "US-ASCII"));
    +  262  0
                         sink.text(v.getName());
    +  263  0
                         sink.link_();
    +  264  0
                         sink.bold_();
    +  265  0
                     } catch (UnsupportedEncodingException ex) {
    +  266  0
                         sink.text(v.getName());
    +  267  0
                         sink.bold_();
    +  268  0
                         sink.lineBreak();
    +  269  0
                         sink.text("http://web.nvd.nist.gov/view/vuln/detail?vulnId=" + v.getName());
    +  270  0
                     }
    +  271  0
                     sink.paragraph_();
    +  272  0
                     sink.paragraph();
    +  273  0
                     sink.text("Severity: ");
    +  274  0
                     if (v.getCvssScore() < 4.0) {
    +  275  0
                         sink.text("Low");
    +  276  
                     } else {
    -  265  0
                         if (v.getCvssScore() >= 7.0) {
    -  266  0
                             sink.text("High");
    -  267   +  277  0
                         if (v.getCvssScore() >= 7.0) {
    +  278  0
                             sink.text("High");
    +  279  
                         } else {
    -  268  0
                             sink.text("Medium");
    -  269   +  280  0
                             sink.text("Medium");
    +  281  
                         }
    -  270   +  282  
                     }
    -  271  0
                     sink.lineBreak();
    -  272  0
                     sink.text("CVSS Score: " + v.getCvssScore());
    -  273  0
                     if (v.getCwe() != null && !v.getCwe().isEmpty()) {
    -  274  0
                         sink.lineBreak();
    -  275  0
                         sink.text("CWE: ");
    -  276  0
                         sink.text(v.getCwe());
    -  277   +  283  0
                     sink.lineBreak();
    +  284  0
                     sink.text("CVSS Score: " + v.getCvssScore());
    +  285  0
                     if (v.getCwe() != null && !v.getCwe().isEmpty()) {
    +  286  0
                         sink.lineBreak();
    +  287  0
                         sink.text("CWE: ");
    +  288  0
                         sink.text(v.getCwe());
    +  289  
                     }
    -  278  0
                     sink.paragraph_();
    -  279  0
                     sink.paragraph();
    -  280  0
                     sink.text(v.getDescription());
    -  281  0
                     if (v.getReferences() != null && !v.getReferences().isEmpty()) {
    -  282  0
                         sink.list();
    -  283  0
                         for (Reference ref : v.getReferences()) {
    -  284  0
                             sink.listItem();
    -  285  0
                             sink.text(ref.getSource());
    -  286  0
                             sink.text(" - ");
    -  287  0
                             sink.link(ref.getUrl());
    -  288  0
                             sink.text(ref.getName());
    -  289  0
                             sink.link_();
    -  290  0
                             sink.listItem_();
    -  291   +  290  0
                     sink.paragraph_();
    +  291  0
                     sink.paragraph();
    +  292  0
                     sink.text(v.getDescription());
    +  293  0
                     if (v.getReferences() != null && !v.getReferences().isEmpty()) {
    +  294  0
                         sink.list();
    +  295  0
                         for (Reference ref : v.getReferences()) {
    +  296  0
                             sink.listItem();
    +  297  0
                             sink.text(ref.getSource());
    +  298  0
                             sink.text(" - ");
    +  299  0
                             sink.link(ref.getUrl());
    +  300  0
                             sink.text(ref.getName());
    +  301  0
                             sink.link_();
    +  302  0
                             sink.listItem_();
    +  303  
                         }
    -  292  0
                         sink.list_();
    -  293   +  304  0
                         sink.list_();
    +  305  
                     }
    -  294  0
                     sink.paragraph_();
    -  295  0
                     if (v.getVulnerableSoftware() != null && !v.getVulnerableSoftware().isEmpty()) {
    -  296  0
                         sink.paragraph();
    -  297   +  306  0
                     sink.paragraph_();
    +  307  0
                     if (v.getVulnerableSoftware() != null && !v.getVulnerableSoftware().isEmpty()) {
    +  308  0
                         sink.paragraph();
    +  309  
     
    -  298  0
                         cnt += 1;
    -  299  0
                         sink.rawText("Vulnerable Software <a href=\"javascript:toggleElement(this, 'vulnSoft" + cnt + "')\">[-]</a>");
    -  300  0
                         sink.rawText("<div id=\"vulnSoft" + cnt + "\" style=\"display:block\">");
    -  301  0
                         sink.list();
    -  302  0
                         for (VulnerableSoftware vs : v.getVulnerableSoftware()) {
    -  303  0
                             sink.listItem();
    -  304   +  310  0
                         cnt += 1;
    +  311  0
                         sink.rawText("Vulnerable Software <a href=\"javascript:toggleElement(this, 'vulnSoft" + cnt + "')\">[-]</a>");
    +  312  0
                         sink.rawText("<div id=\"vulnSoft" + cnt + "\" style=\"display:block\">");
    +  313  0
                         sink.list();
    +  314  0
                         for (VulnerableSoftware vs : v.getVulnerableSoftware()) {
    +  315  0
                             sink.listItem();
    +  316  
                             try {
    -  305  0
                                 sink.link("http://web.nvd.nist.gov/view/vuln/search-results?cpe=" + URLEncoder.encode(vs.getName(), "US-ASCII"));
    -  306  0
                                 sink.text(vs.getName());
    -  307  0
                                 sink.link_();
    -  308  0
                                 if (vs.hasPreviousVersion()) {
    -  309  0
                                     sink.text(" and all previous versions.");
    -  310   +  317  0
                                 sink.link("http://web.nvd.nist.gov/view/vuln/search-results?cpe=" + URLEncoder.encode(vs.getName(), "US-ASCII"));
    +  318  0
                                 sink.text(vs.getName());
    +  319  0
                                 sink.link_();
    +  320  0
                                 if (vs.hasPreviousVersion()) {
    +  321  0
                                     sink.text(" and all previous versions.");
    +  322  
                                 }
    -  311  0
                             } catch (UnsupportedEncodingException ex) {
    -  312  0
                                 sink.text(vs.getName());
    -  313  0
                                 if (vs.hasPreviousVersion()) {
    -  314  0
                                     sink.text(" and all previous versions.");
    -  315   +  323  0
                             } catch (UnsupportedEncodingException ex) {
    +  324  0
                                 sink.text(vs.getName());
    +  325  0
                                 if (vs.hasPreviousVersion()) {
    +  326  0
                                     sink.text(" and all previous versions.");
    +  327  
                                 }
    -  316  0
                                 sink.text(" (http://web.nvd.nist.gov/view/vuln/search-results?cpe=" + vs.getName() + ")");
    -  317  0
                             }
    -  318   -
     
    -  319  0
                             sink.listItem_();
    -  320   -
                         }
    -  321  0
                         sink.list_();
    -  322  0
                         sink.rawText("</div>");
    -  323  0
                         sink.paragraph_();
    -  324   -
                     }
    -  325   -
                 }
    -  326   -
             }
    -  327  0
         }
    -  328   -
     
    -  329   -
         /**
    +  328  0
                                 sink.text(" (http://web.nvd.nist.gov/view/vuln/search-results?cpe=" + vs.getName() + ")");
    +  329  0
                             }
     330   -
          * Writes the identifiers to the site report.
    -  331   -
          *
    +
     
    +  331  0
                             sink.listItem_();
     332   +
                         }
    +  333  0
                         sink.list_();
    +  334  0
                         sink.rawText("</div>");
    +  335  0
                         sink.paragraph_();
    +  336   +
                     }
    +  337   +
                 }
    +  338   +
             }
    +  339  0
         }
    +  340   +
     
    +  341   +
         /**
    +  342   +
          * Writes the identifiers to the site report.
    +  343   +
          *
    +  344  
          * @param d the dependency
    -  333   +  345  
          * @param sink the sink to write the data to
    -  334   +  346  
          */
    -  335   +  347  
         private void writeSiteReportDependencyIdentifiers(Dependency d, Sink sink) {
    -  336  0
             if (d.getIdentifiers() != null && !d.getIdentifiers().isEmpty()) {
    -  337  0
                 sink.sectionTitle4();
    -  338  0
                 sink.text("Identifiers");
    -  339  0
                 sink.sectionTitle4_();
    -  340  0
                 sink.list();
    -  341  0
                 for (Identifier i : d.getIdentifiers()) {
    -  342  0
                     sink.listItem();
    -  343  0
                     sink.text(i.getType());
    -  344  0
                     sink.text(": ");
    -  345  0
                     if (i.getUrl() != null && i.getUrl().length() > 0) {
    -  346  0
                         sink.link(i.getUrl());
    -  347  0
                         sink.text(i.getValue());
    -  348  0
                         sink.link_();
    -  349   -
                     } else {
    -  350  0
                         sink.text(i.getValue());
    -  351   -
                     }
    -  352  0
                     if (i.getDescription() != null && i.getDescription().length() > 0) {
    -  353  0
                         sink.lineBreak();
    -  354  0
                         sink.text(i.getDescription());
    -  355   -
                     }
    -  356  0
                     sink.listItem_();
    -  357   -
                 }
    -  358  0
                 sink.list_();
    -  359   -
             }
    -  360  0
         }
    +  348  0
             if (d.getIdentifiers() != null && !d.getIdentifiers().isEmpty()) {
    +  349  0
                 sink.sectionTitle4();
    +  350  0
                 sink.text("Identifiers");
    +  351  0
                 sink.sectionTitle4_();
    +  352  0
                 sink.list();
    +  353  0
                 for (Identifier i : d.getIdentifiers()) {
    +  354  0
                     sink.listItem();
    +  355  0
                     sink.text(i.getType());
    +  356  0
                     sink.text(": ");
    +  357  0
                     if (i.getUrl() != null && i.getUrl().length() > 0) {
    +  358  0
                         sink.link(i.getUrl());
    +  359  0
                         sink.text(i.getValue());
    +  360  0
                         sink.link_();
     361   -
     
    -  362   -
         /**
    +
                     } else {
    +  362  0
                         sink.text(i.getValue());
     363   -
          * Writes the related dependencies to the site report.
    -  364   -
          *
    -  365   -
          * @param d the dependency
    -  366   -
          * @param sink the sink to write the data to
    +
                     }
    +  364  0
                     if (i.getDescription() != null && i.getDescription().length() > 0) {
    +  365  0
                         sink.lineBreak();
    +  366  0
                         sink.text(i.getDescription());
     367   -
          * @param collapsibleHeaderCount the collapsible header count
    -  368   -
          * @return the collapsible header count
    +
                     }
    +  368  0
                     sink.listItem_();
     369   +
                 }
    +  370  0
                 sink.list_();
    +  371   +
             }
    +  372  0
         }
    +  373   +
     
    +  374   +
         /**
    +  375   +
          * Writes the related dependencies to the site report.
    +  376   +
          *
    +  377   +
          * @param d the dependency
    +  378   +
          * @param sink the sink to write the data to
    +  379   +
          * @param collapsibleHeaderCount the collapsible header count
    +  380   +
          * @return the collapsible header count
    +  381  
          */
    -  370   +  382  
         private int writeSiteReportDependencyRelatedDependencies(Dependency d, int collapsibleHeaderCount, Sink sink) {
    -  371  0
             int cnt = collapsibleHeaderCount;
    -  372  0
             if (d.getRelatedDependencies() != null && !d.getRelatedDependencies().isEmpty()) {
    -  373  0
                 cnt += 1;
    -  374  0
                 sink.sectionTitle4();
    -  375  0
                 sink.rawText("Related Dependencies <a href=\"javascript:toggleElement(this, 'related" + cnt + "')\">[+]</a>");
    -  376  0
                 sink.sectionTitle4_();
    -  377  0
                 sink.rawText("<div id=\"related" + cnt + "\" style=\"display:none\">");
    -  378  0
                 sink.list();
    -  379  0
                 for (Dependency r : d.getRelatedDependencies()) {
    -  380  0
                     sink.listItem();
    -  381  0
                     sink.text(r.getFileName());
    -  382  0
                     sink.list();
    -  383  0
                     writeListItem(sink, "File Path: " + r.getFilePath());
    -  384  0
                     writeListItem(sink, "SHA1: " + r.getSha1sum());
    -  385  0
                     writeListItem(sink, "MD5: " + r.getMd5sum());
    -  386  0
                     sink.list_();
    -  387  0
                     sink.listItem_();
    -  388   -
                 }
    -  389  0
                 sink.list_();
    -  390  0
                 sink.rawText("</div>");
    -  391   -
             }
    -  392  0
             return cnt;
    -  393   -
         }
    -  394   -
     
    -  395   -
         /**
    -  396   -
          * Writes the evidence used to the site report.
    -  397   -
          *
    -  398   -
          * @param d the dependency
    -  399   -
          * @param sink the sink to write the data to
    +  383  0
             int cnt = collapsibleHeaderCount;
    +  384  0
             if (d.getRelatedDependencies() != null && !d.getRelatedDependencies().isEmpty()) {
    +  385  0
                 cnt += 1;
    +  386  0
                 sink.sectionTitle4();
    +  387  0
                 sink.rawText("Related Dependencies <a href=\"javascript:toggleElement(this, 'related" + cnt + "')\">[+]</a>");
    +  388  0
                 sink.sectionTitle4_();
    +  389  0
                 sink.rawText("<div id=\"related" + cnt + "\" style=\"display:none\">");
    +  390  0
                 sink.list();
    +  391  0
                 for (Dependency r : d.getRelatedDependencies()) {
    +  392  0
                     sink.listItem();
    +  393  0
                     sink.text(r.getFileName());
    +  394  0
                     sink.list();
    +  395  0
                     writeListItem(sink, "File Path: " + r.getFilePath());
    +  396  0
                     writeListItem(sink, "SHA1: " + r.getSha1sum());
    +  397  0
                     writeListItem(sink, "MD5: " + r.getMd5sum());
    +  398  0
                     sink.list_();
    +  399  0
                     sink.listItem_();
     400   -
          * @param collapsibleHeaderCount the collapsible header count
    -  401   -
          * @return the collapsible header count
    -  402   -
          */
    +
                 }
    +  401  0
                 sink.list_();
    +  402  0
                 sink.rawText("</div>");
     403   -
         private int writeSiteReportDependencyEvidenceUsed(Dependency d, int collapsibleHeaderCount, Sink sink) {
    -  404  0
             int cnt = collapsibleHeaderCount;
    -  405  0
             if (d.getEvidenceUsed() != null && d.getEvidenceUsed().size() > 0) {
    -  406  0
                 cnt += 1;
    -  407  0
                 sink.sectionTitle4();
    -  408  0
                 sink.rawText("Evidence Collected <a href=\"javascript:toggleElement(this, 'evidence" + cnt + "')\">[+]</a>");
    -  409  0
                 sink.sectionTitle4_();
    -  410  0
                 sink.rawText("<div id=\"evidence" + cnt + "\" style=\"display:none\">");
    -  411  0
                 sink.table();
    -  412  0
                 sink.tableRow();
    -  413  0
                 writeTableHeaderCell(sink, "Source");
    -  414  0
                 writeTableHeaderCell(sink, "Name");
    -  415  0
                 writeTableHeaderCell(sink, "Value");
    -  416  0
                 sink.tableRow_();
    -  417  0
                 for (Evidence e : d.getEvidenceUsed()) {
    -  418  0
                     sink.tableRow();
    -  419  0
                     writeTableCell(sink, e.getSource());
    -  420  0
                     writeTableCell(sink, e.getName());
    -  421  0
                     writeTableCell(sink, e.getValue());
    -  422  0
                     sink.tableRow_();
    -  423   -
                 }
    -  424  0
                 sink.table_();
    -  425  0
                 sink.rawText("</div>");
    -  426  
             }
    -  427  0
             return cnt;
    -  428   +  404  0
             return cnt;
    +  405  
         }
    -  429   +  406  
     
    -  430   +  407  
         /**
    -  431   -
          * Writes the analysis exceptions generated during analysis to the site
    -  432   -
          * report.
    -  433   +  408   +
          * Writes the evidence used to the site report.
    +  409  
          *
    -  434   +  410  
          * @param d the dependency
    -  435   +  411  
          * @param sink the sink to write the data to
    -  436   +  412  
          * @param collapsibleHeaderCount the collapsible header count
    -  437   +  413  
          * @return the collapsible header count
    +  414   +
          */
    +  415   +
         private int writeSiteReportDependencyEvidenceUsed(Dependency d, int collapsibleHeaderCount, Sink sink) {
    +  416  0
             int cnt = collapsibleHeaderCount;
    +  417  0
             if (d.getEvidenceUsed() != null && d.getEvidenceUsed().size() > 0) {
    +  418  0
                 cnt += 1;
    +  419  0
                 sink.sectionTitle4();
    +  420  0
                 sink.rawText("Evidence Collected <a href=\"javascript:toggleElement(this, 'evidence" + cnt + "')\">[+]</a>");
    +  421  0
                 sink.sectionTitle4_();
    +  422  0
                 sink.rawText("<div id=\"evidence" + cnt + "\" style=\"display:none\">");
    +  423  0
                 sink.table();
    +  424  0
                 sink.tableRow();
    +  425  0
                 writeTableHeaderCell(sink, "Source");
    +  426  0
                 writeTableHeaderCell(sink, "Name");
    +  427  0
                 writeTableHeaderCell(sink, "Value");
    +  428  0
                 sink.tableRow_();
    +  429  0
                 for (Evidence e : d.getEvidenceUsed()) {
    +  430  0
                     sink.tableRow();
    +  431  0
                     writeTableCell(sink, e.getSource());
    +  432  0
                     writeTableCell(sink, e.getName());
    +  433  0
                     writeTableCell(sink, e.getValue());
    +  434  0
                     sink.tableRow_();
    +  435   +
                 }
    +  436  0
                 sink.table_();
    +  437  0
                 sink.rawText("</div>");
     438   -
          */
    -  439   -
         private int writeSiteReportDependencyAnalysisExceptions(Dependency d, int collapsibleHeaderCount, Sink sink) {
    -  440  0
             int cnt = collapsibleHeaderCount;
    -  441  0
             if (d.getAnalysisExceptions() != null && !d.getAnalysisExceptions().isEmpty()) {
    -  442  0
                 cnt += 1;
    -  443  0
                 sink.sectionTitle4();
    -  444  0
                 sink.rawText("<font style=\"color:red\">Errors occurred during analysis:</font> <a href=\"javascript:toggleElement(this, 'errors"
    -  445   -
                         + cnt + "')\">[+]</a>");
    -  446  0
                 sink.sectionTitle4_();
    -  447  0
                 sink.rawText("<div id=\"errors" + cnt + "\">");
    -  448  0
                 sink.list();
    -  449  0
                 for (Exception e : d.getAnalysisExceptions()) {
    -  450  0
                     sink.listItem();
    -  451  0
                     sink.text(e.getMessage());
    -  452  0
                     sink.listItem_();
    -  453   -
                 }
    -  454  0
                 sink.list_();
    -  455  0
                 sink.rawText("</div>");
    -  456  
             }
    -  457  0
             return cnt;
    -  458   +  439  0
             return cnt;
    +  440  
         }
    -  459   +  441  
     
    -  460   +  442  
         /**
    -  461   -
          * Writes the dependency header to the site report.
    -  462   +  443   +
          * Writes the analysis exceptions generated during analysis to the site
    +  444   +
          * report.
    +  445  
          *
    -  463   +  446  
          * @param d the dependency
    -  464   +  447  
          * @param sink the sink to write the data to
    +  448   +
          * @param collapsibleHeaderCount the collapsible header count
    +  449   +
          * @return the collapsible header count
    +  450   +
          */
    +  451   +
         private int writeSiteReportDependencyAnalysisExceptions(Dependency d, int collapsibleHeaderCount, Sink sink) {
    +  452  0
             int cnt = collapsibleHeaderCount;
    +  453  0
             if (d.getAnalysisExceptions() != null && !d.getAnalysisExceptions().isEmpty()) {
    +  454  0
                 cnt += 1;
    +  455  0
                 sink.sectionTitle4();
    +  456  0
                 sink.rawText("<font style=\"color:red\">Errors occurred during analysis:</font> <a href=\"javascript:toggleElement(this, 'errors"
    +  457   +
                         + cnt + "')\">[+]</a>");
    +  458  0
                 sink.sectionTitle4_();
    +  459  0
                 sink.rawText("<div id=\"errors" + cnt + "\">");
    +  460  0
                 sink.list();
    +  461  0
                 for (Exception e : d.getAnalysisExceptions()) {
    +  462  0
                     sink.listItem();
    +  463  0
                     sink.text(e.getMessage());
    +  464  0
                     sink.listItem_();
     465   -
          */
    -  466   -
         private void writeSiteReportDependencyHeader(Sink sink, Dependency d) {
    -  467  0
             sink.sectionTitle2();
    -  468  0
             sink.anchor("sha1" + d.getSha1sum());
    -  469  0
             sink.text(d.getFileName());
    -  470  0
             sink.anchor_();
    -  471  0
             sink.sectionTitle2_();
    -  472  0
             if (d.getDescription() != null && d.getDescription().length() > 0) {
    -  473  0
                 sink.paragraph();
    -  474  0
                 sink.bold();
    -  475  0
                 sink.text("Description: ");
    -  476  0
                 sink.bold_();
    -  477  0
                 sink.text(d.getDescription());
    -  478  0
                 sink.paragraph_();
    -  479   -
             }
    -  480  0
             if (d.getLicense() != null && d.getLicense().length() > 0) {
    -  481  0
                 sink.paragraph();
    -  482  0
                 sink.bold();
    -  483  0
                 sink.text("License: ");
    -  484  0
                 sink.bold_();
    -  485  0
                 if (d.getLicense().startsWith("http://") && !d.getLicense().contains(" ")) {
    -  486  0
                     sink.link(d.getLicense());
    -  487  0
                     sink.text(d.getLicense());
    -  488  0
                     sink.link_();
    -  489   -
                 } else {
    -  490  0
                     sink.text(d.getLicense());
    -  491  
                 }
    -  492  0
                 sink.paragraph_();
    -  493   +  466  0
                 sink.list_();
    +  467  0
                 sink.rawText("</div>");
    +  468  
             }
    -  494  0
         }
    -  495   +  469  0
             return cnt;
    +  470   +
         }
    +  471  
     
    -  496   +  472  
         /**
    -  497   -
          * Adds a list item to the site report.
    -  498   +  473   +
          * Writes the dependency header to the site report.
    +  474  
          *
    -  499   +  475   +
          * @param d the dependency
    +  476  
          * @param sink the sink to write the data to
    -  500   -
          * @param text the text to write
    -  501   +  477  
          */
    -  502   -
         private void writeListItem(Sink sink, String text) {
    -  503  0
             sink.listItem();
    -  504  0
             sink.text(text);
    -  505  0
             sink.listItem_();
    +  478   +
         private void writeSiteReportDependencyHeader(Sink sink, Dependency d) {
    +  479  0
             sink.sectionTitle2();
    +  480  0
             sink.anchor("sha1" + d.getSha1sum());
    +  481  0
             sink.text(d.getFileName());
    +  482  0
             sink.anchor_();
    +  483  0
             sink.sectionTitle2_();
    +  484  0
             if (d.getDescription() != null && d.getDescription().length() > 0) {
    +  485  0
                 sink.paragraph();
    +  486  0
                 sink.bold();
    +  487  0
                 sink.text("Description: ");
    +  488  0
                 sink.bold_();
    +  489  0
                 sink.text(d.getDescription());
    +  490  0
                 sink.paragraph_();
    +  491   +
             }
    +  492  0
             if (d.getLicense() != null && d.getLicense().length() > 0) {
    +  493  0
                 sink.paragraph();
    +  494  0
                 sink.bold();
    +  495  0
                 sink.text("License: ");
    +  496  0
                 sink.bold_();
    +  497  0
                 if (d.getLicense().startsWith("http://") && !d.getLicense().contains(" ")) {
    +  498  0
                     sink.link(d.getLicense());
    +  499  0
                     sink.text(d.getLicense());
    +  500  0
                     sink.link_();
    +  501   +
                 } else {
    +  502  0
                     sink.text(d.getLicense());
    +  503   +
                 }
    +  504  0
                 sink.paragraph_();
    +  505   +
             }
     506  0
         }
     507  
     
     508  
         /**
     509   -
          * Adds a table cell to the site report.
    +
          * Adds a list item to the site report.
     510  
          *
     511   @@ -832,17 +834,17 @@  513  
          */
     514   -
         private void writeTableCell(Sink sink, String text) {
    -  515  0
             sink.tableCell();
    +
         private void writeListItem(Sink sink, String text) {
    +  515  0
             sink.listItem();
     516  0
             sink.text(text);
    -  517  0
             sink.tableCell_();
    +  517  0
             sink.listItem_();
     518  0
         }
     519  
     
     520  
         /**
     521   -
          * Adds a table header cell to the site report.
    +
          * Adds a table cell to the site report.
     522  
          *
     523   @@ -852,307 +854,302 @@  525  
          */
     526   -
         private void writeTableHeaderCell(Sink sink, String text) {
    -  527  0
             sink.tableHeaderCell();
    +
         private void writeTableCell(Sink sink, String text) {
    +  527  0
             sink.tableCell();
     528  0
             sink.text(text);
    -  529  0
             sink.tableHeaderCell_();
    +  529  0
             sink.tableCell_();
     530  0
         }
     531  
     
     532  
         /**
     533   -
          * Writes the TOC for the site report.
    +
          * Adds a table header cell to the site report.
     534  
          *
     535  
          * @param sink the sink to write the data to
     536   -
          * @param dependencies the dependencies that are being reported on
    +
          * @param text the text to write
     537  
          */
     538   -
         private void writeSiteReportTOC(Sink sink, final List<Dependency> dependencies) {
    -  539  0
             sink.list();
    -  540  0
             for (Dependency d : dependencies) {
    -  541  0
                 sink.listItem();
    -  542  0
                 sink.link("#sha1" + d.getSha1sum());
    -  543  0
                 sink.text(d.getFileName());
    -  544  0
                 sink.link_();
    -  545  0
                 if (!d.getVulnerabilities().isEmpty()) {
    -  546  0
                     sink.rawText(" <font style=\"color:red\">•</font>");
    -  547   -
                 }
    -  548  0
                 if (!d.getRelatedDependencies().isEmpty()) {
    -  549  0
                     sink.list();
    -  550  0
                     for (Dependency r : d.getRelatedDependencies()) {
    -  551  0
                         writeListItem(sink, r.getFileName());
    -  552   -
                     }
    -  553  0
                     sink.list_();
    -  554   -
                 }
    -  555  0
                 sink.listItem_();
    -  556   -
             }
    -  557  0
             sink.list_();
    -  558  0
         }
    -  559   +
         private void writeTableHeaderCell(Sink sink, String text) {
    +  539  0
             sink.tableHeaderCell();
    +  540  0
             sink.text(text);
    +  541  0
             sink.tableHeaderCell_();
    +  542  0
         }
    +  543  
     
    -  560   +  544  
         /**
    -  561   -
          * Writes the site report header.
    -  562   +  545   +
          * Writes the TOC for the site report.
    +  546  
          *
    -  563   +  547  
          * @param sink the sink to write the data to
    -  564   -
          * @param projectName the name of the project
    -  565   +  548   +
          * @param dependencies the dependencies that are being reported on
    +  549  
          */
    -  566   -
         private void writeSiteReportHeader(Sink sink, String projectName) {
    -  567  0
             sink.head();
    -  568  0
             sink.title();
    -  569  0
             sink.text("Dependency-Check Report: " + projectName);
    -  570  0
             sink.title_();
    -  571  0
             sink.head_();
    -  572  0
             sink.body();
    -  573  0
             sink.rawText("<script type=\"text/javascript\">");
    -  574  0
             sink.rawText("function toggleElement(el, targetId) {");
    -  575  0
             sink.rawText("if (el.innerText == '[+]') {");
    -  576  0
             sink.rawText("    el.innerText = '[-]';");
    -  577  0
             sink.rawText("    document.getElementById(targetId).style.display='block';");
    -  578  0
             sink.rawText("} else {");
    -  579  0
             sink.rawText("    el.innerText = '[+]';");
    -  580  0
             sink.rawText("    document.getElementById(targetId).style.display='none';");
    -  581  0
             sink.rawText("}");
    -  582   -
     
    -  583  0
             sink.rawText("}");
    -  584  0
             sink.rawText("</script>");
    -  585  0
             sink.section1();
    -  586  0
             sink.sectionTitle1();
    -  587  0
             sink.text("Project: " + projectName);
    -  588  0
             sink.sectionTitle1_();
    -  589  0
             sink.date();
    -  590  0
             final Date now = new Date();
    -  591  0
             sink.text(DateFormat.getDateTimeInstance().format(now));
    -  592  0
             sink.date_();
    -  593  0
             sink.section1_();
    -  594  0
         }
    -  595   -
         // </editor-fold>
    -  596   -
     
    -  597   -
         /**
    -  598   -
          * Takes the properties supplied and updates the dependency-check settings.
    -  599   -
          * Additionally, this sets the system properties required to change the
    -  600   -
          * proxy url, port, and connection timeout.
    -  601   -
          */
    -  602   -
         private void populateSettings() {
    -  603  0
             InputStream mojoProperties = null;
    -  604   -
             try {
    -  605  0
                 mojoProperties = this.getClass().getClassLoader().getResourceAsStream(PROPERTIES_FILE);
    -  606  0
                 Settings.mergeProperties(mojoProperties);
    -  607  0
             } catch (IOException ex) {
    -  608  0
                 Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.WARNING, "Unable to load the dependency-check ant task.properties file.");
    -  609  0
                 Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.FINE, null, ex);
    -  610   -
             } finally {
    -  611  0
                 if (mojoProperties != null) {
    -  612   -
                     try {
    -  613  0
                         mojoProperties.close();
    -  614  0
                     } catch (IOException ex) {
    -  615  0
                         Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.FINEST, null, ex);
    -  616  0
                     }
    -  617   +  550   +
         private void writeSiteReportTOC(Sink sink, final List<Dependency> dependencies) {
    +  551  0
             sink.list();
    +  552  0
             for (Dependency d : dependencies) {
    +  553  0
                 sink.listItem();
    +  554  0
                 sink.link("#sha1" + d.getSha1sum());
    +  555  0
                 sink.text(d.getFileName());
    +  556  0
                 sink.link_();
    +  557  0
                 if (!d.getVulnerabilities().isEmpty()) {
    +  558  0
                     sink.rawText(" <font style=\"color:red\">•</font>");
    +  559  
                 }
    -  618   +  560  0
                 if (!d.getRelatedDependencies().isEmpty()) {
    +  561  0
                     sink.list();
    +  562  0
                     for (Dependency r : d.getRelatedDependencies()) {
    +  563  0
                         writeListItem(sink, r.getFileName());
    +  564   +
                     }
    +  565  0
                     sink.list_();
    +  566   +
                 }
    +  567  0
                 sink.listItem_();
    +  568  
             }
    -  619   +  569  0
             sink.list_();
    +  570  0
         }
    +  571  
     
    -  620  0
             Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, autoUpdate);
    -  621   +  572   +
         /**
    +  573   +
          * Writes the site report header.
    +  574   +
          *
    +  575   +
          * @param sink the sink to write the data to
    +  576   +
          * @param projectName the name of the project
    +  577   +
          */
    +  578   +
         private void writeSiteReportHeader(Sink sink, String projectName) {
    +  579  0
             sink.head();
    +  580  0
             sink.title();
    +  581  0
             sink.text("Dependency-Check Report: " + projectName);
    +  582  0
             sink.title_();
    +  583  0
             sink.head_();
    +  584  0
             sink.body();
    +  585  0
             sink.rawText("<script type=\"text/javascript\">");
    +  586  0
             sink.rawText("function toggleElement(el, targetId) {");
    +  587  0
             sink.rawText("if (el.innerText == '[+]') {");
    +  588  0
             sink.rawText("    el.innerText = '[-]';");
    +  589  0
             sink.rawText("    document.getElementById(targetId).style.display='block';");
    +  590  0
             sink.rawText("} else {");
    +  591  0
             sink.rawText("    el.innerText = '[+]';");
    +  592  0
             sink.rawText("    document.getElementById(targetId).style.display='none';");
    +  593  0
             sink.rawText("}");
    +  594  
     
    -  622  0
             if (proxyUrl != null && !proxyUrl.isEmpty()) {
    -  623  0
                 Settings.setString(Settings.KEYS.PROXY_URL, proxyUrl);
    +  595  0
             sink.rawText("}");
    +  596  0
             sink.rawText("</script>");
    +  597  0
             sink.section1();
    +  598  0
             sink.sectionTitle1();
    +  599  0
             sink.text("Project: " + projectName);
    +  600  0
             sink.sectionTitle1_();
    +  601  0
             sink.date();
    +  602  0
             final Date now = new Date();
    +  603  0
             sink.text(DateFormat.getDateTimeInstance().format(now));
    +  604  0
             sink.date_();
    +  605  0
             sink.section1_();
    +  606  0
         }
    +  607   +
         // </editor-fold>
    +  608   +
     
    +  609   +
         /**
    +  610   +
          * Takes the properties supplied and updates the dependency-check settings.
    +  611   +
          * Additionally, this sets the system properties required to change the
    +  612   +
          * proxy url, port, and connection timeout.
    +  613   +
          */
    +  614   +
         private void populateSettings() {
    +  615  0
             InputStream mojoProperties = null;
    +  616   +
             try {
    +  617  0
                 mojoProperties = this.getClass().getClassLoader().getResourceAsStream(PROPERTIES_FILE);
    +  618  0
                 Settings.mergeProperties(mojoProperties);
    +  619  0
             } catch (IOException ex) {
    +  620  0
                 Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.WARNING, "Unable to load the dependency-check ant task.properties file.");
    +  621  0
                 Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.FINE, null, ex);
    +  622   +
             } finally {
    +  623  0
                 if (mojoProperties != null) {
     624   -
             }
    -  625  0
             if (proxyPort != null && !proxyPort.isEmpty()) {
    -  626  0
                 Settings.setString(Settings.KEYS.PROXY_PORT, proxyPort);
    -  627   -
             }
    -  628  0
             if (connectionTimeout != null && !connectionTimeout.isEmpty()) {
    -  629  0
                 Settings.setString(Settings.KEYS.CONNECTION_TIMEOUT, connectionTimeout);
    +
                     try {
    +  625  0
                         mojoProperties.close();
    +  626  0
                     } catch (IOException ex) {
    +  627  0
                         Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.FINEST, null, ex);
    +  628  0
                     }
    +  629   +
                 }
     630  
             }
    -  631  0
         }
    -  632   +  631  
     
    +  632  0
             Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, autoUpdate);
     633   -
         /**
    -  634   -
          * Executes the dependency-check and generates the report.
    -  635   -
          *
    +
     
    +  634  0
             if (proxyUrl != null && !proxyUrl.isEmpty()) {
    +  635  0
                 Settings.setString(Settings.KEYS.PROXY_URL, proxyUrl);
     636   -
          * @throws MojoExecutionException if a maven exception occurs
    -  637   -
          * @throws MojoFailureException thrown if a CVSS score is found that is
    -  638   -
          * higher then the configured level
    +
             }
    +  637  0
             if (proxyPort != null && !proxyPort.isEmpty()) {
    +  638  0
                 Settings.setString(Settings.KEYS.PROXY_PORT, proxyPort);
     639   -
          */
    -  640   -
         public void execute() throws MojoExecutionException, MojoFailureException {
    -  641  0
             final Engine engine = executeDependencyCheck();
    -  642  0
             generateExternalReports(engine);
    -  643  0
             if (this.failBuildOnCVSS <= 10) {
    -  644  0
                 checkForFailure(engine.getDependencies());
    +
             }
    +  640  0
             if (proxyUsername != null && !proxyUsername.isEmpty()) {
    +  641  0
                 Settings.setString(Settings.KEYS.PROXY_USERNAME, proxyUsername);
    +  642   +
             }
    +  643  0
             if (proxyPassword != null && !proxyPassword.isEmpty()) {
    +  644  0
                 Settings.setString(Settings.KEYS.PROXY_PASSWORD, proxyPassword);
     645  
             }
    -  646  0
         }
    -  647   -
     
    +  646  0
             if (connectionTimeout != null && !connectionTimeout.isEmpty()) {
    +  647  0
                 Settings.setString(Settings.KEYS.CONNECTION_TIMEOUT, connectionTimeout);
     648   -
         /**
    -  649   -
          * Generates the Dependency-Check Site Report.
    +
             }
    +  649  0
         }
     650   -
          *
    +
     
     651   -
          * @param sink the sink to write the report to
    +
         /**
     652   -
          * @param locale the locale to use when generating the report
    +
          * Executes the dependency-check and generates the report.
     653   -
          * @throws MavenReportException if a Maven report exception occurs
    +
          *
     654   -
          */
    +
          * @throws MojoExecutionException if a maven exception occurs
     655   -
         public void generate(@SuppressWarnings("deprecation") org.codehaus.doxia.sink.Sink sink,
    +
          * @throws MojoFailureException thrown if a CVSS score is found that is
     656   -
                 Locale locale) throws MavenReportException {
    -  657  0
             generate((Sink) sink, null, locale);
    -  658  0
         }
    -  659   -
     
    -  660   -
         /**
    -  661   -
          * Generates the Dependency-Check Site Report.
    -  662   -
          *
    +
          * higher then the configured level
    +  657   +
          */
    +  658   +
         public void execute() throws MojoExecutionException, MojoFailureException {
    +  659  0
             final Engine engine = executeDependencyCheck();
    +  660  0
             generateExternalReports(engine);
    +  661  0
             if (this.failBuildOnCVSS <= 10) {
    +  662  0
                 checkForFailure(engine.getDependencies());
     663   -
          * @param sink the sink to write the report to
    -  664   -
          * @param sinkFactory the sink factory
    +
             }
    +  664  0
         }
     665   -
          * @param locale the locale to use when generating the report
    +
     
     666   -
          * @throws MavenReportException if a maven report exception occurs
    +
         /**
     667   -
          */
    +
          * Generates the Dependency-Check Site Report.
     668   -
         public void generate(Sink sink, SinkFactory sinkFactory, Locale locale) throws MavenReportException {
    -  669  0
             final Engine engine = executeDependencyCheck();
    -  670  0
             generateMavenSiteReport(engine, sink);
    -  671  0
         }
    +
          *
    +  669   +
          * @param sink the sink to write the report to
    +  670   +
          * @param locale the locale to use when generating the report
    +  671   +
          * @throws MavenReportException if a Maven report exception occurs
     672   -
     
    +
          */
     673   -
         // <editor-fold defaultstate="collapsed" desc="required setter/getter methods">
    +
         public void generate(@SuppressWarnings("deprecation") org.codehaus.doxia.sink.Sink sink,
     674   -
         /**
    -  675   -
          * Returns the output name.
    -  676   -
          *
    +
                 Locale locale) throws MavenReportException {
    +  675  0
             generate((Sink) sink, null, locale);
    +  676  0
         }
     677   -
          * @return the output name
    +
     
     678   -
          */
    -  679   -
         public String getOutputName() {
    -  680  0
             return reportName;
    -  681   -
         }
    -  682   -
     
    -  683  
         /**
    -  684   -
          * Returns the category name.
    -  685   +  679   +
          * Generates the Dependency-Check Site Report.
    +  680  
          *
    -  686   -
          * @return the category name
    -  687   +  681   +
          * @param sink the sink to write the report to
    +  682   +
          * @param sinkFactory the sink factory
    +  683   +
          * @param locale the locale to use when generating the report
    +  684   +
          * @throws MavenReportException if a maven report exception occurs
    +  685  
          */
    -  688   -
         public String getCategoryName() {
    -  689  0
             return MavenReport.CATEGORY_PROJECT_REPORTS;
    +  686   +
         public void generate(Sink sink, SinkFactory sinkFactory, Locale locale) throws MavenReportException {
    +  687  0
             final Engine engine = executeDependencyCheck();
    +  688  0
             generateMavenSiteReport(engine, sink);
    +  689  0
         }
     690   -
         }
    -  691  
     
    +  691   +
         // <editor-fold defaultstate="collapsed" desc="required setter/getter methods">
     692  
         /**
     693   -
          * Returns the report name.
    +
          * Returns the output name.
     694  
          *
     695   -
          * @param locale the location
    +
          * @return the output name
     696   -
          * @return the report name
    +
          */
     697   -
          */
    -  698   -
         public String getName(Locale locale) {
    -  699  0
             return name;
    -  700   +
         public String getOutputName() {
    +  698  0
             return reportName;
    +  699  
         }
    +  700   +
     
     701   -
     
    +
         /**
     702   -
         /**
    +
          * Returns the category name.
     703   -
          * Sets the Reporting output directory.
    +
          *
     704   -
          *
    +
          * @return the category name
     705   -
          * @param directory the output directory
    -  706  
          */
    -  707   -
         public void setReportOutputDirectory(File directory) {
    -  708  0
             reportOutputDirectory = directory;
    -  709  0
         }
    -  710   +  706   +
         public String getCategoryName() {
    +  707  0
             return MavenReport.CATEGORY_PROJECT_REPORTS;
    +  708   +
         }
    +  709  
     
    -  711   +  710  
         /**
    +  711   +
          * Returns the report name.
     712   -
          * Returns the output directory.
    -  713  
          *
    +  713   +
          * @param locale the location
     714   -
          * @return the output directory
    +
          * @return the report name
     715  
          */
     716   -
         public File getReportOutputDirectory() {
    -  717  0
             return reportOutputDirectory;
    +
         public String getName(Locale locale) {
    +  717  0
             return name;
     718  
         }
     719   @@ -1160,109 +1157,142 @@  720  
         /**
     721   -
          * Gets the description of the Dependency-Check report to be displayed in
    +
          * Sets the Reporting output directory.
     722   -
          * the Maven Generated Reports page.
    +
          *
     723   -
          *
    +
          * @param directory the output directory
     724   -
          * @param locale The Locale to get the description for
    +
          */
     725   -
          * @return the description
    -  726   -
          */
    -  727   -
         public String getDescription(Locale locale) {
    -  728  0
             return description;
    +
         public void setReportOutputDirectory(File directory) {
    +  726  0
             reportOutputDirectory = directory;
    +  727  0
         }
    +  728   +
     
     729   -
         }
    +
         /**
     730   -
     
    +
          * Returns the output directory.
     731   -
         /**
    +
          *
     732   -
          * Returns whether this is an external report.
    +
          * @return the output directory
     733   -
          *
    -  734   -
          * @return true or false;
    -  735  
          */
    +  734   +
         public File getReportOutputDirectory() {
    +  735  0
             return reportOutputDirectory;
     736   -
         public boolean isExternalReport() {
    -  737  0
             return externalReport;
    -  738  
         }
    -  739   +  737  
     
    -  740   +  738  
         /**
    +  739   +
          * Gets the description of the Dependency-Check report to be displayed in
    +  740   +
          * the Maven Generated Reports page.
     741   -
          * Returns whether or not the plugin can generate a report.
    -  742  
          *
    +  742   +
          * @param locale The Locale to get the description for
     743   -
          * @return true
    +
          * @return the description
     744  
          */
     745   -
         public boolean canGenerateReport() {
    -  746  0
             return true;
    +
         public String getDescription(Locale locale) {
    +  746  0
             return description;
     747  
         }
     748   -
         // </editor-fold>
    -  749  
     
    -  750   +  749  
         /**
    +  750   +
          * Returns whether this is an external report.
     751   -
          * Checks to see if a vulnerability has been identified with a CVSS score
    -  752   -
          * that is above the threshold set in the configuration.
    -  753  
          *
    -  754   -
          * @param dependencies the list of dependency objects
    -  755   -
          * @throws MojoFailureException thrown if a CVSS score is found that is
    -  756   -
          * higher then the threshold set
    -  757   +  752   +
          * @return true or false;
    +  753  
          */
    +  754   +
         public boolean isExternalReport() {
    +  755  0
             return externalReport;
    +  756   +
         }
    +  757   +
     
     758   -
         private void checkForFailure(List<Dependency> dependencies) throws MojoFailureException {
    -  759  0
             final StringBuilder ids = new StringBuilder();
    -  760  0
             for (Dependency d : dependencies) {
    -  761  0
                 for (Vulnerability v : d.getVulnerabilities()) {
    -  762  0
                     if (v.getCvssScore() >= failBuildOnCVSS) {
    -  763  0
                         if (ids.length() == 0) {
    -  764  0
                             ids.append(v.getName());
    +
         /**
    +  759   +
          * Returns whether or not the plugin can generate a report.
    +  760   +
          *
    +  761   +
          * @return true
    +  762   +
          */
    +  763   +
         public boolean canGenerateReport() {
    +  764  0
             return true;
     765   -
                         } else {
    -  766  0
                             ids.append(", ").append(v.getName());
    +
         }
    +  766   +
         // </editor-fold>
     767   -
                         }
    +
     
     768   -
                     }
    +
         /**
     769   -
                 }
    +
          * Checks to see if a vulnerability has been identified with a CVSS score
     770   -
             }
    -  771  0
             if (ids.length() > 0) {
    -  772  0
                 final String msg = String.format("%n%nDependency-Check Failure:%n"
    +
          * that is above the threshold set in the configuration.
    +  771   +
          *
    +  772   +
          * @param dependencies the list of dependency objects
     773   -
                         + "One or more dependencies were identified with vulnerabilities that have a CVSS score greater then '%.1f': %s%n"
    +
          * @throws MojoFailureException thrown if a CVSS score is found that is
     774   -
                         + "See the dependency-check report for more details.%n%n", failBuildOnCVSS, ids.toString());
    -  775  0
                 throw new MojoFailureException(msg);
    +
          * higher then the threshold set
    +  775   +
          */
     776   +
         private void checkForFailure(List<Dependency> dependencies) throws MojoFailureException {
    +  777  0
             final StringBuilder ids = new StringBuilder();
    +  778  0
             for (Dependency d : dependencies) {
    +  779  0
                 for (Vulnerability v : d.getVulnerabilities()) {
    +  780  0
                     if (v.getCvssScore() >= failBuildOnCVSS) {
    +  781  0
                         if (ids.length() == 0) {
    +  782  0
                             ids.append(v.getName());
    +  783   +
                         } else {
    +  784  0
                             ids.append(", ").append(v.getName());
    +  785   +
                         }
    +  786   +
                     }
    +  787   +
                 }
    +  788  
             }
    -  777  0
         }
    -  778   +  789  0
             if (ids.length() > 0) {
    +  790  0
                 final String msg = String.format("%n%nDependency-Check Failure:%n"
    +  791   +
                         + "One or more dependencies were identified with vulnerabilities that have a CVSS score greater then '%.1f': %s%n"
    +  792   +
                         + "See the dependency-check report for more details.%n%n", failBuildOnCVSS, ids.toString());
    +  793  0
                 throw new MojoFailureException(msg);
    +  794   +
             }
    +  795  0
         }
    +  796  
     }
    - + diff --git a/dependency-check-maven/cobertura/org.owasp.dependencycheck.maven.HelpMojo.html b/dependency-check-maven/cobertura/org.owasp.dependencycheck.maven.HelpMojo.html index d9e67789f..0f0f6446a 100644 --- a/dependency-check-maven/cobertura/org.owasp.dependencycheck.maven.HelpMojo.html +++ b/dependency-check-maven/cobertura/org.owasp.dependencycheck.maven.HelpMojo.html @@ -747,6 +747,6 @@
     }
    - + diff --git a/dependency-check-maven/configuration.html b/dependency-check-maven/configuration.html index 3d6cd5f9b..f4278cf25 100644 --- a/dependency-check-maven/configuration.html +++ b/dependency-check-maven/configuration.html @@ -1,13 +1,13 @@ - + dependency-check-maven - @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -192,24 +192,45 @@ +logFile + +The file path to write verbose logging information. + + + + connectionTimeout The Connection Timeout. - + proxyUrl The Proxy URL. - + proxyPort The Proxy Port. + + + +proxyUsername + +Defines the proxy user name. + + + + +proxyPassword + +Defines the proxy password. + diff --git a/dependency-check-maven/cpd.html b/dependency-check-maven/cpd.html index 5a54e27f7..aad61565d 100644 --- a/dependency-check-maven/cpd.html +++ b/dependency-check-maven/cpd.html @@ -1,13 +1,13 @@ - + dependency-check-maven - CPD Results @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-maven/dependency-updates-report.html b/dependency-check-maven/dependency-updates-report.html index 93b3ab390..6a11a606b 100644 --- a/dependency-check-maven/dependency-updates-report.html +++ b/dependency-check-maven/dependency-updates-report.html @@ -1,13 +1,13 @@ - + dependency-check-maven - Dependency Updates Report @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -360,7 +360,7 @@ org.owasp dependency-check-core -1.0.4 +1.0.5 compile jar @@ -577,7 +577,7 @@ dependency-check-core Current Version -1.0.4 +1.0.5 Scope compile diff --git a/dependency-check-maven/findbugs.html b/dependency-check-maven/findbugs.html index 5fbee2fd7..71d95c880 100644 --- a/dependency-check-maven/findbugs.html +++ b/dependency-check-maven/findbugs.html @@ -1,13 +1,13 @@ - + dependency-check-maven - FindBugs Bug Detector Report @@ -54,7 +54,7 @@
  • - +
  • /
  • @@ -67,8 +67,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • diff --git a/dependency-check-maven/help-mojo.html b/dependency-check-maven/help-mojo.html index c1ba43d26..6b1389144 100644 --- a/dependency-check-maven/help-mojo.html +++ b/dependency-check-maven/help-mojo.html @@ -1,13 +1,13 @@ - + dependency-check-maven - dependency-check:help @@ -55,7 +55,7 @@
  • - +
  • /
  • @@ -69,8 +69,8 @@ -
  • Last Published: 2013-10-20
  • |
  • -
  • Version: 1.0.4
  • +
  • Last Published: 2013-11-16
  • |
  • +
  • Version: 1.0.5
  • @@ -148,7 +148,7 @@

    Full name:

    -

    org.owasp:dependency-check-maven:1.0.4:help

    +

    org.owasp:dependency-check-maven:1.0.5:help

    Description:

    diff --git a/dependency-check-maven/index.html b/dependency-check-maven/index.html index 6587473b9..7938e961f 100644 --- a/dependency-check-maven/index.html +++ b/dependency-check-maven/index.html @@ -1,15 +1,15 @@ - + - dependency-check-maven - About + dependency-check-jenkins - @@ -42,7 +42,7 @@ @@ -80,22 +80,7 @@ - -
  • - - - - Project Reports -
  • @@ -160,9 +138,19 @@
    -
    -

    About Dependency-Check Maven Plugin

    -

    Dependency-Check-Maven is a Maven Plugin that attempts to detect publicly disclosed vulnerabilities contained within project dependencies. It does this by determining if there is a Common Platform Enumeration (CPE) identifier for a given dependency. If found, it will generate a report linking to the associated CVE entries.

    +

    Dependency-Check Jenkins Plugin

    +

    The Dependency-Check Jenkins Plugin features the ability to perform a dependency analysis build and later view results post build. The plugin is built using analysis-core and features many of the same features that Jenkins static analysis plugins offer, including thresholds, charts and the ability to view vulnerability information should a dependency have one identified.

    +

    The main repository is located at jenkins-cli/dependency-check-jenkins.

    +

    The main site for documentation is located at OWASP Dependency-Check-Jenkins.

    +

    More information can be found on the wiki.

    + +
    +

    Copyright & License

    +

    Dependency-Check Jenkins Plugin is Copyright (c) 2013 Steve Springett. All Rights Reserved.

    +

    Permission to modify and redistribute is granted under the terms of the GPLv3 license. See the LICENSE.txt file for the full license.

    @@ -171,7 +159,7 @@